Home
Über mich
Veröffentlichungen

XML XML-Schema XPath XSL-T XSL-FO XQuery XProc SVG

XPath

XPath

XPath

➪ Die XML Path Language ist eine Empfehlung des W3C, um XML-Dokumente gezielt auswerten zu können. XPath-Statements sind in der Auswertung von XML-Dokumenten von zentraler Bedeutung. Ihr effizienter Einsatz erlaubt eine gezielte Adressierung komplexer Nodelisten wie auch Singlenodes bzw. Attribute und damit deren Auswertung.

XPath wird vielfach genutzt: nicht nur in XML-Technologien wie XQuery, XSLT und XPointer, sondern ebenso bei der Auswertung von XML-Dokumenten mit Java, JavaScript, C#.NET, VB.NET, VB 6.0 u.v.a.m.

Grundvoraussetzung für die Arbeit mit XPath ist ein klares Verständnis der XML-Input-Dokumentstruktur, die durch Validierungswerkzeuge wie DTD oder XML-Schema überprüft werden kann.

Dabei ist die Aktualität der XPath-Statements von entscheidender Bedeutung. Hat sich die Dokumentstruktur des XML-Inputs geändert, ohne dass im Gegenzug auch die XPath-Statements angepasst wurden, so kann es passieren, dass Informationen zwar zur Verfügung stehen, aber nicht ausgewertet werden. Es droht Informationsverlust.

Hier liegt auch der Grund für die Empfehlung, den XML-Input zu validieren. Es geht weniger um Überprüfung, ob ein Datenlieferant sich ggf. nicht an Absprachen gehalten hat, sondern um automatisierte Hinweise, dass die Annahmen, auf denen die aktuelle Programmierlogik beruht, nicht mehr zutreffen, und die Logik daher überprüft werden sollte.

Zahlreiche Programme, Webbrowser und XSL-Prozessoren unterstützen lediglich die XPath-Version 1.0 (Januar 2007). Die aktuelle XPath-3.0-Version stammt vom 08. April 2014.

wg / 2. Juni 2020



Fragen? Anmerkungen? Tipps?

Bitte nehmen Sie Kontakt zu mir auf.




XPath 3.1: Array

XPath: array:size

XPath: array:get

XPath: array:append

XPath: array:subarray

XPath: array:remove

XPath: array:insert-before

XPath: array:head

XPath: array:tail

XPath: array:reverse

XPath: array:for-each

XPath: array:for-each-pair

XPath: array:join

XPath: array:filter

XPath: array:sort

System-Informationen

available-environment-variables

system-properties

XPath: Pfade, Prädikate

XPath-Operatoren

Nummerische Operatoren

Logische Operatoren

Boolesche Operatoren

||

Bang!

=>

XPath-Achsen

self::*

child::*

descendant::*

descendant-or-self::*

parent::*

ancestor::*

ancestor-or-self::*

preceding::*

preceding-sibling::*

following::*

following-sibling::*

Positionsbestimmung bei following-sibling

attribute::*

namespace::*

Automatische Generierung des XPath-Statements

Verschachtelungstiefe

XPath-Funktionen

Zahlenfunktionen

abs

math:acos

math:asin

math:atan

avg()

math:cos

math:exp

math:exp10

format-integer

format-number

math:log

math:log10

max()

min()

number()

math:pi

math:pow

math:sin

math:sqrt

sum()

math:tan

to

Statistikwerte als Map berechnen

Minimale, maximale und durchschnittliche Spannweiten

Zahlen-Rundungsfunktionen

ceiling

floor

round

round-half-to-even

Zeit ist Geld

Toll, ein Kalender

Stringfunktionen

XPath: analyze-string

XSL 2.0: xsl:analyze-string

xsl:matching-substring

XSL 2.0: xsl:matching-substring

xsl:non-matching-substring

XSL 2.0: xsl:non-matching-substring

XPath: Codepoints

XPath: compare

XPath: concat

XPath: contains

XPath ends-with

XPath: lower-case

XPath: matches

XPath: normalize-space

Reguläre Ausdrücke

Reguläre Ausdrücke in C#.NET

XPath: replace

XPath: starts-with

XPath: string oder xs:string?

XPath: string-join

XPath: substring, string-length

XPath: substring-after

XPath: substring-before

XPath: tokenize

XPath: translate

XPath: upper-case

XPath: Sequenz-Funktionen

XPath: collection

XPath: copy-of

XPath: count()

XPath: data

XPath: distinct-values

Gruppieren in XPath 1.0/XSL 1.0

XPath: exactly-one

XPath Sequenzen: concat, union, except, intersect

XPath: deep-equal

XPath: Der Vergleich von leeren Sequenzen mit leeren Strings

XPath: empty

XPath: exists

XPath: filter

XPath: for-each

XPath: for-each-pair

XPath: fold-left

XPath: fold-right

XPath: function

XPath: generate-id()

head, tail, snapshot

XPath: index-of(), position(), last()

XPath: innermost, outermost

XPath: in-scope-prefixes

XPath: insert-before

JSON

XPath: json-to-xml, xml-to-json

XPath: fn:json-doc

XPath: fn:parse-json

XPath 3.1: Map, xsl:map

XPath: map:size

XPath: map:keys

XPath: map:contains

XPath: map:find

XPath: map:put

XPath: map:remove

XPath: map:get

XPath: map:entry

XPath: map:merge

XPath: map:for-each

random-number-generator

Weitere Beispiele

xsl:map

xsl:map-entry

XPath: one-or-more

XPath: parse-xml, parse-xml-fragment

XPath: path

XPath: remove

XPath: reverse

XPath: serialize

XPath: subsequence

XPath: transform

XPath: unparsed-text

XPath: unparsed-text-lines

XPath: zero-or-one

XSL-T



Vielen Dank für Ihr Interesse an meiner Arbeit.



V.i.S.d.P.: Wilfried Grupe * Klus 6 * 37643 Negenborn

☎ 0151. 750 360 61 * eMail: info10@wilfried-grupe.de

www.wilfried-grupe.de/XPath.html