XML DOM-Knoten

Jeder Bestandteil eines XML-Dokuments ist ein Node.

Node

Laut DOM ist jeder Bestandteil eines XML-Dokuments einNode.

DOM ist so definiert:

  • Das gesamte Dokument ist ein Dokument-Node
  • Jeder XML-Tag ist ein Element-Node
  • Der Text, der in einem XML-Element enthalten ist, ist ein Text-Node
  • Jede XML-Attribut ist ein Attribut-Node
  • Kommentare gehören zu den Kommentar-Nodes

DOM-Instanz

Bitte sehen Sie das folgende XML-Dokument (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>

In dem obigen XML ist der Wurzelknoten <bookstore>. Alle anderen Knoten im Dokument sind in <bookstore> enthalten.

Der Wurzelknoten <bookstore> hat vier <book>-Knoten.

Der erste <book>-Knoten hat vier Knoten: <title>, <author>, <year> und <price>, wobei jeder Knoten einen Textknoten enthält, "Harry Potter", "J K. Rowling", "2005" und "29.99".

Der Text wird immer in Textknoten gespeichert

Ein häufiger Fehler im Umgang mit dem DOM ist die Annahme, dass der Text im Elementknoten gespeichert wird.

Allerdings wird der Text des Elements in einem Textknoten gespeichert.

In diesem Beispiel:<year>2005</year>, das Element <year> hat einen Textknoten mit dem Wert "2005".

"2005" Nicht !Wert des <year>-Elements