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 ‚ÄstKontextknoten
  • 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