Nodo XML DOM

Ogni componente di un documento XML è un nodo.

Nodo

Secondo DOM, ogni componente di un documento XML è unNodo.

DOM è così definito:

  • L'intero documento è un nodo di documento
  • Ogni etichetta XML è un nodo di elemento
  • Il testo contenuto in un elemento XML è un nodo di testo
  • Ogni attributo XML è un nodo di attributo
  • I commenti sono nodi di commento

Esempio DOM

Vediamo il seguente file XML (books.xml):

<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
<book category="children">
  <title lang="en">Harry Potter</title> 
  <author>J K. Rowling</author> 
  <year>2005</year> 
  <price>29.99</price> 
</book>
<book category="cooking">
  <title lang="en">Everyday Italian</title> 
  <author>Giada De Laurentiis</author> 
  <year>2005</year> 
  <price>30.00</price> 
</book>
<book category="web">
  <title lang="en">Learning XML</title> 
  <author>Erik T. Ray</author> 
  <year>2003</year> 
  <price>39.95</price> 
</book>
<book category="web">
  <title lang="en">XQuery Kick Start</title> 
  <author>James McGovern</author> 
  <author>Per Bothner</author> 
  <author>Kurt Cagle</author> 
  <author>James Linn</author> 
  <author>Vaidyanathan Nagarajan</author> 
  <year>2003</year> 
  <price>49.99</price> 
</book>
</bookstore>

Nell'XML sopra, il nodo radice è <bookstore>. Tutti gli altri nodi nel documento sono inclusi nel <bookstore>.

Il nodo radice <bookstore> ha quattro nodi <book>.

Il primo nodo <book> ha quattro nodi: <title>, <author>, <year> e <price>, ognuno dei quali contiene un nodo di testo, "Harry Potter", "J K. Rowling", "2005" e "29.99".

Il testo è sempre memorizzato nel nodo di testo

Un errore comune nel trattamento DOM è pensare che l'elemento contenga il testo.

Ma, il testo dell'elemento è memorizzato nel nodo di testo.

In questo esempio:<year>2005</year>, l'elemento nodo <year> ha un nodo di testo con valore "2005".

"2005" Non è Valore dell'elemento <year>!