Was ist XML?

XML (eXtensible Markup Language) ist am 10. Februar 1998 vom W3C standardisiert worden. Es ist eine Metasprache zum Definieren von Dokumenttypen. Tolle Antwort, mit der sich gleich zwei neue Fragen ergeben: Was zur Hölle ist eine Metasprache und was sind Dokumenttypen?

Metasprache

Eine Metasprache ist eine Sprache zum Definieren von Sprachen. Hä? Was soll das denn heißen? Nun, das bedeutet, daß XML die Regeln zur Verfügung stellt mit denen sich dann Sprachen wie zum Beispiel HTML definieren lassen. Will meinen, daß sich mit XML jeder der Lust und Laune hat eine eigene Markup Sprache mit eigenen Tags (oder besser Elementen) erschaffen kann. Ob damit dann jemand etwas anfangen kann steht allerdings auf einem anderen Blatt.

Dokumenttyp Definition (DTD)

Um eine Sprache zu definieren, muß man ihre Grammatik und das Vokabular festlegen. Das tut man in der Dokumenttyp Definition (DTD), womit wir bei der zweiten Frage angekommen wären. Dokumente gehören zum selben Dokumenttyp, wenn sie der gleichen DTD folgen. Ein Beispiel kann vielleicht Licht ins Dunkel bringen: HTML-Dokumente folgen der selben Grammatik (welche Tags können wie geschachtelt werden…) und können das selbe Vokabular (sprich die Tags) benutzen. Das bedeutet, daß alle HTML-Dokumente dem selben Dokumenttyp angehören, nämlich HTML. Alles klar?

Um gleich ein Missverständnis auszuräumen: Jeder kann sich eine DTD bauen, und dann XML-Dokumente schreiben die dieser DTD folgen. Ein interpretierendes Programm (zB ein Browser) kann dann zwar sagen: Ja, dieses XML-Dokument ist gültig in Bezug auf diese DTD (d.h. das Dokument befolgt die Regeln der DTD, und gehört damit zum entsprechenden Dokumenttyp). Es kann aber NICHT wissen, was es mit diesem oder jenem Element machen soll. Das bedeutet, daß sich jeder der eine DTD verfaßt auch darum kümmern muß, daß es Programme gibt, die mit den Dokumenten dieses Typs etwas anfangen können! Nun muß natürlich nicht jeder, der ein XML-Dokument schreibt, ein eigenes Programm zur Interpretation des Dokuments entwickeln. Zumindest wenn das XML in einem Browser angezeigt werden soll, gibt es dafür XSL (eXtensible Style Sheets).

Sind jetzt alle Klarheiten restlos beseitigt? Gut. Dann kommt jetzt noch ein kleines Beispiel für ein XML-Dokument (ohne DTD), um euch vollends zu verwirren:

<?xml version="1.0"?>
<BUCH>
<TITEL>Der Herr der Ringe</TITEL>
<AUTOR>J.R.R. Tolkien</AUTOR>
</BUCH>

Wie ihr seht, ähnelt das HTML nicht unerheblich. Das liegt daran, daß XML eine Vereinfachung von SGML ist, und HTML mit SGML definiert wurde.

zurück                weiter

nach oben