天天看點

XML DOM 節點

在 DOM 中,XML 文檔中的每個成分都是一個節點。

根據 DOM,XML 文檔中的每個成分都是一個<b>節點</b>。

DOM 是這樣規定的:

整個文檔是一個文檔節點

每個 XML 元素是一個元素節點

包含在 XML 元素中的文本是文本節點

每一個 XML 屬性是一個屬性節點

注釋是注釋節點

請看下面的 XML 檔案(books.xml):

&lt;?xml version="1.0" encoding="UTF-8"?&gt;

&lt;bookstore&gt;

&lt;book category="cooking"&gt;

&lt;title lang="en"&gt;Everyday Italian&lt;/title&gt;

&lt;author&gt;Giada De Laurentiis&lt;/author&gt;

&lt;year&gt;2005&lt;/year&gt;

&lt;price&gt;30.00&lt;/price&gt;

&lt;/book&gt;

&lt;book category="children"&gt;

&lt;title lang="en"&gt;Harry Potter&lt;/title&gt;

&lt;author&gt;J K. Rowling&lt;/author&gt;

&lt;price&gt;29.99&lt;/price&gt;

&lt;book category="web"&gt;

&lt;title lang="en"&gt;XQuery Kick Start&lt;/title&gt;

&lt;author&gt;James McGovern&lt;/author&gt;

&lt;author&gt;Per Bothner&lt;/author&gt;

&lt;author&gt;Kurt Cagle&lt;/author&gt;

&lt;author&gt;James Linn&lt;/author&gt;

&lt;author&gt;Vaidyanathan Nagarajan&lt;/author&gt;

&lt;year&gt;2003&lt;/year&gt;

&lt;price&gt;49.99&lt;/price&gt;

&lt;book category="web" cover="paperback"&gt;

&lt;title lang="en"&gt;Learning XML&lt;/title&gt;

&lt;author&gt;Erik T. Ray&lt;/author&gt;

&lt;price&gt;39.95&lt;/price&gt;

&lt;/bookstore&gt;

在上面的 XML 中,根節點是 &lt;bookstore&gt;。文檔中的所有其他節點都被包含在 &lt;bookstore&gt; 中。

根節點 &lt;bookstore&gt; 有四個 &lt;book&gt; 節點。

第一個 &lt;book&gt; 節點有四個節點:&lt;title&gt;、&lt;author&gt;、&lt;year&gt; 和 &lt;price&gt;,其中每個節點都包含一個文本節點,"Everyday Italian"、"Giada

De Laurentiis"、"2005" 和 "30.00"。

在 DOM 進行中一個普遍的錯誤是,認為元素節點包含文本。

不過,元素節點的文本是存儲在文本節點中的。

在這個執行個體中:<b>&lt;year&gt;2005&lt;/year&gt;</b>,元素節點 &lt;year&gt;,擁有一個值為 "2005" 的文本節點。

"2005" <b>不是</b> &lt;year&gt; 元素的值!