XML DOM 節點
在 DOM 中,XML 文檔中的每個成分都是一個節點。
DOM 節點
根據 DOM,XML 文檔中的每個成分都是一個節點。
DOM 是這樣規定的:
- 整個文檔是一個文檔節點
- 每個 XML 元素是一個元素節點
- 包含在 XML 元素中的文本是文本節點
- 每一個 XML 屬性是一個屬性節點
- 注釋是注釋節點
DOM 實例
請看下麵的 XML 檔(books.xml):
books.xml 檔代碼:
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="children">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</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>
<book category="web" cover="paperback">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
在上面的 XML 中,根節點是 <bookstore>。文檔中的所有其他節點都被包含在 <bookstore> 中。
根節點 <bookstore> 有四個 <book> 節點。
第一個 <book> 節點有四個節點:<title>、<author>、<year> 和 <price>,其中每個節點都包含一個文本節點,"Everyday Italian"、"Giada De Laurentiis"、"2005" 和 "30.00"。
文本總是存儲在文本節點中
在 DOM 處理中一個普遍的錯誤是,認為元素節點包含文本。
不過,元素節點的文本是存儲在文本節點中的。
在這個實例中:<year>2005</year>,元素節點 <year>,擁有一個值為 "2005" 的文本節點。
"2005" 不是 <year> 元素的值!