xpath

Xpath

Copyright © Shutterstock/Dragon Images

Was ist xpath?

XPath steht fĂŒr XML Path Language. Die Sprache verwendet eine eigene Syntax, um eine flexible Möglichkeit zu bieten, verschiedene Teile eines XML-Dokuments zu adressieren. XPath kann auch dazu verwendet werden, um adressierte Knoten in einem Dokument zu testen, um festzustellen, ob die Adressierung mit einem Muster ĂŒbereinstimmen oder nicht. Der Hauptzweck von XPath besteht jedoch darin, Teile eines XML-Dokuments zu adressieren.

Um eine Adressierung zu gewĂ€hrleisten, verfĂŒgt die Sprache ĂŒber grundlegende Möglichkeiten zur Manipulation von Strings, Zahlen und logischen Variablen. Dazu verwendet die XML Path Language eine einfache Nicht-XML-Syntax, auch um die Verwendung von XPath innerhalb von URIs und XML-Attributwerten zu erleichtern. Mit der XML Path Language kann die abstrakte und logische Struktur eines XML-Dokuments verĂ€ndert werden, nicht jedoch die OberflĂ€che. Der Name XPath leitet sich aus der Pfadnotation ab, wie sie in URLs zum Navigieren durch die hierarchische Struktur eines XML-Dokuments verwendet wird.

XML Path Language wird hauptsÀchlich in XSLT verwendet, kann aber auch als wesentlich leistungsstÀrkerer Weg durch das DOM eines beliebigen XML-Àhnlichen Sprachdokuments wie HTML und XUL verwendet werden.

Entworfen vom World Wide Web-Konsortium

Das World Wide Web Consortium (W3C) bezeichnet XML Path Language als eine Ausdruckssprache, die die XML-konforme Verarbeitung von Werten ermöglicht. Webentwickler haben dadurch die Möglichkeit, die Daten einer XML-Datei zu manipulieren. Die am hĂ€ufigsten ausgewĂ€hlten Teile sind Elemente und Attribute. Elemente sind Start- und End-Tags und die Teile (Text und andere Elemente) verschachtelt, und Attribute sind die “Name = ‘Text” -Konstruktion, die Sie in Elementstart-Tags sehen.

Die XML Path Language ist keine eigenstĂ€ndige Sprache. Das heißt, die Syntax ist so konzipiert, dass sie in einer anderen Sprache (genannt “Host-Sprache”) verwendet werden muss, um den Zugriff auf XML-Informationen zu unterstĂŒtzen. Das ist fĂŒr Webentwickler sehr interessant, denn dann kann der Host XML Path Language verwenden, um die wesentlichen Schritte der Suche und Datenkonvertierung durchzufĂŒhren, die erledigt werden mĂŒssen. Zur Erledigung dieser Aufgaben verwendet XPath keine XML-Syntax, keine Tags, spitze Klammern oder Verschachtelung. Die Sprache erkennt jedoch XML-Tag- und Attributnamen.

So funktioniert XPath

XML Path Language stellt ein XML-Dokument als Knoten mit einer Baumstruktur dar. Dabei verwendet die Sprache unterschiedliche Knoten wie zum Beispiel Attributknoten, Elementknoten oder Testknoten. Die Sprache ermöglicht es einen Zeichenfolgewert fĂŒr jeden Knoten zu errechnen. Bei den Namen der Knoten unterstĂŒtzt die XML Path Language vollstĂ€ndig den XML-Namespace. So wird der Name eines Knotens als Paar dargestellt, das aus einem lokalen Teil und einem Null-Namespace-URI besteht. Dies wird als erweiterter Name bezeichnet.
Das syntaktische Element der Syntax ist ein Ausdruck. Ein Ausdruck wird ausgewertet, um ein Objekt zu manipulieren. Dieses Objekt muss mindestens einen der folgenden Grundtypen aufweisen:

  • Node-set – Knotenmenge ohne Duplikate
  • Boolean – Wahr oder falsch
  • Number – Fließkommazahl
  • String – Zeichenfolge von UCS-Zeichen

Der Ausdruck wird in Bezug zu einem Kontext bewertet. XSLT und XPointer geben an, wie der Kontext fĂŒr XPath-AusdrĂŒcke bestimmt wird, die in XSLT bzw. XPointer verwendet werden. Der Kontext besteht aus:

  • Einen node – Kontextknoten
  • Ein Paar von positiven Zahlen ungleich Null – die Kontextposition und die KontextgrĂ¶ĂŸe
  • Eine Reihe von variablen Bindungen
  • Eine Function Library – eine Funktionsbibliothek
  • Eine Menge der Namespace-Deklarationen im Bereich fĂŒr den Ausdruck

Die Kontextposition ist immer kleiner oder gleich der KontextgrĂ¶ĂŸe.

Die Funktionsbibliothek besteht aus einer Zuordnung von Funktionsnamen zu Funktionen. Jede Funktion benötigt null oder mehr Argumente und gibt ein einzelnes Ergebnis zurĂŒck. FĂŒr eine Funktion in der Funktionsbibliothek gehören Argumente und Ergebnisse zu den oben genannten vier Grundtypen. Sowohl XSLT als auch XPointer erweitern die XML Path Language um zusĂ€tzliche Funktionen; einige dieser Funktionen arbeiten mit den vier Grundtypen; Andere arbeiten mit zusĂ€tzlichen Datentypen, die von XSLT und XPointer definiert werden.

Manipulation von XML-Dokumenten

Mit der XML Path Language kann ein XML-Dokument durchsucht werden. Um mit der Suche zu beginnen, muss die Sprache jedoch an einer bestimmten Position innerhalb des XML-Dokuments gestartet werden. XPath verfĂŒgt ĂŒber viele Funktionen zum Bearbeiten von XML-Daten. Dies spart dem Host auch eine Menge zusĂ€tzlicher Dinge, die auf Element- und Attributebene besser zu erledigen sind. XML hat viele verschiedene Arten von Daten wie Zahlen, Text, Daten, URLs usw., die hĂ€ufig verĂ€ndert werden mĂŒssen. In der Version 1.0 unterstĂŒtzt XPath Sequenzen von Informationsteilen, die zur Verarbeitung an den Host zurĂŒckgegeben werden können. Dies kann den Host-Code erheblich vereinfachen.

Die Version 1.0 der XML Path Language wurde von W3C im November 1999 entworfen, eine Überarbeitung erfolgte im Oktober 2016. XPath wird weiter entwickelt und immer leistungsfĂ€higer. Manchmal hat ein Programmierer die Wahl, eine Aufgabe im Host zu lösen oder es mit XPath zu tun. In vielen FĂ€llen ist XML Path Language die bessere Wahl.

Tipp

Wenn Sie noch Fragen bezĂŒglich eines Online Marketing Themas haben, dann können Sie gerne unseren Glossar besuchen und sich ĂŒber das Thema informieren, wo Sie noch speziell Fragen haben.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte