Kurzübersicht über XSLT 1.0

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

Übersicht über die Elemente

XSLT 1.0 kennt insgesamt 35 Elemente:

Die folgende Grafik verdeutlicht die Hierarchie der XSLT 1.0-Elemente.

Abbildung: Übersicht über die XSLT-Elemente von XSLT 1.0.

Standardattribute in XSLT 1.0

Für alle Elemente von XSLT 1.0 – und auch weiterhin in der Version 2.0 – gel­ten zwei Standardattribute, die für jedes XSLT-Element verwendet werden dür­fen: xml:lang und xml:space. Beide Attribute befinden sich, entsprechend der W3C-Empfehlung für Namensräume von 1999, in folgendem festgelegten Namensraum. Dieser XML-Namensraum muss jedoch nicht explizit deklariert werden, da er per Definition grundsätzlich in jedem XML-Dokument gültig ist:

xmlns:xml="http://www.w3.org/XML/1998/namespace"

Für das Präfix xml ist der genannte Namensraum-URI ist festgeschrieben, sodass dieses Präfix nicht mit einem anderen Namensraum belegt werden darf. Die Verwen­dung anderer Präfixe mit dem oben angegebenen Namensraum ist dagegen zwar gestattet, wird aber wenig sinnvoll sein. Beim Einsatz der xml-Attribute muss gegebenenfalls darauf geachtet werden, diese in der DTD oder im Schema des Dokumenttyps zu deklarieren.

xml:lang

Wert

string (Ländercode)

Verwendung

Optional, Standardattribut

Einführung

XSLT 1.0

Das Standardattribut xml:lang darf jedem Element eines XML-Dokuments, folglich auch jedem XSLT-Element eines XSLT-Stylesheets, beigegeben werden, um die Sprache des jeweiligen Elementinhalts zu bestimmen. Die Sprache wird (nach RFC 1766) durch einen aus zwei Buchstaben bestehenden Ländercode gemäß ISO 639 bzw. ISO 3166-1 repräsentiert.

Alternativ kann ein Code gemäß der »Internet Assigned Numbers Authority« (IANA) gewählt werden – dann mit Präfix i- vor dem eigentlichen Code. Auch nutzerdefinierte Codes sind möglich, die dann das Präfix x- erhalten, um als solche gekennzeichnet zu sein. Eine Sprachdeklaration durch xml:lang gilt jeweils für den gesamten Elementinhalt mitsamt Attributwerten, sofern sie nicht für ein enthaltenes Element und seine Inhalte durch eine anderslautende xml:lang-Deklaration überschrieben wird.

xml:space

Wert

"default" (Default) | "preserve"

Verwendung

Optional, Standardattribut

Einführung

XSLT 1.0

Das Attribut xml:space bestimmt, wie der XML-Parser mit dem im so markierten Element enthaltenen Weißraumzeichen (Leerzeichen, Tabulatoren, Zeilenumbrüche) verfahren soll. Es gibt zwei erlaubte Werte, default und preserve. Die Wahl des Wertes preserve erzwingt die Weitergabe des gesamten im Element enthaltenen Leerraums an die Folgeanwendung.

Bei nicht vorhandenem xml:space-Attribut oder bei der Wahl des Wertes default wird dem Parser gestattet, sogenannten nicht signifikanten Leerraum zu entfernen. Das Attribut gilt stets für den gesamten Inhalt des Elements, für das es gesetzt ist. Sollen Elemente innerhalb auf preserve gesetzter Bereiche normal geparst werden, so kann dies durch Setzen von xml:space="default" erzwungen werden.

Attributwert-Templates in Instruktionen von XSLT 1.0

In XSLT 1.0 ist ausschließlich für folgende fünf Instruktionen – und dort nur für die jeweils in der rechten Tabellenspalte genannten Attribute – die Verwendung sogenannter Attributwert-Templates (AVT) gestattet:

XSLT-Instruktion AVT erlaubt für Attribute

xsl:attribute

name, namespace

xsl:element

name, namespace

xsl:number

format, lang, letter-value, grouping-separator, grouping-size

xsl:processing-instruction

name

xsl:sort

lang, data-type, order, case-order

Tabelle: In XSLT 1.0-Instruktionen erlaubte Attributwert-Templates.

Was ist ein Attributwert-Template?
Mit dem Begriff Attributwert-Template (Attribute Value Template, AVT) wird ein Konstrukt bezeichnet, das es dem XSLT-Prozessor ermöglicht, zur Laufzeit einen XPath-Ausdruck (expression) zu verarbeiten, der stellvertretend für einen zu ermittelnden Wert eines Attributs innerhalb eines Literal Result Elements oder bestimmter Attribute einiger XSLT-Instruktionen steht.

Ein Attributwert-Template wird von geschweiften Klammern umgeben, die selbst aber nicht zum auszuwertenden XPath-Ausdruck gehören:

attributname="{expression}"

   

<< 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