Location-Paths (Pfade zum Speicherort)
Ein Location-Path ist ein XPath-Ausdruck, mit dem eine Gruppe von Knoten relativ zum Kontextknoten ausgewählt wird. Bei der Auswertung eines Location-Path-Ausdrucks ergibt sich eine Knotengruppe, die die durch den Location-Path angegebenen Knoten enthält. In einem Location-Path können Ausdrücke rekursiv enthalten sein, mit denen Knotengruppen gefiltert werden.
Syntaktisch gesehen besteht ein Location-Path aus einem oder mehreren Location-Steps, die jeweils durch einen Schrägstrich (/
) getrennt sind:
locationstep/locationstep/locationstep
Jeder Location-Step wählt wiederum eine Gruppe von Knoten relativ zum Kontextknoten aus, d. h. zu dem Knoten, der vom vorherigen Location-Step ausgewählt wurde. Ein auf diese Weise ausgedrückter Location-Path ist ein relativer Location-Path. Ein absoluter Location-Path startet beim Stammelement:
/locationstep/locationstep/locationstep
In einem Location-Path werden Location-Steps von links nach rechts ausgewertet. Der linke Location-Step wählt eine Gruppe von Knoten relativ zum Kontextknoten aus. Diese Knoten stellen dann den Kontext für die Verarbeitung des nächste Location-Steps dar. Diese Verarbeitung von Schritten und die Aktualisierung des Kontextknotens werden so oft wiederholt, bis alle Location-Steps verarbeitet sind.
Ein Location-Path kann abgekürzt oder nicht abgekürzt sein.
In einem nicht abgekürzten Location-Path weist ein Location-Step die folgende Syntax auf:
axis::node-test[predicate]
In dieser Syntax gibt axis
an, wie die vom Location-Step ausgewählten Knoten mit dem Kontextknoten in Bezug gesetzt werden. node-test
gibt den Knotentyp und den erweiterten Namen der vom Location-Step ausgewählten Knoten an. predicate
ist ein Filterausdruck, mit dem die Auswahl von Knoten im Location-Step genauer definiert werden kann. Prädikate sind optional. In diesem Fall besteht ein Location-Step nur aus axis::
und node-test
. Die folgende Tabelle enthält einige Beispiele.
Nicht abgekürzter Location-Path | Beschreibung |
---|---|
|
Wählt das letzte |
|
Wählt das |
|
Wählt alle untergeordneten Textknoten des Kontextknotens aus. |
|
Wählt das untergeordnete |
In einem abgekürzten Location-Path wird der Achsenbezeichner axis::
nicht explizit in einem Location-Step ausgedrückt, sondern durch eine Gruppe von Verknüpfungen impliziert. Die folgende Tabelle enthält einige Beispiele.
Abgekürzter Location-Path | Beschreibung |
---|---|
|
Wählt die |
|
Wählt das |
|
Wählt alle untergeordneten Textknoten des Kontextknotens aus. |
|
Wählt die untergeordneten |
Im Folgenden ist eine Zusammenfassung einiger Abkürzungen dargestellt.
Nicht abgekürzt | Abgekürzt |
---|---|
|
|
|
|
|
|
|
|
|
|
Dieser Abschnitt enthält Folgendes
In den folgenden Themen werden Syntax und Verwendung der Teile von Location-Paths ausführlich erläutert.