參考文獻:http://www.w3school.com.cn/xmldom/dom_node.asp
XML中的Element和Node的區(qū)別,也就是我們所說的元素和節(jié)點的區(qū)別.
元素一定是節(jié)點,叫做元素節(jié)點,但是節(jié)點不一定是元素,因為節(jié)點分為很多種具體的節(jié)點:
- 元素節(jié)點
- 屬性節(jié)點
- 文本節(jié)點
- 命名空間節(jié)點
- 文檔節(jié)點(樹的根節(jié)點)
元素節(jié)點具有一個范圍.
通常由<element_name>. . . . . . </element_name>括起來(包括自身)的內(nèi)容成為一個元素. 元素包含有相對完整的信息.
節(jié)點是相對于是節(jié)點樹中的概念, 在節(jié)點樹中,父節(jié)點和子節(jié)點都是元素節(jié)點. 在同一個父節(jié)點下的相對獨立的元素節(jié)點是同級元素節(jié)點,也就是同級節(jié)點.
<a>
<b> </b>
<b> </b>
</a>
DOM將文檔中所有的內(nèi)容都看作是節(jié)點,所以在XML文檔中節(jié)點的概念大于元素的概念.
DOM在解析文檔的時候按整個文檔的結構生成一棵樹,全部保存在內(nèi)存
元素是可以有屬性和子節(jié)點的節(jié)點.
元素是從節(jié)點繼承的,節(jié)點對象可以轉(zhuǎn)換成元素:
Element e = (Element) node;
這就可以解釋為什么Qt5中元素對象可以直接調(diào)用節(jié)點對象的方法,從而返回節(jié)點對象.
對于一個XML文件來說,根元素節(jié)點包含了所有其他的子元素節(jié)點,屬性節(jié)點和文本節(jié)點(除了第一行的XML說明外)
父節(jié)點和子節(jié)點都是元素,一個元素包含另外一個元素,則說明這個元素是另外一個元素的父節(jié)點,而另外一個被包含的元素則是包含它的元素的子節(jié)點.
在XML中,我們可以創(chuàng)建空元素,即empty element.
<element></element>
or
<element/>