XPath: Grundlagen
Um Vergleiche, Rechnungen oder andere mathematische oder logische Schlußfolgerungen ziehen zu können sind Variablen, Operatoren und Funktionen notwendig. XPath versteht sich hierbei allerdings nicht als Programmiersprache - die einzelnen Hilfsmittel dienen vielmehr dazu einen Knoten genauer beschrieben zu können.Variablen
XPath selbst definiert keine Variablen, jedoch können die in XSLT definierten Variablen verwendet werden. Den Wert einer Variablen erhält man indem man ein Dollarzeichen ($
) vor den Variablennamen setzt. Beispiel:
<xsl:variable name="meineVariable"> mein Wert </xsl:variable>
$meineVariable
besitzt demzufolge den Wert " mein Wert "
.
Funktionen
Ebenso wie XSLT definiert auch XPath einige Funktionen die zur Bestimmung von Knoten genutzt werden können. Eine Funktion wird immer durch ihren Namen sowie die anschließenden Klammern ausgedrückt. Innerhalb der Klammern können bestimmten Funktionen Parameter (oder auch Argumente genannt) übergeben werden. Die einzelnen Funktionen werden in einem späteren Abschnitt erläutert.Operatoren
XPath definiert die folgenden Operatoren:Operator | Beschreibung |
---|---|
( ) | Klammern umschließen einen logischen Zusammenhang. Kann z.B. bei mathematischen Rechnungen verwendet werden aber auch bei logischen Verknüpfungen usw. |
| | ODER bei Knotenmenge. Gibt aus zwei Mengen A und B die Menge der Knoten aus die in A oder B enthalten sind. |
/ | Verbindet einen Ausdruck und einen relativen Pfad. |
or | Verknüpft zwei logische Ausdrücke mit ODER |
and | Verknüpft zwei logische Ausdrücke mit UND |
= | Prüft zwei Ausdrücke auf Gleichheit |
!= | Prüft zwei Ausdrücke auf Ungleichheit |
< | Prüft ob der erste Ausdruck kleiner ist als der zweite |
<= | Prüft ob der erste Ausdruck kleiner oder gleich dem zweiten ist |
> | Prüft ob der erste Ausdruck größer ist als der zweite |
>= | Prüft ob der erste Ausdruck größer oder gleich dem zweiten ist |
- | Subtrahiert zwei Zahlen bzw. ergibt das negativ (-3, -2, usw.) *1 |
+ | Addiert zwei Zahlen |
* | Multipliziert zwei Zahlen. |
div | Dividiert eine Zahl von einer anderen *2 |
mod | Moduliert eine Zahl von einer anderen (gibt den Rest einer Division) |
abc-def
und abc - def
.*2 Da der Schrägstrich schon als Trennzeichen verwendet wird, muss zur Division div verwendet werden.
Ein Vergleich liefert nur dann wahr/falsch wenn auch beide Ausdrücke gleich/ungleich sind. Wird eine Knotenmenge mit einem String (Text) verglichen, so ist der gesamte Ausdruck wahr, wenn mindestens ein Knoten der Menge einen Textwert gleich dem String hat. Werden zwei Knotenmengen verglichen, so ist der gesamte Ausdruck dann wahr, wenn mindestens ein Knoten des ersten Ausdrucks auch Konten des zweiten Ausdrucks ist. Um zu prüfen ob zwei Knotenmengen übereinstimmend sind muss daher geprüft werden ob kein Knoten aus
A
in B
enthalten ist und das Ergebnis dann verneint werden: not($A = $B)
.
Du arbeitest in einer Agentur oder als Freelancer?
Dann wirf doch mal einen Blick auf unsere Software FeatValue.
Weiterlesen: ⯈ Pfade bestimmen
Über uns

Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project