Preceding-Sibling-Achse

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

Definiert für: XPath 1.0 und 2.0 (nicht in XQuery 1.0)

Richtung: rückwärts gerichtet

Achsenbezeichner: preceding-sibling::

Abgekürzte Schreibweise: nicht vorhanden

Die Preceding-Sibling-Achse

Abbildung: Die Preceding-Sibling-Achse.

Die »Preceding-Sibling«-Achse enthält alle Geschwisterknoten des aktuellen Kno­tens, die diesem in Dokumentreihenfolge vorangehenden (also solche, die Kin­der des gleichen Elternknotens sind). In der Ergebnissequenz können Element-, Text-, Kommentar- und Processing-Instruction-Knoten auftreten.

Ist der aktuelle Knoten ein Namensraum- oder Attributknoten, so ist diese Achse leer. (Ein Elementknoten kann zwar durchaus mehrere Attributknoten oder Namensraumknoten besit­zen. Da diese aber nicht als dessen Kindknoten gelten und obendrein keine festgelegte Rei­henfolge besitzen, können sie folglich untereinander keine Geschwisterknoten sein.)

Beispiel:

  • preceding-sibling::*
    wählt alle Elementknoten ungeachtet ihres Bezeichners aus, die den gleichen Elternknoten wie der aktuelle Knoten besitzen und diesem in Dokumentreihenfolge vorangehen.
  • preceding-sibling::node()
    wählt alle Knoten ungeachtet ihres Typs aus, die den gleichen Elternknoten wie der aktuelle Knoten besitzen und die­sem in Dokumentreihenfolge vorangehen. In diesem Fall sind also neben Elementknoten auch Text- oder Kommentarknoten enthalten. Die Ergebnis­sequenz ist entgegen der Dokumentreihenfolge geordnet.

   

<< zurück vor >>
Tipp der data2type-Redaktion:
Zum Thema XPath 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