XPath- knooppunten
XPath-terminologie
Knooppunten
In XPath zijn er zeven soorten knooppunten: element-, attribuut-, tekst-, naamruimte-, verwerkingsinstructie-, commentaar- en documentknooppunten.
XML-documenten worden behandeld als bomen van knooppunten. Het bovenste element van de boom wordt het wortelelement genoemd.
Bekijk het volgende XML-document:
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
Voorbeeld van knooppunten in het XML-document hierboven:
<bookstore> (root element node)
<author>J K. Rowling</author> (element node)
lang="en" (attribute node)
Atomaire waarden
Atoomwaarden zijn knooppunten zonder onderliggende of bovenliggende elementen.
Voorbeeld van atoomwaarden:
J K. Rowling
"en"
Artikelen
Items zijn atomaire waarden of knooppunten.
Relatie van knooppunten
Ouder
Elk element en attribuut heeft één ouder.
In het volgende voorbeeld; het boekelement is het bovenliggende element van de titel, auteur, jaar en prijs:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
Kinderen
Elementknooppunten kunnen nul, een of meer kinderen hebben.
In het volgende voorbeeld; de titel-, auteur-, jaar- en prijselementen zijn allemaal onderliggende elementen van het boekelement:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
Broers of zussen
Knooppunten die dezelfde ouder hebben.
In het volgende voorbeeld; de titel, auteur, jaar en prijselementen zijn allemaal broers en zussen:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
Voorvaders
De ouder van een knooppunt, de ouder van de ouder, enz.
In het volgende voorbeeld; de voorouders van het titelelement zijn het boekelement en het boekwinkelelement:
<bookstore>
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
afstammelingen
Kinderen van een knoop, kinderen van kinderen, enz.
In het volgende voorbeeld; afstammelingen van het boekwinkelelement zijn de elementen boek, titel, auteur, jaartal en prijs:
<bookstore>
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>