XML-Know How

Grenzen der DTD-Technologie

Die DTD-Technologie als Mittel zur Festlegung und Überprüfung von Strukturen in XML-Dokumenten hat XML von SGML geerbt. XML-DTDs stellen nichts anderes dar als SGML-DTDs, die in ihrer Konstruktion bestimmten Beschränkungen unterworfen sind.

Diesen Beschränkungen können Sie entgehen, indem Sie SGML-DTDs auf XML-Dokumente anwenden.[1] Aber auch SGML-DTDs erfüllen bei weitem nicht alle Nutzerwünsche. Zudem verarbeitet XML-Software in der Regel keine SGML-DTDs.

Die konzeptbedingten Schwachstellen von XML-DTDs lassen sich zwei Bereichen zuordnen: Strukturkontrolle und Inhaltskontrolle. Mit Strukturkontrolle ist die Überwachung der Anordnung von Elementen und Attributen gemeint. Beispielsweise ist es in einer DTD nicht möglich, bei Mixed Content (mit XML-Elementen gemischter Text) die Verwendung der Elemente genauer festzulegen.

Inhaltskontrolle meint die Überprüfung von Dateninhalten wie z. B. Attributwerten. Den Dateninhalt von Elementen kann man mittels DTD überhaupt nicht festlegen: außer weiteren Elementen sind nur Textdaten (PCDATA) als Elementinhalt erlaubt. Auch die Möglichkeiten, die korrekte Form von Attributwerten zu überprüfen, sind sehr begrenzt. Beispielsweise können Sie per DTD nicht prüfen, ob eine Datumsangabe die Form »TT.MM.JJJJ« aufweist, wobei »TT« die Werte 01 bis 31, »MM« 01 bis 12 und »JJJJ« beliebige vierstellige Zahlenwerte annehmen kann. Müssen Sie XML-Daten nach einer Datumsangabe ausgeben oder sortieren, ist die korrekte Form dieser Angabe aber absolut notwendig.

Einen Überblick über die Beschränkungen im XML-DTD-Konzept und über die Lösungen, die XML-Schema bietet, finden Sie in der folgenden Übersicht.

Die genauere Überprüfung der Struktur von XML-Dokumenten und ihrer Dateninhalte ist besonders wichtig, wenn Datenbanken oder Software-Programme über XML kommunizieren. Programme und Datenbanken können die Form von Dateninhalten genau definieren und setzen die Einhaltung dieser Formen voraus. Auch Austauschformate, die Datenbank- und Softwareinformationen übers Internet transportieren, müssen diesen Anforderungen gerecht werden. Das speziell mit Blick aufs Internet entwickelte XML wird intensiv als Daten-Austauschformat verwendet. Die Zahl der Anwendungsfälle, die eine sehr präzise Strukturfestlegung und -kontrolle von XML-Daten erfordern, ist also sehr groß.

Solche Anwendungsfälle kommen häufig auch in der Verlagsbranche vor. Überall dort, wo Publikationen aus Textbausteinen zusammengesetzt werden, die in XML vorliegen, muss eine Vielzahl von Verwaltungs-, Status- und Sortierungsinformationen verarbeitet werden. Typische Beispiele sind XML-Workflows bei der Produktion von Lexika, Wörterbüchern, Loseblattwerken, Katalogen, Dokumentationen, Fachzeitschriften und anderen Fachinformations-Publikationen.

Für die Zuständigen in Lektorat oder Redaktion, Herstellung oder EP-Abteilung ist es daher wichtig zu wissen, dass Alternativen zu XML-DTDs eine bessere Strukturkontrolle ermöglichen, ohne dass man dazu auf kostenträchtige Eigenentwicklungen zurückgreifen muss.

Neben den Grenzen in Struktur- und Datenkontrolle ist die mangelnde Integration von DTDs in die XML-Welt problematisch. DTDs werden bekanntlich nicht selbst in XML-Syntax verfasst. Man kann eine DTD weder als XML-Datei öffnen noch als solche bearbeiten. Das heißt: zusätzlich zum XML-Editor wird ein DTD-Editor benötigt; XML-Parser können keine DTDs parsen, wenn sie kein spezielles Modul dafür enthalten; Programme, die XML automatisch erzeugen, können keine DTDs erzeugen etc. Wäre die XML-Strukturdefinition nicht in der speziellen DTD-Form, sondern in XML-Syntax geschrieben, könnten viele Vorgänge mit weniger Aufwand realisiert werden.

Die Grenzen der DTD sind auch in einer ganz anderen Hinsicht erreicht: die DTD-Technologie wird nicht weiterentwickelt, da die neuen Validierungssprachen, um die es in den nächsten Abschnitten geht, von den Standardisierungsgremien nicht nur als Alternativen zur DTD, sondern auch als deren Nachfolger verstanden werden.


     

  1. ↑  Vgl. SGML als XML-Erweiterung in Redaktion, Herstellung und Satz

  2.