- XSL
-
XSL (Extensible Stylesheet Language) ist eine in XML notierte Familie von Transformationssprachen zur Definition von Layouts für XML-Dokumente. Die XSL-Subsprache XSLT wird außerdem zur Übersetzung/Transformation eines XML-Formats in ein anderes XML- oder Textformat genutzt.
Referenzen auf Layouts (auch Stylesheets genannt) können in die zu formatierenden XML-Dokumente eingebunden werden, wobei sich die Layouts speziellen Medien zuordnen lassen. So ist es möglich, ein Layout zum Drucken und ein Layout für die Darstellung am Computer zu verwenden.
Zu XSL gehören
- das XML-basierte eigentliche XSL (zur Unterscheidung genannt XSL-FO) (XSL Formatting Objects) für die Beschreibung eines Dokuments als Baum mit Formatierungsanweisungen und Stilangaben,
- das XML-basierte XSLT (XSL Transformations) für die Transformation eines beliebigen XML-Dokuments in einen anderen Baum
- und indirekt auch XPath für die Adressierung von Baumbestandteilen.
Inhaltsverzeichnis
Abgrenzung
Fälschlicherweise wurde XSL früher manchmal als Synonym für XSLT verwendet. Gründe dafür könnten sein, dass das üblicherweise für XSLT verwendete Namespace-Prefix
xsl
ist und die Empfehlung zu XSLT fast zwei Jahre vor der zu XSL verabschiedet wurde.Die heute oft anzutreffende Gleichsetzung von XSL mit XSL-FO ist jedoch ebenso falsch. Vermutlich rührt sie daher, dass die Empfehlung zu XSL ausschließlich die Formatting Objects beschreibt, während XSLT wie XPath in eine eigene Empfehlung ausgelagert ist.
Die Empfehlung zu XSL beschreibt in ihrer Zusammenfassung, dass XSL ausdrücklich aus zwei Teilen besteht: einer Sprache zur Transformation (XSLT) und einem Vokabular zur Formatierung (XSL-FO). In der korrekten Terminologie bezeichnet XSL also die Verwendung von XSLT und XSL-FO in Kombination.
Einsatzgebiete
Die drei Sprachen (XSL-FO, XSLT, XPath) lassen sich gemeinsam als XSL oder auch unabhängig voneinander verwenden.
Ein Dokument ließe sich z. B. gleich in XSL-FO verfassen, eine in der Praxis angewandte Vorgehensweise zum Entwurf neuer Layouts.
XSLT kann nicht nur nach XSL-FO transformieren, sondern in jede beliebige XML-basierte Sprache oder aber auch in Formate, die nicht XML sind. In der Praxis wird XSLT vergleichsweise selten mit XSL eingesetzt. Wesentlich häufiger ist XSLT bei Message Oriented Middleware oder Presentation Oriented Publishing auf XML-Basis anzutreffen, wobei letzteres weitaus häufiger mit XHTML für den Einsatz im WWW als XSL-FO verwendet wird. XSLT wird also häufiger mit anderen XML-basierten Sprachen verwendet als mit XSL-FO.
XPath wird in XSLT für XSLT Patterns und für XQuery verwendet.
Geschichte
XSL geht auf das von James Clark entwickelte DSSSL zurück. Im Gegensatz zu DSSSL bietet XSL zwei wesentliche Neuerungen:
- XML-basierte Syntax
- Trennung der Sprachen für die Transformation (XSLT), die Formatierung (XSL-FO) und die Baumadressierung (XPath) in eigenständige und unabhängig voneinander verwendbare Sprachen
Das erste Working Draft zu XSL behandelte noch alle Komponenten in einem Dokument und wurde im August 1998 veröffentlicht. Im Laufe der Entwicklung wurden XSLT und XPath in eigenständige Dokumente ausgelagert. XSLT 1.0 und XPath 1.0 wurden im November 1999 verabschiedet, XSL selbst im Oktober 2001.
Die derzeit aktuelle Fassung von XSLT 2.0 und XPath 2.0 wurde am 23. Januar 2007 verabschiedet.
Software
- Siehe auch XSLT für verschiedene XSLT-Prozessoren
- DIGIFORMS Grafisches xsl-fo designer, kommerziell
- FOP Open Source
- xmlroff Open Source
- XEP kommerziell
- AXF kommerziell
- Microsoft Visual Studio 2005 kommerziell
- Antenna House Formatter kommerziell (deutsch)
- <oXygen/> XSL editor and debugger kommerziell
- XF Rendering Server kommerziell
- Xml2PDF Server 2007 kommerziell
Weblinks
- The Extensible Stylesheet Language (XSL) – Website (W3C)
- Extensible Stylesheet Language (XSL) – Spezifikation (W3C)
- Deutsche Übersetzung der XPath- und XSLT-Spezifikation
- Einführungen in XSL-FO und XSLT Infos und Tutorials zu XSL-FO und XSLT
- Das XML-XSLT-Seminar Online-Version des gleichnamigen Buches
- SELFHTML: Darstellung von XML-Daten Das Thema in der populären HTML-Einführung SELFHTML
- XSLT-Einführung in die Transformationssprache (Deutsch)
Standards des World Wide Web ConsortiumsEmpfehlungen (recommendations): Canonical XML | CDF | CGI | CSS | DOM | HTML | MathML | OWL | PLS | RDF | RDF-Schema | SISR | SMIL | SOAP | SRGS | SSML | SVG | SPARQL | Timed Text | VoiceXML | WSDL | XForms | XHTML | XML | XML Base | XML Events | XML Information Set | XML Schema | XML Signature | XPath | XPointer | XQuery | XSL Transformation | XSL-FO | XSL | XLink
Anmerkungen (notes): XHTML+SMIL | XAdES
Arbeitsentwürfe (working drafts): CCXML | CURIE | InkML | XFrames | XFDL | WICD | XHTML+MathML+SVG | XBL | XProc | HTML 5
Wikimedia Foundation.