XML DOM ノード
DOMにおいて、XML文書のすべてはノードです。
DOM ノード
DOMに従えば、XML文書のすべてはノードです。
DOM 風に言えば:
- 文書全体は文書ノードです
- 全てのXML要素は要素ノードです
- XML要素内のテキストはテキストノードです
- 全ての属性は属性ノードです
- コメントはコメントノードです
DOM 例
次のXMLファイル (books.xml)を見てください:
<?xml version="1.0" encoding="ISO-8859-1"?>
<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>は、4つの <book> ノードを持っています。
最初の<book> ノードは、<title>、<author>、<year>、および<price> の4ノードを持っています。
各ノードには、それぞれ1つのテキストノード"Everyday Italian"、 "Giada
De Laurentiis"、 "2005"、及び "30.00"が含まれています。
テキストはいつもテキストノードに格納されます
DOM処理における共通した誤りは、要素ノードがテキストを含むものと考えてしまうことです。
しかし、要素ノードのテキストはテキストノードに格納されます。
この例で: <year>2005</year>, <year>は値"2005"を持つテキストノードを持っています。
"2005" は、<year> 要素の値ではありません !
|