节点列表 vs 节点 vs 元素
Nodelist vs Node vs Element
如果您有这样的 XML 文件
<Users>
<student>
<firstname> Chris </firstname>
<lastname> Smith </lastname>
<address> 1313 Mockingbird Lane </address>
<phone> 555-1313 </phone>
</student>
<student>
<firstname> John </firstname>
<lastname> Doe </lastname>
<address> 1526 Bluebird Way </address>
<phone> 555-8324 </phone>
</student>
</Users>
那么会...
- 用户是否被视为节点列表?
- 学生被视为元素或节点列表? student 标签包含更多标签,但它也是 Users 标签的子标签。那么这是一个元素还是节点列表?
- 值“John”是一个节点?
如果我弄错了其中一个,你能告诉我如何找出节点、元素和节点列表之间的区别吗?
您混合了一些松散定义的术语,在 XML.
的上下文中将一般概念与特定含义区分开很重要
在 XML 中,“元素”是 <tag>...</tag>
并且该定义可以递归地应用于嵌套标签(元素可以包含元素)。
Node
和NodeList
是一般概念。 Node
大致是一个具有某种内部状态的独特对象。名称 Node
暗示对象可以是或者是某个集合的成员,通常但不总是列表。
A NodeList
只是节点的线性列表。还有其他类型的集合可以包含节点,例如 Map
或 Graph
或 Tree
.
在你的例子中:
Users
是一个 XML 元素。它在概念上也是 XML 树中的一个节点。它包含student
个元素所以它也是一个集合,并且由于元素是线性排列的所以它也是一个节点列表。
一个student
是一个XML元素,在概念上它也是学生列表中的一个node
。
firstname
标签(以及其中的所有内容)也是一个 XML 元素和 XML 节点树中的一个节点。
值 John
不是 XML 定义的元素。它是 text node
包含在 firstname
.
中
如果您有这样的 XML 文件
<Users>
<student>
<firstname> Chris </firstname>
<lastname> Smith </lastname>
<address> 1313 Mockingbird Lane </address>
<phone> 555-1313 </phone>
</student>
<student>
<firstname> John </firstname>
<lastname> Doe </lastname>
<address> 1526 Bluebird Way </address>
<phone> 555-8324 </phone>
</student>
</Users>
那么会...
- 用户是否被视为节点列表?
- 学生被视为元素或节点列表? student 标签包含更多标签,但它也是 Users 标签的子标签。那么这是一个元素还是节点列表?
- 值“John”是一个节点?
如果我弄错了其中一个,你能告诉我如何找出节点、元素和节点列表之间的区别吗?
您混合了一些松散定义的术语,在 XML.
的上下文中将一般概念与特定含义区分开很重要在 XML 中,“元素”是 <tag>...</tag>
并且该定义可以递归地应用于嵌套标签(元素可以包含元素)。
Node
和NodeList
是一般概念。 Node
大致是一个具有某种内部状态的独特对象。名称 Node
暗示对象可以是或者是某个集合的成员,通常但不总是列表。
A NodeList
只是节点的线性列表。还有其他类型的集合可以包含节点,例如 Map
或 Graph
或 Tree
.
在你的例子中:
Users
是一个 XML 元素。它在概念上也是 XML 树中的一个节点。它包含student
个元素所以它也是一个集合,并且由于元素是线性排列的所以它也是一个节点列表。
一个student
是一个XML元素,在概念上它也是学生列表中的一个node
。
firstname
标签(以及其中的所有内容)也是一个 XML 元素和 XML 节点树中的一个节点。
值 John
不是 XML 定义的元素。它是 text node
包含在 firstname
.