Terminologia XQuery

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

Terminologia XQuery

Nodo

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

Vediamo il documento XML seguente:

<?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 chiamato valore atomico, Atomic value)

I valori di base sono nodi senza padre o figli.

Esempi di valori di base:

J K. Rowling
"en"

Progetto

Un progetto è un valore di base o un nodo.

Relazioni di nodo

Padre

Ogni elemento e attributo ha un padre.

Nell'esempio seguente, l'elemento book è il padre 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 elemento nodo può avere zero, uno o più figli.

Nell'esempio seguente, 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 che condividono lo stesso padre.

Nell'esempio seguente, 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>

Progenitore

Il padre di un nodo, il padre del padre, ecc.

Nell'esempio seguente, i progenitori 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

Il figlio di un nodo, il figlio del figlio, ecc.

Nell'esempio seguente, 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>