Einführung in XSLT 2.0
(Auszug aus "XSLT 2.0 & XPath 2.0" von Frank Bongers, Kapitel 1 bis 3.)
Auf den folgenden Seiten können Sie die Kapitel 1 bis 3 aus "XSLT 2.0 & XPath 2.0 ― Das umfassende Handbuch" von Frank Bongers nachlesen.
Warum überhaupt ein Buch über XSLT?
Eine simple Antwort auf diese Frage lautet natürlich, dass dieses Thema »wichtig« ist – immerhin ist XSLT ein unabhängiger Standard zur Informationsverarbeitung und gehört zur XML-Familie, ist also naturgemäß Favorit für die Verarbeitung von in XML-Format vorliegenden Daten. Nicht ohne Grund, denn genau hierfür wurde XSLT konzipiert.
XML selbst ist über das Stadium des Hypes und reinen Buzzwords seit Jahren hinaus und hat sich zum anerkannten Standard der industriellen Informationsspeicherung, -weitergabe und -verarbeitung gemausert. Der Sprachstandard wurde vom W3C unter Mitwirkung zahlreicher Fachleute aus der Industrie definiert, was eine breite, inzwischen geradezu allgegenwärtige Unterstützung der Sprache gewährleistet.
Mit der Verbreitung von XML steigt die Notwendigkeit einer Verarbeitung entsprechender Dokumente – auch diese sollte plattformunabhängig erfolgen. Es ist zwar denkbar, eine Verarbeitung von XML in verschiedensten Programmiersprachen zu schreiben, jedoch dann ohne die Möglichkeit, die so erstellten Verarbeitungsvorschriften einfach portieren zu können.
XSLT stellt in dieser Hinsicht die Lösung dar: als plattformunabhängige, selbst in XML geschriebene Anwendungen sind XSLT-Stylesheets so gut wie problemlos von einer Einsatzumgebung in die andere portierbar, sei es aus einer PHP-Umgebung, aus einer .NET-Umgebung oder einer Java-Umgebung, in denen Prozessoren wie Saxon oder AltovaXML eingesetzt werden können: Wo die Umgebungen wechseln, stellt das XSLT-Stylesheet gewissermaßen eine Konstante dar. Dass XSLT auch in der Web 2.0-Umgebung seinen Platz findet, sieht man an Frameworks wie Googles »AJAXSLT« oder »Sarissa« (auch wenn diese derzeit noch den Stand XSLT 1.0 besitzen).
Die Aufgaben, die XSLT zu bewältigen hat, werden zunehmend komplexer. Heutzutage spielt sich ein Großteil der XML-Verarbeitung in Zusammenhang mit Datenbanken ab, die Gewährleistung einer korrekten Verarbeitung in Bezug auf Gültigkeit, sowohl der verarbeiteten Daten als auch der Ergebnisse, wirft neue Schwierigkeiten auf, denen mit der neuen Version 2.0 von XSLT und XPath Rechnung getragen wird.
Die Aufeinanderzubewegung von Datenbanken und XML wird an der Verschmelzung von XPath und der als Abfragesprache konzipierten XML Query Language zur allgemeinen XML-Abfragesprache XQuery 1.0 deutlich, von der XPath 2.0 »nur« eine Untergruppe darstellt. Im Zentrum der Verarbeitung von Daten in XML-Form, gleichgültig ob diese nun als »reale« Dokumente vorliegen oder als dynamisch mittels Datenbankabfrage erzeugte »virtuelle« Dokumente, wird stets XSLT stehen.
Welche Inhalte werden behandelt?
Dieses Buch beschäftigt sich gleichrangig mit XSLT und XPath – beide Sprachen werden in der Regel gemeinsam verwendet (XPath kann allerdings durchaus auch in anderen Umgebungen auftauchen), sodass eine Trennung nicht sinnvoll ist.
Sowohl XPath als auch XSLT werden in ihrer aktuellen Version 2.0 vorgestellt. Auf Änderungen gegenüber XSLT 1.0 wird bei der Behandlung der Instruktionen von XSLT 2.0 hingewiesen; der Versionssprung stellt im Wesentlichen eine Erweiterung gegenüber der Vorgängerversion dar. XPath 2.0/XQuery 1.0 ist hingegen eine fast neu konzipierte, lediglich »rückwärtskompatible« Sprache – sowohl was den erheblich erweiterten Sprachumfang als auch das Verhalten der einschlägigen Funktionen betrifft.
Dieses Buch soll ausdrücklich keine rückwirkende Einführung in XSLT 1.0 und XPath 1.0 sein. Vorkenntnisse dieser Versionen beider Sprachen werden allerdings nicht vorausgesetzt. Nach Durcharbeitung des Buches sollten Sie sich ebenfalls in einer XSLT 1.0/XPath 1.0-Umgebung leicht zurechtfinden können – für »Umsteiger« weist der Referenzteil auf entsprechende Unterschiede zwischen beiden Versionen und denkbare Klippen hin.
Kenntnisse in XML und zumindest rudimentäre Kenntnisse in XML Schema sollten beim Leser vorhanden sein. Eine Behandlung hätte einerseits den ohnehin umfangreichen Rahmen gesprengt, auf der anderen Seite existiert Literatur hierzu bereits in hinreichender Menge.
Ebenfalls nicht Thema dieses Buches konnte die vollständige Spezifikation von XQuery sein. XPath 2.0 stellt zwar von dieser eine nicht unwesentliche Teilmenge dar, der ganze Sprachumfang von XQuery 1.0 kann jedoch (zumindest zur gegenwärtigen Zeit) nur separat von XSLT eingesetzt werden. Da dieses Buch aus der Sicht von XSLT geschrieben ist, stellte eine Beschreibung der dort nicht nutzbaren Funktionalitäten von XQuery mit Einschränkungen lediglich Ballast dar, der bestenfalls zur Verwirrung führen würde.
- XSLT und XPath - der Start
- Verarbeitung von XML mit XSLT
- Erste XSLT-Transformationen
- Das Wurzelelement xsl:stylesheet
- Die Grundstruktur des Stylesheets: xsl:template
- Literal Result Elements unter der Lupe
- Namensräume und Literal Result Elements
- Die Kontrolle über das Ergebnisformat
- Die Instruktion im Template-Rumpf
- Das XML-Dokument als Baum
- Eine Transformation Schritt für Schritt
- Start mit XPath: Pfadausdrücke
- Achsen und Nodetests
- Pfadausdrücke - Beispiele
- Stringwerte und Attributwerte
- Stylesheets mit mehreren Templates
- Ein Vergleich: Ausdruck vs. Instruktion
- Struktur steuert Verarbeitung
- Einteilung der Elemente von XSLT
- Zusammenfassung und Aufgaben
- XSLT und XPath - Runde zwei
- XSLT und XPath - Runde drei
- Variablen und Parameter
- Das zweitbeste Template - xsl:next-match
- Templates und Template-Mode
- Stringverarbeitung
- Datums-, Zeitdauer- und Zeitstempelwerte
- Stylesheet-Funktionen
- Externe Quellen - Dokumente und Entitäten
- Mehrere Ergebnisdokumente
- Modulare Stylesheets
- Schlüssel und Identifier
- Zusammenfassung und Aufgaben
<< 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