Nodi XPath

In XPath ci sono sette tipi di nodi: elemento, attributo, testo, namespace, istruzione di processo, commento e nodo documento (o nodo radice).

Terminologia XPath

Nodo (Node)

In XPath ci sono sette tipi di nodi: elemento, attributo, testo, namespace, istruzione di processo, commento e nodo documento (o nodo radice). Il documento XML viene trattato come un albero di nodi. La radice dell'albero è chiamata nodo documento o nodo radice.

Guarda il seguente documento XML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
<book>
  <title lang="en">Harry Potter</title>
  <author>J K. Rowling</author> 
  <year>2005</year>
  <price>29.99</price>
</book>
</bookstore>

Esempi di nodi nel documento XML sopra:

<bookstore> (nodo documento)
<author>J K. Rowling</author> (nodo elemento)
lang="en" (nodo attributo) 

Valore di base (o valore atomico, Atomic value)

I valori di base sono nodi senza padre o figli.

Esempi di valori di base:

J K. Rowling
"en"

Oggetto

Un oggetto è un valore di base o un nodo.

Relazioni di nodo

Genitore

Ogni elemento e attributo ha un genitore.

Negli esempi seguenti, l'elemento book è il genitore degli elementi title, author, year e price:

<book>
  <title>Harry Potter</title>
  <author>J K. Rowling</author>
  <year>2005</year>
  <price>29.99</price>
</book>

Figlio

Un nodo elemento può avere zero, uno o più figli.

Negli esempi seguenti, gli elementi title, author, year e price sono figli dell'elemento book:

<book>
  <title>Harry Potter</title>
  <author>J K. Rowling</author>
  <year>2005</year>
  <price>29.99</price>
</book>

Fratello

Nodi con lo stesso padre

Negli esempi seguenti, gli elementi title, author, year e price sono fratelli:

<book>
  <title>Harry Potter</title>
  <author>J K. Rowling</author>
  <year>2005</year>
  <price>29.99</price>
</book>

Genitore

Padre, padre del padre, ecc.

Negli esempi seguenti, i genitori dell'elemento title sono l'elemento book e l'elemento bookstore:

<bookstore>
<book>
  <title>Harry Potter</title>
  <author>J K. Rowling</author>
  <year>2005</year>
  <price>29.99</price>
</book>
</bookstore>

Discendente

Figlio, figlio del figlio, ecc.

Negli esempi seguenti, i discendenti di bookstore sono gli elementi book, title, author, year e price:

<bookstore>
<book>
  <title>Harry Potter</title>
  <author>J K. Rowling</author>
  <year>2005</year>
  <price>29.99</price>
</book>
</bookstore>