Bei XPath (XML Path Language) handelt es sich um eine Abfragesprache, die zum Suchen nach
und Abrufen von Informationen verwendet wird, die in den Knoten eines XML-Dokuments enthalten sind. In Microsoft Office InfoPath 2003 entsprechen diese Knoten den Feldern oder Steuerelementen in einem Formular.
XPath-Abfragen werden als Ausdrücke formuliert. Mithilfe dieser Ausdrücke werden die
unterschiedlichen Teile eines XML-Dokuments angesprochen, Zeichenfolgen, Zahlen und
Boolesche Werte bearbeitet sowie eine Reihe von Knoten innerhalb des Dokuments zugeordnet.
XPath behandelt ein XML-Dokument als eine Struktur unterschiedlicher Knotentypen.
XPath-Ausdrücke identifizieren diese Knoten im XML-Dokument auf der Grundlage ihres Typs, Namens
und der Werte sowie der Beziehung eines Knotens zu anderen Knoten im
Dokument. Ein XPath-Ausdruck ergibt eines der folgenden Basisobjekte:
- Node set Eine Auflistung der mit dem Ausdruck
übereinstimmenden Knoten. Zu den Knotentypen zählen Stamm (Dokument), Element, Attribut, Namespace,
Verarbeitungsanweisung, Kommentar und Text.
- Boolean Der Wert true oder
false.
- Number Ein numerischer Wert.
- String Ein Textwert.
XPath-Ausdrücke werden mithilfe von Mustern geformt, die den Speicherort
eines Knotens oder Knotensatzes angeben und relativ zum Kontextknoten sind.
Bei dem Kontextknoten handelt es sich um den Abschnitt des XML-Dokuments, an dem Sie sich gerade befinden.
Er wird in XPath als Punkt dargestellt (.). XPath unterstützt darüber hinaus die
Verwendung von Mustern, die über absolute Speicherorte auf der Grundlage des Dokumentstammes verfügen.
Der Dokumentstamm wird in XPath als Schrägstrich (/) dargestellt.
Zusätzlich zu Speicherorten verfügt XPath über eine Vielzahl von Funktionen zum
Abrufen von Daten aus einem XML-Dokument. Es folgt eine Liste der
von XPath unterstützten Funktionstypen:
- Node Wird beim Arbeiten mit unterschiedlichen
Knotentypen verwendet. Beispiele für Funktionen vom Typ Node sind name,
node, processing-instruction,
comment und text.
- Positional Wird für Knoten verwendet, die zu einem Knotensatz
gehören. Mithilfe dieser Funktionen wird die Position der Knoten ermittelt oder zugeordnet.
Beispiele für Funktionen vom Typ Positional sind name,
id, last und count.
- Numeric Wird zum Zurückgeben numerischer Werte verwendet.
Beispiele für Funktionen vom Typ Numeric sind ceiling,
floor, number, round und
sum.
- Boolean Wird zum Auswerten von XPath-Ausdrücken zu
true oder false verwendet. Beispiele für Funktionen vom Typ
Boolean sind boolean, false, not und
true.
- String Wird zum Bearbeiten und Analysieren von
Text vom Typ string verwendet. Beispiele für Funktionen vom Typ String sind concat,
contains, starts-with, string,
substring und translate.