xml中node和element的區(qū)別是:Element是元素,是一個(gè)小范圍的定義,是數(shù)據(jù)的組成部分之一,必須是包含完整信息的結(jié)點(diǎn)才是元素;而Node是節(jié)點(diǎn),是相對(duì)于TREE數(shù)據(jù)結(jié)構(gòu)而言的,一個(gè)結(jié)點(diǎn)不一定是一個(gè)元素,一個(gè)元素一定是一個(gè)結(jié)點(diǎn)。
本教程操作環(huán)境:windows10系統(tǒng)、xml3.0版本、Dell G3電腦。
xml中node和element的區(qū)別是什么
元素(Element)和結(jié)點(diǎn)(Node)的區(qū)別,元素是一個(gè)小范圍的定義,必須是含有完整信息的結(jié)點(diǎn)才是一個(gè)元素,例如<p>…</p>。但是一個(gè)結(jié)點(diǎn)不一定是一個(gè)元素,而一個(gè)元素一定是一個(gè)結(jié)點(diǎn)。
什么是node:
NODE是相對(duì)TREE這種數(shù)據(jù)結(jié)構(gòu)而言的。TREE就是由NODE組成。這個(gè)部分你可以參考離散數(shù)學(xué)的樹(shù)圖。
什么是element
ELEMENT則是XML里的概念,<xxx>就是元素,是XML中的數(shù)據(jù)的組成部分之一。
素(Element)和結(jié)點(diǎn)(Node)的區(qū)別,元素是一個(gè)小范圍的定義,必須是含有完整信息的結(jié)點(diǎn)才是一個(gè)元素,例如<p>…</p>。但是一個(gè)結(jié)點(diǎn)不一定是一個(gè)元素,而一個(gè)元素一定是一個(gè)結(jié)點(diǎn)。
對(duì)Element和Node有困惑是因?yàn)閷?duì)xml整個(gè)結(jié)構(gòu)不了解,以下作為一個(gè)簡(jiǎn)要概述:
從上圖可以看出,一個(gè)xml文檔由元素節(jié)點(diǎn),屬性節(jié)點(diǎn),文本節(jié)點(diǎn)構(gòu)成,其中bookstore被稱為文檔元素或根元素,也是一個(gè)元素節(jié)點(diǎn)
XML DOM是這樣規(guī)定一個(gè)節(jié)點(diǎn)的
-
XML 文檔中的每個(gè)成分都是一個(gè)節(jié)點(diǎn)。
-
整個(gè)文檔是一個(gè)文檔節(jié)點(diǎn) 即Document節(jié)點(diǎn)。在java中Document接口是繼承于Node接口,表示整個(gè)XML 文檔
-
每個(gè) XML 標(biāo)簽是一個(gè)元素節(jié)點(diǎn) 即ELEMENT節(jié)點(diǎn)。在Java中Element接口繼承于Node接口 表示XML 文檔中的一個(gè)元素
-
包含在 XML 元素中的文本是文本節(jié)點(diǎn)即Text節(jié)點(diǎn)。在java中Text接口繼承于CharacterData接口,而CharacterData繼承于Node接口,表示Element 或 Attr 的文本內(nèi)容
-
每一個(gè) XML 屬性是一個(gè)屬性節(jié)點(diǎn) 即Attr節(jié)點(diǎn)。在java中Attr接口繼承與Node接口。 注釋屬于注釋節(jié)點(diǎn)即Comment節(jié)點(diǎn)。在java中Comment接口繼承于CharacterData接口,而CharacterData繼承于Node接口
所以其實(shí)xml文檔中每一個(gè)對(duì)象都是一個(gè)節(jié)點(diǎn)。元素一定是節(jié)點(diǎn),而節(jié)點(diǎn)不一定是元素。
推薦學(xué)習(xí):《nodejs視頻教程》