XSL-Übersicht

XSL-Übersicht

XSL-Übersicht

➪ XSL ist eine leistungsfähige Sprache zur Konvertierung vorrangig von XML-Input-Daten (aber z.B. auch Textformaten wie CSV), die in unterschiedlichem Kontext für unterschiedliche Zielformate (XML, HTML, Text sowie Formatting Object) zum Einsatz kommt.

XML ist eine Sprache, die weitestgehend ohne Vokabular im engeren Sinn auskommt und wesentlich auf der strikten Einhaltung klar definierter Regeln basiert. Hier werden hochkomplexe Datenstrukturen nach einem einfachen und flexiblen Prinzip in spitze Klammern gesteckt. Auch die Strukturdefinition dieser Daten (XML-Schema) sowie Techniken zu ihrer Auswertung (XSL) folgen großteils demselben Prinzip.

Komplexe Programmsteuerdateien (ANT, NANT) finden sich ebenso wie komplette System- und Serverkonfigurationen oder hochauflösende Grafiken mit leistungsfähigen Animationen (SVG, WPF): Sämtlich XML-basiert. Namespaces ermöglichen Differenzierungen für etliche Spezialstandards. Auch sie stecken in spitzen Klammern.

In der Praxis ist die XSL-Version 1.0 für zahlreiche Standard-Transformationen völlig hinreichend, sofern keine spezielleren Effekte wie Ausgabe mehrerer Zieldokumente, benutzerdefinierte Funktionen, kompliziertere Gruppierungen oder spezielle Type-Castings erforderlich sind.

Für anspruchsvollere Anwendungen empfiehlt sich XSL 2.0 bzw. XSL 3.0. Beide überragen mit der Spannweite ihrer technischen Möglichkeiten die jeweilige Vorgängerversion um ein Vielfaches.

Dabei dürfen Sie nicht vergessen: XSL 2.0 und XSL 3.0 halten zwar die Elemente und Attribute für XSL 1.0 ebenfalls vor und erweitern diese immens. Dennoch bieten die höheren Versionen keine hinreichende Abwärtskompatibilität. Dieselben zeigen in XSL 1.0/XPath 1.0 bei verschiedenen Funktionen ein anderes Verhalten, wie das Beispiel zeigt.

In vielen Implementierungen ist es beliebt, die Typkontrolle von Variablen bzw. Parametern sehr weitgehend dem System zu überlassen. Da viele Annahmen, die der implementierten Programmlogik zugrunde liegen, möglicherweise nicht zutreffen, liegt hier ein bedeutendes Risiko für

Wie im Abschnitt über angedeutet, ist es von zentraler Bedeutung, sich über den Datentyp von

in der Programmierlogik vollständig im Klaren zu sein. Ab der Version 2.0 steht eine effiziente, automatisierte Typkontrolle auf der Basis von XML-Schema zur Verfügung.

wg / 6. April 2018



Fragen? Anmerkungen? Tipps?

Bitte nehmen Sie Kontakt zu mir auf.




XSL-Prozessoren

XSLT 1.0 Elemente

XSLT 2.0 Elemente

XSLT 3.0

XSLT 3.0, XPath 3.0

xsl:accumulator

xsl:analyze-string

xsl:assert

xsl:attribute

xsl:attribute-set

xsl:apply-templates, xsl:next-match

xsl:apply-templates bei Referenzierungen

xsl:apply-templates bei mixed content

xsl:apply-templates: Teilkonvertierung

xsl:for-each vs. xsl:apply-templates

xsl:call-template

xsl:character-map

Liste der Sonderzeichen selbst erstellen

Zeichensätze generieren mit C#.NET

xsl:choose

xsl:copy, xsl:copy-of

xsl:decimal-format

xsl:element

xsl:evaluate

xsl:fallback

xsl:fork

xsl:for-each select

xsl:for-each-group

xsl:function

xsl:if

xsl:include, xsl:import, xsl:apply-imports

xsl:import-schema

xsl:iterate, xsl:break

xsl:key

xsl:merge

xsl:message

xsl:namespace

xsl:number

Arbeiten mit optionalen Elementen

xsl:output

xsl:param

xsl:preserve-space, xsl:strip-space

xsl:result-document

sitemap.xml mit XSLT 3.0 generieren

xsl:sort, xsl:perform-sort, fn:sort

xsl:template

xsl:text

xsl:try/xsl:catch

xsl:value-of

xsl:variable

Schattenkabinett

XSLT 2.0: Erweiterte Syntax

XSLT-Konvertierung von XML nach HTML

Arbeiten mit xsl:for-each

Einbindung externer XML-Dokumente

Arbeiten mit xsl:apply-templates

Arbeiten mit xsl:template name/xsl:call-template

Konvertierung von XML nach XML

Konvertierung von Elementen in Attribute

Arbeit mit temporären Bäumen

XSL-Transformationsaufrufe



Vielen Dank für Ihr Interesse an meiner Arbeit.


V.i.S.d.P.: Wilfried Grupe * Klus 6 * 37643 Negenborn

☎ 0151. 750 360 61 * eMail: info10@wilfried-grupe.de

www.wilfried-grupe.de/Basics_XSL2.html