www.wikidata.de-de.nina.az
Die XML Path Language XPath ist eine vom W3 Konsortium entwickelte Abfragesprache um Teile eines XML Dokumentes zu adressieren und auszuwerten XPath dient als Grundlage einer Reihe weiterer Standards wie XSLT XPointer und XQuery XPath ist derzeit in der Version 3 1 vom 21 Marz 2017 standardisiert In Webbrowsern XSLT Prozessoren und anderer Software wird oft nur die XPath Version 1 0 aus dem Jahr 1999 unterstutzt vereinzelt auch die XPath Version 2 0 von 2007 Inhaltsverzeichnis 1 Prinzipien 2 Achsen 3 Knotentests 4 Pradikate 5 Beispiel 6 Siehe auch 7 Literatur 8 Weblinks 9 EinzelnachweisePrinzipien BearbeitenEin XPath Ausdruck adressiert Teile eines XML Dokuments das dabei als Baum betrachtet wird wobei einige Unterschiede zum klassischen Baum der Graphentheorie zu beachten sind Knoten nodes des Baumes sind der Dokumenten Knoten XML Elemente Attribute Textknoten Kommentare Namensraume und Verarbeitungsanweisungen Die Achsen preceding following preceding sibling und following sibling orientieren sich nicht allein an der Baumstruktur sondern auch an der Reihenfolge der Deklaration der Elemente im XML Dokument Linked Tree Ein XPath Ausdruck setzt sich aus einem oder mehreren Lokalisierungsschritten Location Steps zusammen Sie werden mit dem Zeichen getrennt Ein Lokalisierungsschritt axis node test predicate 1 predicate 2 besteht aus Achse axis und Knotentest node test optional gefolgt von einem oder mehreren Pradikaten predicates Beliebig viele XPath Ausdrucke lassen sich mit dem Pipe Zeichen mengenmassig vereinigen Es gibt stets verschiedene Moglichkeiten eine gesuchte Knotenmenge in XPath auszudrucken XPath operiert auf der logischen Dokumentenstruktur Das bedeutet beispielsweise dass Entitaten bereits geparst wurden oder dass auch eventuelle Standard Attribute und Knoten die ein Schema vorgibt im Baum enthalten sind Achsen BearbeitenDurch Angabe von Achsen wird ausgehend vom aktuellen Kontextknoten in der Baumstruktur des XML Dokuments navigiert Wird dabei vom Dokument Knoten der Wurzel des XML Dokuments ausgegangen wird dem XPath Ausdruck das Zeichen vorangestellt Achse adressierte Knoten Abkurzung Position im u a Baum ausgehend von Element D der Dokument Knoten am Anfang eines XPaths Dokument Knotenchild alle direkt untergeordneten Kindknoten wird weggelassen E Gparent der direkt ubergeordnete Elternknoten Bself der Kontextknoten selbst nutzlich fur zusatzliche Bedingungen Dancestor alle ubergeordneten Knoten B Aancestor or self alle ubergeordneten Knoten inklusive des Kontextknotens D B Adescendant alle untergeordneten Knoten E F Galle Knoten des Dokuments ausser dem Dokument Knoten A B C D E F G H I J K Ldescendant or self alle untergeordneten Knoten inklusive des Kontextknotens D E F Gfollowing im XML Dokument nachfolgend ohne untergeordnete Knoten des selektierten Knotens H I J K Lfollowing sibling wie following aber zugleich vom selben parent stammend H Ipreceding im XML Dokument vorangehend ohne ubergeordnete Knoten Cpreceding sibling wie preceding aber zugleich vom selben parent stammend Cattribute Attributknoten namespace Namensraumknoten die aus dem Attribut xmlns stammenDieser Baum visualisiert beispielhaft die Struktur eines XML Dokuments Dokument Knoten A B L C D H I E G J K F Die funf Achsen self ancestor descendant preceding und following bilden ausgehend von einem beliebigen Knoten den Dokumentbaum vollstandig und uberlappungsfrei ab 1 Knotentests BearbeitenKnotentests geschrieben i Achse i i Knotentest i schranken die Elementauswahl einer Achse ein Angabe eines Elementnamens wahlt alle entsprechenden Elemente Beispiel descendant or self Foo wahlt alle Elemente im Dokument die den Namen Foo haben Mit dem Zeichen wahlt man beliebige Elemente Beispiel descendant or self Foo child wahlt alle Elemente im Dokument die Kinder von Elementen mit dem Namen Foo sind Mit text comment und processing instruction lassen sich Knoten bestimmten Typs wahlen Pradikate Bearbeiten nbsp Dieser Abschnitt bedarf einer grundsatzlichen Uberarbeitung Naheres sollte auf der Diskussionsseite angegeben sein Bitte hilf mit ihn zu verbessern und entferne anschliessend diese Markierung Durch Angabe von Pradikaten kann das Ergebnis weiter eingeschrankt werden Pradikate werden in eckige Klammern eingeschlossen und konnen in beliebiger Zahl hintereinander geschrieben werden wobei die Reihenfolge wesentlich ist Pradikate konnen XPath Ausdrucke enthalten ausserdem kann eine Vielzahl von Funktionen und Operatoren verwendet werden Die sind zum Beispiel Zugriffsindex Zahlung beginnt bei 1 Relationszeichen and or lt gt lt gt Zeichenkettenfunktionen normalize space Entfernen von Leerzeichen am Anfang und Ende des Strings und Reduktion aufeinanderfolgender Leerzeichen auf eines substring Einen Teilstring selektieren substring before source splitter Einen Teilstring vor dem ersten Vorkommen des Trennzeichens selektieren substring after source splitter Einen Teilstring nach dem ersten Vorkommen des Trennzeichens selektieren string length Lange des Strings Numerische Operatoren div a href Modulo html class mw redirect title Modulo mod a Knotenmengen Funktionen count Anzahl der Knoten in einer Knotenmenge id Selektiert Elemente uber die DTD ID name Name des KnotensBeispiele child Buch Kapitel Alle Kapitel aller Bucher child Buch Kapitel 1 Alle ersten Kapitel aller Bucher child Buch count Seite lt 100 count Seite gt 10 liefert alle Knoten vom Typ Buch die mindestens 10 aber hochstens 100 Kindelemente vom Typ Seite haben das gleiche leistet Buch count Seite lt 100 and count Seite gt 10 substring before variable Selektiert den Teilstring vor dem ersten Doppelpunkt aus dem Wert der Variable mit dem Namen variableBeispiel BearbeitenGegeben sei folgendes XML Dokument lt xml version 1 0 encoding utf 8 standalone yes gt lt dok gt lt ein XML Dokument gt lt kap title Nettes Kapitel gt lt pa gt Ein Absatz lt pa gt lt pa gt Noch ein Absatz lt pa gt lt pa gt Und noch ein Absatz lt pa gt lt pa gt Nett oder lt pa gt lt kap gt lt kap title Zweites Kapitel gt lt pa gt Ein Absatz lt pa gt lt pa format bold gt Erste Zeile lt pa gt lt pa format bold gt Zweite Zeile lt pa gt lt pa format italic gt Dritte Zeile lt pa gt lt kap gt lt dok gt Beispiele fur XPath Ausdrucke Ausdruck selektiert dok das erste Element dok das ausserste Element unabhangig vom Namen jedes wohlgeformte XML Dokument hat genau ein ausserstes Element hier dok dok kap alle kap Elemente innerhalb aller dok Elemente dok kap 1 alle jeweils ersten kap Elemente innerhalb aller dok Elemente pa alle pa Elemente auf allen Ebenen kap title Nettes Kapitel pa alle Absatze der Kapitel mit Titel Nettes Kapitel kap pa 2 Jeweils das zweite pa Element in den beiden Kapiteln kap 2 pa format bold 2 Zweite Zeile mit dem Format bold im 2 Kapitel child alle Kindelemente des gegenwartigen Knotenschild pa alle pa Kinder des gegenwartigen Knotenschild text alle Textknoten des gegenwartigen Knotens der gegenwartige Knoten alle Kindelemente des gegenwartigen Knotens pa alle pa Kinder des gegenwartigen Knotenspa alle pa Kinder des gegenwartigen Knotensattribute alle Attribute des gegenwartigen Knotensnamespace alle Namespaces des gegenwartigen Knotens kap 1 pa 2 text Textinhalt des zweiten pa Elements im ersten kap Element also Noch ein Absatz XPath Visualisierer helfen die mitunter komplizierten XPath Abfragen auf konkrete XML Dateien anzuwenden Siehe auch BearbeitenDocument Object ModelLiteratur BearbeitenMichael Kay XPath 2 0 Programmer s Reference Wrox Press 2004 ISBN 0 7645 6910 4 englisch Margit Becher XML DTD XML Schema XPath XQuery XSLT XSL FO SAX DOM W3L Verlag Witten 2009 ISBN 978 3 937137 69 8 Weblinks Bearbeiten nbsp Wiktionary XPath Bedeutungserklarungen Wortherkunft Synonyme Ubersetzungen XML Path Language XPath Version 1 0 sowie deutsche Ubersetzung XML Path Language XPath Version 2 0 XML Path Language XPath Version 3 1 XQuery 1 0 and XPath 2 0 Functions and Operators XPath Tutorial auf deutsch XPath Tutorial von w3schools ZVON XPath Tutorial in deutscher Sprache FH Wedel XLink XPath XPointer HTMLWorld XPath XPath Achsen Diagramme XPath Visualizer stellt XPath Ausdrucke visuell auf Basis beliebiger XML Dateien dar umfangreiche XPath 2 0 Referenz mit BeispielenEinzelnachweise Bearbeiten w3 orgV DStandards des World Wide Web Consortiums W3C Empfehlungen ActivityPub ARIA Canonical XML CDF CSS DOM Geolocation API HTML HTML5 InkML ITS JSON LD MathML OWL P3P PLS PNG RDF RDF Schema RIF SCXML SISR SKOS SMIL SOAP SRGS SSML SVG SPARQL Timed Text Turtle VoiceXML WSDL XForms XHTML XHTML RDFa XInclude XLink XML XML Base XML Encryption XML Events XML Information Set XML Namespace XML Schema XML Signature XPath XPointer XProc XQuery XSL XSL FO XSLT Elemente nbsp Arbeitsentwurfeund Kandidaten CCXML CURIE SMIL Timesheets sXBL WICD XFrames XBL XHTML MathML SVG XMLHttpRequestAnmerkungen XAdES XFDL XHTML SMIL XUPRichtlinien Web Content Accessibility Guidelines Multimodal Interaction Activity Markup Validation ServiceInitiativen Web Accessibility Initiative Normdaten Sachbegriff GND 4613223 5 lobid OGND AKS Abgerufen von https de wikipedia org w index php title XPath amp oldid 232759272