XML-Know How

Strukturierte Daten transformieren

XSLT

Wir haben schon festgestellt, dass die XML-Daten, die der Verlag vorhält, nicht die Form der Inhalte darstellen, die veröffentlicht wird. Die Daten werden also stets erst in das jeweilige Zielformat überführt werden müssen. Das kann nur automatisiert geschehen, sonst ist die Idee des »Single Source Publishings« zum Scheitern verurteilt.

Dabei geht es meist nicht nur um ein Umbenennen von Tags. Will man mit den XML-Daten mehrere Ausgabekanäle bedienen – und das ist ja genau eines der Ziele dieser Technologie – so stellt sich schnell heraus, dass die jeweiligen Kanäle eine unterschiedliche Anordnung, Aufbereitung und Auswahl der Inhalte erfordern, um marktgängige Produkte herzustellen.

An diesem Punkt stellt sich oft eine gewisse Frustration ein: Was bringt ein neutrales Format, das mit hohem Aufwand erstellt und qualitätsgesichert werden muss, wenn es so gar nicht veröffentlicht werden kann, sondern wenn es vielmehr für jegliche Publikationsform doch erst wieder umgewandelt werden muss?

Regelbasierte Transformation

Die Lösung für dieses Dilemma lautet: die Umwandlungen müssen vollautomatisch geschehen. Die vielbeschworene »Publikation auf Knopfdruck« bedeutet also nichts anderes, als dass durch den Knopfdruck (und es sind stets mehrere Knöpfe, die gedrückt werden wollen) ein Transformationsprozess angestoßen wird, der den Quelldatenbestand in das gewünschte Zielformat überführt.

Um XML zu transformieren, gibt es einen eigenen Standard, nämlich XSLT. XSLT ist einer der Hauptbestandteile von XSL, der Extensible Stylesheet Language.

Die Bezeichnung »Extensible Stylesheet Language«, also eine Sprache zur Erstellung von Stylesheets, ist im Sprachgebrauch der Verlagsbranche zunächst irreführend: wird in der graphischen Industrie »Stylesheet« doch stets mit »Stilvorlage« gleichgesetzt, also einer rein typographischen Zuordnung von Stilen zu Inhalten. So haben wir es auch bei CSS, den »Cascading Stylesheets«, kennengelernt. Um XSLT zu verstehen, müssen wir zunächst diesen Bedeutungsinhalt von Stylesheets komplett hinter uns lassen.

Merke

Ein XSLT-Stylesheet für XML-Dokumente hat zunächst mit deren Formatierung noch gar nichts zu tun, auch wenn der name »Stylesheet« das vermuten läßt.

Ein XSLT-Stylesheet ist vielmehr eine Verarbeitungsanweisung für XML-Dokumente, um diese umzubauen, zu sortieren, Elemente auszuwählen und andere zu unterdrücken – vereinfacht gesprochen ist ein XSLT-Stylesheet nichts anderes als ein »Suche / Ersetze-Skript« und XSLT eine Sprache, um komplexe »Suche/ Ersetze«-Befehle zu erstellen. Wir sprechen bei einem solchen »Umbauen« einer XML-Datei von einer Transformation – wobei eine Transformation weit über das hinausgeht, was wir aus den gängigen Textverarbeitungsprogrammen als »Suche/Ersetze«-Routinen kennen.