XML-Know How

XSLT – die Skriptsprache für XML-Daten

XSLT ist eine Art XML-Skriptsprache, die die Transformation von XML-Dokumenten mit einer bestimmten Struktur in XML- oder HTML-Dokumente mit anderen Strukturen (und auch in Dokumente ohne markup) erlaubt. Das besondere an XSLT ist seine Syntax: Ein XSLT-Stylesheet ist selbst auch wieder ein XML-Dokument. Jeder XSLT-Befehl ist also ein XML-Element mit bestimmten Attributen. Ein XSLT-Stylesheet kann entsprechend selbst auch wieder geparst (also auf seine Syntax und korrekten Aufbau hin überprüft) werden; damit ist es auch für einen Informatik-Laien vergleichsweise einfach, ein korrektes XSLT-Stylesheet zu erstellen.

Der XSLT-Prozessor

Wenn ein XSLT-Stylesheet zunächst nur eine XML-Datei ist, so führt sie alleine noch keine Transformation aus. Um ein XSLT-Stylesheet zur Anwendung zu bringen, bedarf es noch eines entsprechenden Programms, eines sogenannten XSLT-Prozessors.

Tipp

Die gängigsten XSLT-Prozessoren sind Freeware. Es ist also jederzeit möglich, sich eine XSLT-Arbeitsumgebung aufzubauen, ohne dafür kostenpflichtige Software installieren zu müssen.

Ein typischer Ablauf für eine XSLT-basierte Transformation sieht damit wie folgt aus:

Dem Verlag liegt ein XML-Quelldokument vor, das regelbasiert und automatisiert in eine andere Struktur – z. B. nach HTML – überführt werden soll. Die dafür erforderlichen Transformationsregeln werden in ein XSLT-Stylesheet geschrieben. Soll eine Regel nicht auf das ganze Dokument angewendet werden, sondern nur auf Teilbäume, so lässt sich mit XPath eine gezielte Auswahl treffen. Das XML-Quelldokument und das XSLT-Stylesheet werden an einen XSLT-Prozessor übergeben, der die eigentliche Verarbeitung übernimmt und das Ergebnis der Transformation (in diesem Fall: das erzeugte HTML-Dokument) abspeichert. Damit ist der Prozess abgeschlossen.

XSLT spielt seine Stärken in einem XML-basierten Verlagsworkflow vor allem dann aus, wenn die vielen Quelldaten in einheitlicher Struktur (also gemäß einer gemeinsamen DTD) vorliegen. Mit einem XSLT-Stylesheet können dann beliebig viele Dokumente transformiert werden. Hat der Verlag seine Quelldaten einheitlich aufgebaut und für jedes Zielformat ein (oder mehrere) entsprechende XSLT-Stylesheets entwickelt, können alle gewünschten Zielformate automatisiert aus den medienneutralen Verlagsinhalten generiert werden.