Single Source Publishing: Die Möglichkeit, einmal erstellten Inhalt in vielen Formen zu publizieren, wird durch medienneutrale Inhaltslagerung mit XML besonders unterstützt. Das Erlernen und Arbeiten mit XML ist im Verhältnis zu anderen Auszeichnungssprachen einfach. Doch noch immer gibt es Verlage, die die Möglichkeiten von XML nur bei ausgewählten Werken nutzen – zu recht. Um solche Strategien bewerten zu können, sollen im Folgenden Artikel die Arbeitsweise und Optionen rund um XML erläutert werden.

Extensible Markup Language und zugehörige Elemente

Die Extensible Markup Language ist eine Auszeichnungssprache mit generischem Charakter. Auszeichnungssprache bedeutet, dass Inhalte ausgezeichnet und dadurch strukturiert und mit Attributen versehen werden. Das unterscheidet Auszeichnungssprachen von Programmiersprachen, bei denen Funktionen definiert werden. Generischer Charakter bedeutet, dass XML erweitertbar ist. Andere Auszeichnungssprachen wie die für Webpages gebräuchliche HTML-Gruppe oder VRML können sich lediglich eines festgelegten Angebots von Auszeichnungselementen bedienen.

XML ist eine Teilmenge der Standard Generalized Markup Language, SGML. Letzteres ist mit etwa 500 Seiten Standardstrukturbeschreibung äußerst umfangreich. Da aber für die Arbeit mit Dokumenten weniger eine feste, allgemeingültige Struktur, sondern eine solche vonnöten war, die durch individuelle Attribute und Auszeichnungen auf Anforderungen eingehen kann, wurde 1998 die Teilmenge XML gebildet. Sie bedient sich derselben Funktionsweise, kommt aber mit einer Standardstrukturbeschreibung von etwa 40 Seiten aus.

Das folgende Beispiel soll die Thematik veranschaulichen:

Publikationsbeispiel

Originalbeispiel aus dem Handbuch des englischen Sprachgebrauchs, Klett Verlag

XML-strukturiertes Lemma

Das Beispiel zeigt ein Stichwort aus dem Handbuch des englischen Sprachgebrauchs. Es ist in Inhalt, Struktur und Darstellung gleich dem Buch. Wäre der dahinterstehende Inhalt in XML strukturiert, könnte dies so aussehen:

        <lemma>
            <stichwort>suit</stichwort>
            <übersetzung>Anzug</übersetzung>
            <falsefriend>
                <stichwort>suite</stichwort>
                <übersetzung>Suite</übersetzung>
            </falsefriend>
            <erläuterung>suit <lautschrift>[su:t]</lautschrift>
            entspricht „Anzug“, suite <lautschrift>[swi:t]</lautschrift>
            dem deutschen „Suite“</erläuterung>
            <beispiel stichwort=’suit’>When you go to an interview it’s
            wise to wear a suit and tie.</beispiel>
            <beispiel stichwort=’suite’>The millionaire had the most
                expensive suite in the hotel.</beispiel>
        </lemma>

Hier wird deutlich, was Auszeichnung bedeutet: Der bloße Inhalt (bspw. suit) wird durch Tags ausgezeichnet und somit ein Element, wie in Abbildung 2 dargestellt:

XML Element

Abbildung 2: Elementbezeichnungen in XML; eigene Darstellung nach Vonhoegen S. 54

Elemente in einem XML-Dokument

Ein Element kann mit Attributen versehen werden, wie hier etwa bei „Beispiel“. Jedes der Beispiele hat ein Attribut, das es für ein bestimmtes Stichwort auszeichnet. Attribute werden oft verwendet, um den Elementinhalt genauer zu beschreiben, so kann bspw. für den Elementinhalt „Tisch“ das Attribut „Farbe“ mit dem Wert „blau“ stehen.

Manchmal können Attribute vermieden und vermittels Container-Elementen wiedergegeben werden. Ein Container-Element ist im obigen Beispiel „Lemma“. Es wird anfangs gesetzt, dann mit eingeschlossenen Elementen gefüllt und endlich wieder geschlossen. Verschiedene Container-Elemente können wiederum von einem übergeordneten Container-Element eingeschlossen sein. Diese Aufschlüsselung nennt man Verschachtelung. Sie trägt maßgeblich zur Strukturierung der Inhalte in XML bei.

Dabei heißt das oberste Element immer Wurzelelement, von dem sich die weiteren Elemente wie bei einem Baum verästeln (siehe Abbildung 3). Diese Verschachtelung sowie die syntaktische Struktur des XML-Dokuments muss wohlgeformt sein. Ein Editor, in dem ein Inhalt eingepflegt wird, nimmt nicht wohlgeformte Einträge in der Regel gar nicht an. So werden Fehler wie falsche Schreibung von Tags, fehlerhafte Verschachtelung und vergessene End-Tags vermieden. Das ist äußerst wichtig, da durch fehlende Wohlgeformtheit das gesamte Dokument bis zur Korrektur unbrauchbar wird.

XML Baumstruktur

