Struktur steuert Verarbeitung

(Auszug aus "XSLT 2.0 & XPath 2.0" von Frank Bongers, Kapitel 1.)

Die Entscheidung, ob und wo die Funktionalität eines Stylesheets mehr auf XSLT oder mehr auf XPath aufbauen sollte, muss im Einzelfall getroffen wer­den. Ein XPath-Ausdruck kann zwar beliebig »intelligent« gestaltet werden, erfordert dann aber meist genaue Kenntnis der zu verarbeitenden Quelle. Ein solcher optimierter Ausdruck ist im Fall von variierenden, unerwarteten oder gar fehlerhaften Eingabestrukturen fast zwangsläufig fehlerträchtig.

Ist Robustheit gefragt, so befindet man sich fraglos in der Domäne von XSLT. (Anmerkung: Natürlich kann man auch XPath »robust« schreiben, genau wie man XML auch mit Pro­grammen verarbeiten kann, die in PHP, Perl, C++ oder Python geschrieben sind.) Einem »cleveren« XPath-Ausdruck könnten also auch eine Reihe »dummer« XSLT-Instruktionen entgegengesetzt werden – in Form möglichst einfach gestal­teter Template-Regeln. Von diesen würden allerdings eine ganze Reihe benötigt. Im Zweifelsfall eine oder mehr pro zu verarbeitendem Element, da dieses viel­leicht in verschiedenen Kontexten unterschiedlich verarbeitet werden soll.

Die Grundidee besteht darin, nicht zu den Informationen zu gehen, um sie zu holen – wofür man ja wissen muss, wo sie liegen –, sondern das Quelldokument selbst als »Ablaufplan« der Verarbeitung zu verwenden: Die Verarbeitung folgt der Struktur des Eingabedokuments.

   

   

<< zurück vor >>
Tipp der data2type-Redaktion:
Zum Thema XSLT bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an:

Copyright © Galileo Press, Bonn 2008
Für Ihren privaten Gebrauch dürfen Sie die Online-Version ausdrucken.
Ansonsten unterliegt dieses Kapitel aus dem Buch "XSLT 2.0 & XPath 2.0 ― Das umfassende Handbuch" denselben Bestimmungen wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Galileo Press, Rheinwerkallee 4, 53227 Bonn