Funktionskategorien in XPath 1.0 und XSLT 1.0

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

In XPath 1.0/XSLT 1.0 sind insgesamt 36 Funktionen definiert, 11 davon stam­men aus XSLT. Darüber hinaus kennt XPath 1.0 noch vier Nodetests, die, obwohl rein optisch ähnlich, nicht eigentlich zu den Funktionen zählen (den­noch werden sie oft als Nodetest-»Funktionen« bezeichnet).

XPath 1.0-Funktionen:
Die XPath 1.0-Funktionen sind in der W3C-Spezifikation zu XPath 1.0 vom 16. November 1999 beschrieben.

XSLT 1.0-Funktionen:
Die XSLT 1.0-Funktionen sind Bestandteil der W3C-Spezifikation zu XSLT 1.0, ebenfalls vom 16. November 1999.

Entsprechend ihres Verwendungsgebiets können die Funktionen wie folgt unterteilt werden:

Typkonvertierung und Formatierung

Name Herkunft Verwendung

boolean()

XPath 1.0

Wandlung in einen booleschen Wert

format-number()

XSLT 1.0

Formatierung Zahl nach String

number()

XPath 1.0

Wandlung in Zahl

string()

XPath 1.0

Wandlung in String

Tabelle: Funktionen zu Typkonvertierung und Formatierung.

Rundungsfunktionen für numerische Typen

Name Herkunft Verwendung

ceiling()

XPath 1.0

Aufrundung der Eingabezahl

floor()

XPath 1.0

Abrundung der Eingabezahl

round()

XPath 1.0

Auf- oder Abrundung der Eingabezahl

Tabelle: Rundungsfunktionen für numerische Typen.

Boolesche Funktionen

Name Herkunft Verwendung

false()

XPath 1.0

boolescher Wert false

true()

XPath 1.0

boolescher Wert true

not()

XPath 1.0

boolesche Negation

Tabelle: Boolesche Funktionen.

Stringfunktionen: Analyse und Manipulation

Name Herkunft Verwendung

concat()

XPath 1.0

Stringaddition

contains()

XPath 1.0

Test auf Substring im Prüfstring

normalize-space()

XPath 1.0

Normalisierung von Weißraum

starts-with()

XPath 1.0

Test auf Substring am Stringanfang

string-length()

XPath 1.0

Zeichenzahl im Prüfstring

substring()

XPath 1.0

Extraktion eines Substrings

substring-after()

XPath 1.0

Teilstring nach Trennsymbol

substring-before()

XPath 1.0

Teilstring vor Trennsymbol

translate()

XPath 1.0

Zeichenersetzung nach Muster

Tabelle: Stringfunktionen – Analyse und Manipulation.

Aggregation

Name Herkunft Verwendung

count()

XPath 1.0

Knotenzahl in Nodeset

sum()

XPath 1.0

Addition von Values eines Nodesets

Tabelle: Funktionen zu Aggregation.

Nodenamen und Identifier

Name Herkunft Verwendung

generate-id()

XSLT 1.0

ID zur Laufzeit erzeugen

lang()

XSLT 1.0

Sprachbestimmung

local-name()

XPath 1.0

lokaler Teil des QNames

name()

XPath 1.0

QName eines Knotens

namespace-uri()

XPath 1.0

Namensraum-URI eines Knotens

Tabelle: Funktionen zur Ermittlung von Nodenamen und Identifiern.

Kontextinformation innerhalb eines Nodesets

Name Herkunft Verwendung

current()

XSLT 1.0

Der aktuelle Knoten

last()

XPath 1.0

Index des letzten Knotens im Set

position()

XPath 1.0

Index des aktuellen Knotens im Set

Tabelle: Kontextinformation innerhalb eines Nodesets.

Assoziation und Auffindung von Nodes und Ressourcen zur Laufzeit

Name Herkunft Verwendung

document()

XSLT 1.0

Einbindung eines externen Dokuments

key()

XSLT 1.0

Node finden mit definiertem Schlüssel

id()

XSLT 1.0

Node finden mit ID (DTD)

unparsed-entity-uri()

XSLT 1.0

Unparsed Entity einbinden (DTD)

Tabelle: Assoziation und Auffindung von Nodes und Ressourcen zur Laufzeit.

Information über die Laufzeitumgebung

Name Herkunft Verwendung

element-available()

XPath 1.0

Instruktion in Laufzeit verfügbar

function-available()

XSLT 1.0

Funktion in Laufzeit verfügbar

system-property()

XPath 1.0

Information über Laufzeitumgebung

Tabelle: Information über die Laufzeitumgebung.

Nodetests (nicht zu den Funktionen zu rechnen)

Nicht zu den Funktionen gehören, obwohl im Aussehen identisch, die sogenannten Nodetests. Da deren Bezeichner 'comment', 'text' usw. keine geschützten Begriffe darstellen, werden ihnen in ihrer Bedeutung als Nodetests die Funktionsklammern als »Flags« beigegeben, um sie eindeutig zu kennzeichnen.

Sie werden deshalb an dieser Stelle aufgeführt, sind aber nicht in der folgenden Erläuterung der XPath-Funktionen enthalten. Die ausführliche Erklärung der Nodetests befindet sich in der Erläuterung von XPath-Ausdrücken und -Pattern.

Name Herkunft Verwendung

comment()

XPath 1.0

Test auf Kommentarknoten

text()

XPath 1.0

Test auf Textknoten

processing-instruction()

XPath 1.0

Test auf PI

node()

XPath 1.0

Test auf beliebigen Knotentyp

Tabelle: Die Nodetest-Ausdrücke aus XPath.

   

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