Ein Austausch von Texten z.B. im standardisierten und vielfach unterstützten ASCII-Format würde nur ein Teilproblem lösen; eine aufwendige Nachbearbeitung wäre weiterhin notwendig, da u.a. Fußnoten, Textauszeichnungen (kursiv, fett, ...) und Textstruktur bei einer Konvertierung in das ASCII-Format verloren gehen.
Die grundlegende Idee war die Trennung des Informationsgehaltes von der äußeren Form eines Dokumentes, mit dem Ziel, die Kommunikation zwischen unterschiedlichen Computern bzw. Betriebssystemen / Software-Programmen zu ermöglichen. Das Prinzip des Generic Coding basiert auf der Kennzeichnung der Struktur und logischen Elemente eines Dokumentes d.h. auf der Hervorhebung der Funktion, die der Text erfüllen soll (Überschrift, Inhaltsverzeichnis, ...). Die Möglichkeit diese autor- bzw. verlagsbezogene Textlogik zu markieren entspricht der Philosophie der Generalized Markup Language (GML), die 1969 bei IBM entwickelt wurde. GML enthielt erstmals das Konzept eines formal definierten Dokumenttyps mit einer verschachtelten Struktur. Charles Goldfarb, geistiger Vater und Mitentwickler, formulierte dann noch weitergehende Konzepte, die später in SGML eingebracht wurden.
Auf GML basierend wurde Ende der siebziger Jahre - zunächst vom American National Standard Institute (ANSI) ausgehend, später auch in Abstimmung u.a. mit der International Organization for Standardization (ISO) - mit der Entwicklung einer standardisierten Textbeschreibungssprache begonnen. Diese Arbeit endete 1986 mit der Veröffentlichung der Standard Generalized Markup Language im ISO-Standard 8879. Diesem folgte 1988 noch eine Änderung, die lediglich ergänzenden Charakter hatte und inhaltliche Ungenauigkeiten beseitigen sollte. 1990 wurde der Standard als europäische Norm EN 28 879 übernommen und im März 1991 wurde die "Genormte Verallgemeinerte Auszeichnungssprache (SGML)" dann als DIN EN 28 879 für die BRD verabschiedet.
Die Strukturdefinition eines Dokumententyps erfolgt in der Document Type Definition (DTD). Diese enthält Informationen über den Aufbau eines Dokumentes des zu spezifizierenden Typs d.h. in der DTD wird festgelegt, welche Elemente ein solches Dokument enthalten darf und/oder enthalten muß und in welcher Reihenfolge diese erscheinen dürfen.
In der Praxis wird eine solche DTD dann meistens von einer übergeordneten Instanz den jeweiligen Verfassern gegenüber vorgeschrieben; so verlangt beispielsweise die "Vereinigung der Flugzeughersteller und Luftfahrtgesellschaften (ATA)" die Dokumentation von Flugzeugen gemäß eigener DTD(s).
Im konkreten Dokument, Instanz genannt, wird die Zugehörigkeit des Textes zu bestimmten - in der DTD definierten - Strukturelementen durch Start- und End-Tags gekennzeichnet. Die Tags beschreiben also nur um welche Art von Information es sich handelt, nicht wie diese dargestellt werden soll.
Bsp.:
<titel>
Dieses ist der Titel
</titel>
Eine Instanz enthält außer dem eigentlichen Text mit den entsprechenden Kennzeichnungen (markup) noch eine Referenz auf die zugehörige DTD. Ein SGML-Parser überprüft anhand der DTD die syntaktische Korrektheit und Vollständigkeit des Dokumentes. Weiterhin kann eine Instanz auch Verweise auf externe Teile des Dokumentes enthalten z.B. Grafiken, Sound, Video etc. . Durch diese sogenannten external entities ist SGML also in gewissem Sinne auch Multimedia-fähig.
Welches Aussehen die verschiedenen Elemente eines Textes letztendlich erhalten ist von den system- und medienspezifischen Hilfsmitteln abhängig. Zunächst bringt ein Konverter das SGML-Dokument in eine syntaktische Form, die das jeweilige Formatierungsprogramm versteht. Dieser Formatierer (z.B. TeX) bereitet das Dokument dann entsprechend zur Ausgabe auf.
Unter dem Aspekt 'one source, multiple media' brauchen insbesondere große Datenmengen nur einmalig entsprechend der SGML-Struktur gespeichert werden. Damit wird eine effiziente Suche nach (Teil-) Informationen sowie die Datennutzung für unterschiedliche Publikationen (Druck, CD-ROM, WWW...) auf derselben Datenbasis unterstützt.
... [ Seminar WWW und JAVA] ... [ Thema SGML ] ... [ Was ist SGML ? ] ... [ Document Type Definition ] ...