Standard Generalized Markup Language

Auszeichnungssprache für Struktur und Darstellung von Text
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 30. Oktober 2006 um 16:53 Uhr durch 84.154.108.87 (Diskussion) (Werbung entfernt). Sie kann sich erheblich von der aktuellen Version unterscheiden.

SGML (engl. Standard Generalized Markup Language) ist eine Metasprache, mit deren Hilfe man verschiedene Auszeichnungssprachen (engl. markup languages) für Dokumente definieren kann. SGML ist ein ISO-Standard: ISO 8879:1986 Information Processing — Text and Office Systems — Standard Generalized Markup Language (SGML).

Inhalt und Darstellung

Um ein gültiges (engl. valid) Dokument in SGML zu beschreiben, wird die Dokumenttypdefinition verwendet (DTD), die den strukturellen Aufbau von Dokumenten beschreibt. In der Dokumenttypdefinition wird die mögliche Dokumentstruktur beschrieben.

In SGML ist der Inhalt des Dokuments und das Layout voneinander getrennt, wobei ersteres durch SGML-Elemente strukturiert wird.

Zur Wiedergabe dieser Struktur auf einem bestimmten Ausgabemedium wurde die Sprache Document Style Semantics and Specification Language (DSSSL) entwickelt. Eine Überschrift wird also in SGML zwar mit einem sogenannten Markup gekennzeichnet; wie diese bei der Ausgabe allerdings dargestellt wird, ist für SGML unerheblich.

Die Gültigkeit des Dokumentes überprüft man mit so genannten Parsern. SGML-Parser lesen zunächst die SGML-Deklaration und die DTD ein und prüfen dann, ob das eigentliche Dokument konform mit Deklaration und DTD ist. Ein solcher Parser ist beispielsweise nsgmls von James Clark; dieser Parser wird im Rahmen des OpenSP-Projektes weiterentwickelt.

Verwendung

Wichtige Dokumente sollten in SGML verfasst werden, das unabhängig von ständig wechselnden binären Dateiformaten ist.

Abgrenzung

HTML und XML werden oft fälschlich als Ableitungen beziehungsweise als Dialekte von SGML beschrieben. HTML ist jedoch eine Anwendung (engl. application) von SGML und XML eine bestimmte Untermenge von SGML.

Geschichte

Einer der Väter von SGML ist Charles Goldfarb, der die Grundlagen für IBMs Document Composing Facility Generalized Markup Language (DCF GML) definierte. Ziel der GML war es, Dokumente so zu beschreiben, dass das Ergebnis weder von einer bestimmten Plattform noch von einer spezifischen Anwendung abhing. Es ging dabei rein um die logische Struktur wie z.B. die Einteilung eines Buches in Überschriften, Kapitel, Abschnitte und nicht um das Aussehen eines Dokumentes. Diese wesentliche Idee, nämlich das Konzept des generic coding, ist bereits Ende der 1960er Jahre entstanden und geht auf William W. Tunnicliffe zurück. Im Laufe der Jahre wurde GML weiterentwickelt und setzte sich letztendlich als SGML – Standard Generalized Markup Language – 1986 als internationaler Standard durch, als ISO 8879.

Behörden, Firmen, Bildungseinrichtungen und Institutionen begannen damit, ihre Daten in SGML zu speichern. Den großen Durchbruch auf breiter Front schaffte SGML aber nicht.

Anwendungen

  • HTML, Standard zur Strukturierung von Webseiten
  • DocBook, Standard zur Erstellung von (technischer) Dokumentation
  • TEI, Dokumentformat zur Kodierung und für den Austausch von Texten
  • EAD, Standard zur Beschreibung von Findbüchern und anderen Findhilfen in Archiven

Die aufgeführten Anwendungen werden heute zumeist auf Basis von XML weiterentwickelt.

Literatur

  • Charles F. Goldfarb: The SGML Handbook, Oxford University Press (1991), ISBN 0-19-853737-9