Abbildung 3: Ausschnitt aus der Baumstruktur eines XML-Dokuments. Das oben genannte Beispiel aus dem Handbuch des englischen Sprachgebrauchs könnte man in einer solchen Baumstruktur abbilden. Die Struktur ist schnell ersichtlich, was insbesondere bei Nachschlagewerken von Vorteil sein kann, da man durch die Verästelung geführt werden kann, um so auf die gesuchte Information zu kommen. Ähnliches ist von Webpages bspw. in Form von Breadcrump-Verläufen bekannt. Der Breadcrump-Verlauf wäre, wenn man etwa False Friends von „suit“ suchte: Handbuch: Handbuch des englischen Sprachgebrauchs > Kapitel: S > Lemma: suit > False Friend > Stichwort: suite; eigene Darstellung; vgl. Ott, Tobias: Crossmediales Publizieren im Verlag S. 38; Vonhoegen, Helmut: Einstieg in XML S. 53.

DTD – Dokumenttyp-Definition für XML

Über die Wohlgeformtheit hinaus muss ein XML-Dokument gültig sein. Hierfür muss das Dokument die Anforderungen der DTD erfüllen. Eine DTD, Dokumenttyp-Definition, legt das Vokabular und die Grammatik für eine Reihe von XML-Dokumenten fest, die somit einer Klasse entsprechen. Auch für andere Auszeichnungssprachen gibt es diese DTD, bspw. gehören alle Websites, die mit HTML codiert sind, einer gemeinsamen Klasse an; die DTD ist hier der feste Rahmen, der vom W3Consortium für HTML festgelegt wurde. Hier hat XML wieder eine Sonderrolle, da DTD selbst definiert und dadurch Klassen individuell gebildet werden können. Das ist der generische Charakter.

Für das obige Beispiel könnte die DTD folgendermaßen aussehen:

<!ELEMENT lemma (stichwort, übersetzung, falsefriend, erläuterung, beispiel+)>
<!ELEMENT stichwort (#PCDATA)>
<!ELEMENT übersetzung (#PCDATA)>
<!ELEMENT falsefriend (stichwort, übersetzung)>
<!ELEMENT stichwort (#PCDATA)>
<!ELEMENT übersetzung (#PCDATA)>
<!ELEMENT erläuterung (#PCDATA, lautschrift?)>
<!ELEMENT lautschrift (#PCDATA)>
<!ELEMENT beispiel (#PCDATA, lautschrift?)>
    <!ATTLIST beispiel stichwort ID #REQUIRED>

Im Beispiel wird deutlich, dass in der DTD jedes im XML-Dokument vorkommende Element aufgeführt und erläutert wird. Hier wird festgelegt, welche Elemente als Container fungieren und damit andere einschließen, ob mehrere Elemente vorkommen können (+), ob ein Element nur möglicherweise vorkommt (?), ob der Elementinhalt einfache Zeichenfolgen sind (#PCDATA) und wie Attribute heißen, bzw. deren Werte.

Eine DTD kann dadurch sehr mächtig werden, da sie die Regeln festgelegt werden, nach denen die XML erstellt wird. Zugleich hat man im Publikationsprozess hier aber die Möglichkeit, die Inhalte direkt zu strukturieren. Das kann Bürde und Vorteil zugleich sein, wie in den folgenden Kapiteln noch deutlich wird.

Die DTD kann innerhalb der XML angelegt sein oder als DTD-Datei ausgelagert werden, was insbesondere bei DTD als Klassendefinition Sinn macht. Auf diese ausgelagerte DTD muss zu Beginn eines XML-Dokuments verwiesen werden, ebenso auf die Zeichencodierung sowie den XML-Typ und das Stylesheet, bspw. CSS oder XSL. Stylesheets sind die dritte wichtige Komponente wie in Abbildung 4 deutlich wird. Erst durch sie wird Inhalt in der für Nutzer gerechten Form dargestellt. Farben, Anordnungen von Elementen, Textauszeichnungen, die gesamte Typografie sowie Textfluss, Ausrichtung von Grafiken und viele andere Dinge, die Inhalt in der gewohnten Form erscheinen lassen, werden im Stylesheet definiert.

XML – CSS – DTD – Per Compiler zum Erfolg

XML - CSS - DTD - Compiler


Abbildung 4: Verbindung von Inhalt, Struktur und Darstellung. Im XML-Dokument wird der Inhalt nach Strukturvorgaben der DTD gespeichert. Ein Compiler (auch Render Engine; bspw. ein Webbrowser wie der Internet Explorer) formatiert diese Datenbasis nach den im verwiesenen Stylesheet definierten Regeln, was die Ansicht ergibt, die der Nutzer letztendlich sieht. Eigene Darstellung nach Vonhoegen, Helmut: Einstieg in XML S. 237 f; Ott, Tobias: Crossmediales Publizieren im Verlag S. 61.

Die Technologie rund um XML kennt noch zahlreiche weitere syntaktische Regeln und Komponenten. Zum Verstehen von XML sollen die angegebenen Elemente hinreichen. Weitere praktische Beispiele, die die Vorteile gegenüber dem klassischen Publikationsprozess erläutern, folgen in den kommenden Artikeln über Medienneutralität und Publikationsprozesse.

Der gesamte Inhalt stammt aus der folgenden Arbeit XML im Publikationsprozess, die hier zum Download bereitsteht:

Download this document for free (PDF, Unknown)

Beurteilen Sie den Artikel! Senden Sie Anregungen oder Kritik an den Autor Marcel Knöchelmann oder teilen sie den Artikel:

Hits: 1828