XML Path Language
Definition
Der XPath ist ein Standard des W3C Konsortiums und dient in erster Linie der Adressierung in XML Dokumenten. XPath Ausdrücke können aus folgenden drei Bestandteilen zusammengesetzt sein:
- Achse
- Knotentest
- Prädikate
Die Achsen zur Formulierung eines XPath Ausdruckes sind child, parent, descendant, ancestor, following, preceding, following-sibling, preceding-sibling, attribute, namespace, self und descendant-or-self. Sie beschreiben die Beziehung zwischen dem aktuellen Knoten und dem gesuchten Knoten. Der Knotentest gibt den Namen des gesuchten Knotens in dem XML Dokument an. Er ist durch zwei Doppelpunkte von der Achse getrennt. Die Prädikate folgen in eckigen Klammern und dienen dazu, die Suche nach dem Knoten zu verfeinern.
Beispiele für eine XPath Anweisung sind:
- child::absatz[position = 2] Dieser Ausdruck wählt das zweite absatz-Kindelement des gegenwärtigen Knotens
- attribute::* Alle Attribute des gegenwärtigen Knotens werden gesucht.
- absatz[@typ="neu"][1] Wählt das erste absatz-Kindelement, das als Atttribut typ mit dem Wert neu hat
Mit einem XPath Ausdruck können die sieben verschiedenen Knotenarten des XPath Datenmodells angesprochen werden:
- Wurzelknoten (root nodes)
- Elementknoten (element nodes)
- Textknoten (text nodes)
- Attributknoten (attribut nodes)
- Namensraumknoten (namespace nodes)
- Verarbeitungsanweisungs-Knoten (processing instruction nodes)
- Kommentarknoten (comment nodes)
Der XPath spielt vor allem bei Adressierungen in XForms und XSL eine wichtige Rolle.