2018-01-12:理解XML文檔的相關概念

參考文獻: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/>

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容