XML-Know How

XML, HTML und SGML - eine erste Abgrenzung

So sinnvoll ganz augenscheinlich die Strukturierung und medienneutrale Speicherung von Dokumenten ist, so wird sie doch erst dann wirklich lohnend, wenn dies nach einer definierten und allgemein bekannten Syntax geschieht. Damit besteht der Bedarf nach einer allgemeingültigen Auszeichnungssprache, die die Regeln festlegt, nach denen Dokumente strukturiert werden können. Diesen Standard setzte 1986 SGML, die Standard Generalized Markup Language (in etwa Verallgemeinerte Standard-Auszeichnungssprache), festgelegt in der ISO-Norm 8879.

SGML ist dabei nicht selbst eine Auszeichnungssprache, d.h. es gibt keine festgelegten Auszeichnungen für bestimmte Textelemente. SGML legt lediglich die Syntax fest, in der durch die Nutzer eigene Auszeichnungssprachen definiert werden können. Jede beliebige Art von Dokument kann deshalb entsprechend ihrer ganz speziellen Eigenarten nach Inhalt und Struktur ausgezeichnet werden, indem der SGML-Nutzer selbst festlegt, welche Teile des Dokumentes er auszeichnen und welche Bezeichnungen er für diese Dokumentteile verwenden möchte. SGML stellt somit eine Syntax zur präzisen Beschreibung von Dokumentstrukturen bereit.

Allerdings hat SGML einen Vorteil, der ihm in der Praxis zum Nachteil gereicht, nämlich seine extreme Flexibilität und Komplexität. SGML lässt dem Nutzer so viele Freiheiten und bietet so komplexe Konstruktionen an, dass es fast unmöglich ist, Software zu programmieren, die den Standard voll umsetzt. Daher hat sich SGML nur begrenzt durchsetzen können. Anwendung findet SGML insbesondere dort, wo große Datenmengen kodiert werden müssen und die finanziellen Ressourcen nicht zu knapp sind. So trifft man auf SGML in Bereichen wie der Flugzeug-, der Automobil- und anderer Großindustrien oder beim Militär – aber nur in wenigen, meist großen Verlagshäusern.

In einer Anwendung fand SGML allerdings weite Verbreitung: als Hypertext Markup Language (HTML), die Seitenbeschreibungssprache für Internet-Browser, festgelegt vom World Wide Web Consortium (W3C). HTML ist also eine konkrete Anwendung von SGML – wenn auch eine sehr einfache: festgelegte Auszeichnungen dienen dem einzigen Zweck, Text und Grafiken auf dem Browser-Bildschirm zu formatieren bzw. zu positionieren und Web-Seiten mit Links zu verbinden. Mit HTML können daher keine inhaltlichen Auszeichnungen vorgenommen werden und auch die medienneutrale Verwendung ist durch viele bildschirmorientierte Formatierungselemente eingeschränkt.

Diese Grenzen von HTML, die auch dem Datenaustausch im Internet zunehmend hinderlich wurden, führten dazu, dass das W3C 1998 mit der eXtensible Markup Language (XML) eine neue Auszeichnungssprache definierte.

XML ist wie SGML keine festgelegte Sprache aus einem festen Set von Bestandteilen, sondern eine Sprache zur präzisen Beschreibung von Dokumentstrukturen mittels frei festlegbarer Elemente. Sie ist also im Gegensatz zum ganz und gar vordefinierten HTML erweiterbar (daher das extensible). Andererseits sind bei XML viele Merkmale, die bei SGML frei bestimmbar waren, festgelegt. Allerdings geschah diese Einschränkung gegenüber SGML auf eine Weise, die die meisten und wichtigsten Funktionen erhielt. Der Verzicht auf manche »exotische« Komponente hat die Verarbeitbarkeit von XML-Daten im Vergleich zu SGML-Daten enorm vereinfacht. Während der offizielle SGML-Standard über 500 Seiten umfasst, kommt die Druckfassung des XML-Standards mit 26 Seiten aus.

Der erwünschte Effekt trat ein: durch die Vereinfachung der Programmierung von Anwendungssoftware entstand bald eine breite und kostengünstige Basis für die praktische Nutzung des neuen Standards. Diese Basis hat zusammen mit der vergleichsweise einfachen Anwendbarkeit der Sprache XML zu ihrer enormen Verbreitung beigetragen. XML hat SGML weitgehend verdrängt, nur in wenigen Fällen wird SGML noch verwendet. Der Vorteil der Verbreitung von XML wiegt die Einschränkungen gegenüber SGML leicht auf.

Weitere Informationen zu den Unterschieden zwischen XML und SGML finden Sie in unserem Beitrag SGML als »XML-Erweiterung« in Redaktion, Herstellung und Satz.