XPath – Sprache zur Navigation in XML-Dokumenten
Effiziente Abfrage und Navigation in XML-Strukturen
Xpath XPath ist eine standardisierte Sprache zur Adressierung von Knoten in XML-Dokumenten, die zur Navigation und Abfrage von XML-Strukturen verwendet wird.
Das Wichtigste auf einen Blick
- XPath ermöglicht die gezielte Auswahl von Knoten in XML-Dokumenten durch Pfadausdrücke.
- Die Sprache unterstützt verschiedene Achsen, Prädikate und Funktionen zur komplexen Navigation.
- XPath wird oft in Kombination mit XSLT und XQuery verwendet, um XML-Daten zu transformieren und abzufragen.
- XPath-Ausdrücke können sowohl absolute als auch relative Pfade enthalten.
- Die Syntax von XPath ist standardisiert durch das W3C.
- XPath ist essenziell für Anwendungen, die XML-Daten verarbeiten, z.B. Webservices, Konfigurationsdateien oder Dokumentenmanagement.
Überblick: Xpath
XPath (XML Path Language) ist eine Sprache, die entwickelt wurde, um bestimmte Teile eines XML-Dokuments präzise zu lokalisieren und auszuwerten. Sie wird häufig in Kombination mit XML-basierten Technologien wie XSLT und XQuery eingesetzt und ist ein zentraler Bestandteil der Verarbeitung und Analyse von XML-Daten.
Was ist XPath?
XPath ist eine Sprache zur Auswahl von Knoten in einem XML-Dokument. Sie definiert Pfadausdrücke, mit denen bestimmte Elemente, Attribute oder Textinhalte gezielt angesprochen werden können.
Grundlagen und Syntax von XPath
XPath verwendet Pfade, die durch Schrägstriche getrennt sind, um Knoten im XML-Baum zu adressieren. Es gibt absolute Pfade, die vom Wurzelknoten ausgehen, und relative Pfade, die vom aktuellen Kontextknoten starten. Zusätzlich können Bedingungen (Prädikate) in eckigen Klammern angegeben werden, um die Auswahl zu verfeinern.
Achsen in XPath
Achsen definieren die Beziehung zwischen dem aktuellen Knoten und den zu selektierenden Knoten. Beispiele sind 'child' (Kindknoten), 'parent' (Elternknoten), 'descendant' (Nachfahren), 'ancestor' (Vorfahren) oder 'following-sibling' (folgende Geschwisterknoten).
Funktionen und Operatoren in XPath
XPath bietet eine Vielzahl von Funktionen, z.B. zur String-Verarbeitung, numerischen Berechnungen oder logischen Ausdrücken. Operatoren wie '=', '!=', '<', '>' ermöglichen Vergleiche, während logische Operatoren wie 'and' und 'or' komplexe Bedingungen bilden.
Beispiel eines XPath-Ausdrucks
Der Ausdruck /bookstore/book[price>30]/title wählt alle Titel von Büchern aus, deren Preis größer als 30 ist, aus dem Wurzelknoten 'bookstore'.
Wichtige XPath-Achsen und ihre Bedeutung
| Achse | Beschreibung | Beispiel |
|---|---|---|
| child | Kindknoten des aktuellen Knotens | child::book |
| parent | Elternknoten des aktuellen Knotens | parent::node() |
| descendant | Alle Nachfahren des aktuellen Knotens | descendant::title |
| following-sibling | Alle Geschwisterknoten nach dem aktuellen | following-sibling::chapter |
Anwendungsgebiete von XPath
XPath wird in der XML-Verarbeitung eingesetzt, z.B. bei der Transformation von XML-Dokumenten mit XSLT, bei XML-Datenbanken, in Webservices zur Datenabfrage oder in Konfigurationsdateien zur gezielten Informationsauswahl.
Vorteile und Nachteile von XPath
XPath ermöglicht präzise und flexible Abfragen in XML-Dokumenten, ist standardisiert und weit verbreitet. Nachteile sind die Komplexität bei sehr großen oder tief verschachtelten Dokumenten und die Lernkurve für komplexe Ausdrücke.
Wichtiger Hinweis
XPath ist nicht für die Bearbeitung von JSON-Daten geeignet, hierfür existieren andere Abfragesprachen wie JSONPath.
Zusatzinformationen
Begriff: XPath
Abkürzung: XML Path Language
Standardisierung: W3C (World Wide Web Consortium)
Einsatzgebiet: Navigation und Abfrage von XML-Dokumenten
Verwandte Technologien: XSLT, XQuery, XML Schema
Erstveröffentlichung: 1999
Aktuelle Version: XPath 3.1
Synonyme und alternative Bezeichnungen
Häufige Fragen zu Xpath
Was ist der Hauptzweck von XPath?
XPath dient dazu, gezielt Knoten in XML-Dokumenten zu finden und auszuwerten, um so Daten strukturiert zu extrahieren oder zu transformieren.
Wie unterscheidet sich XPath von XSLT?
XPath ist eine Sprache zur Navigation und Auswahl von Knoten, während XSLT eine Sprache zur Transformation von XML-Dokumenten ist, die XPath zur Auswahl von Knoten verwendet.
Kann XPath auch in HTML-Dokumenten verwendet werden?
Ja, da HTML-Dokumente als DOM-Baum strukturiert sind, kann XPath zur Navigation und Auswahl von Elementen in HTML verwendet werden, insbesondere in XML-konformen XHTML-Dokumenten.
Welche Versionen von XPath gibt es?
Die wichtigsten Versionen sind XPath 1.0 (1999), XPath 2.0 (2007), XPath 3.0 (2014) und XPath 3.1 (2017), wobei jede Version neue Funktionen und Verbesserungen bringt.
Wie werden Bedingungen in XPath formuliert?
Bedingungen werden in eckigen Klammern als Prädikate angegeben, z.B. book[price>30], um nur Bücher mit einem Preis größer 30 auszuwählen.
Ist XPath nur für XML geeignet?
XPath ist speziell für XML-Dokumente konzipiert und optimiert. Für andere Datenformate wie JSON gibt es eigene Abfragesprachen.
Welche Tools unterstützen XPath?
Viele XML-Editoren, Entwicklungsumgebungen, Webbrowser und Programmiersprachenbibliotheken unterstützen XPath zur XML-Verarbeitung.
Quellen & weiterführende Informationen
Quellenvorschläge und Nachweise zum Artikel. Bitte externe Inhalte eigenständig prüfen.
- 01XPath 3.1 Specification ↗
Offizielle Spezifikation von XPath 3.1
https://www.w3.org/TR/xpath-31/ - 02XML Path Language (XPath) Version 1.0 ↗
Erstveröffentlichung von XPath
https://www.w3.org/TR/xpath/ - 03XPath Tutorial ↗
Einsteigerfreundliche Einführung in XPath
https://www.w3schools.com/xml/xpath_intro.asp
Diese Seite in Zahlen
Alle Werte in diesem Abschnitt beziehen sich ausschließlich auf diesen Artikel.
Wissensplattform in Zahlen
Diese Werte beziehen sich auf die gesamte Plattform und alle veröffentlichten Artikel.