Unterschiede zwischen SGML und XML
Minimization
SGML wurde so ausgerichtet, dass das Markup durch verschiedene Konventionen
minimiert werden kann (z.B. um Speicherplatz zu sparen). XML braucht das
nicht mehr.
Minimization Angaben für Tags, die in SGML bestimmen, ob ein Start-
oder Endtag weggelassen werden können, fallen in XML weg.
DOCTYPE Declaration
Die Doctype Declaration beschreibt, welche Bestandteile des SGML-Standards
verwendet werden.
Ist in SGML zwingend notwendig, kann dafür in XML weggelassen werden.
Well-formed and valid Documents
Ein SGML-Dokument benötigt immer eine DTD. In XML ist diese Angabe optional,
wenn auch eine DTD für größere Anwendungen empfohlen wird.
Ein wohlgeformtes (well-formed) Dokument in XML ist ein Dokument ohne
dazugehörige DTD. Aus der Instanz wird die Dokumentstruktur ersichtlich.
Ein gültiges (valid) Dokument enthält eine DTD und ist entsprechend
den Regeln dieser DTD geschrieben.
Empty-Element Tag
Um die Dokumentstruktur auch ohne DTD nachvollziehen zu können, muss
in XML-Dokumenten sowohl ein Start- und End-Tag für jedes Element vorhanden
sein. Bei leeren Elementen, wie z.B. das IMG-Tag in HTML wurde deshalb ein
neues Konstrukt vorgeschlagen.
Das Empty-Element Tag (<Elementname/>) wird in XML benutzt, um leere
Elemente zu bezeichnen.
Groß- und Kleinschreibung
In XML sind alle Bezeichnungen case-sensitive. In SGML ist es nicht nötig,
auf die Groß- und Kleinschreibung zu achten.
Diese und weitere Unterschiede (siehe
Notiz vom W3C)
machten es nötig, dass der SGML-Standard erweitert wird, um die XML-Aspekte,
die nicht Teil des ursprünglichen SGML-Standards waren, einzuschliessen.
Die ISO SGML Arbeitsgruppe erarbeitete deshalb Annex K und Annex L für
diesen Zweck.
Bestandteile eines XML Dokuments