XML中元素和节点的区别是什么?

我正在用Java处理XML,我在想;元素和节点的区别是什么?

247754 次浏览

节点是元素和属性(以及所有其他XML表示)的基类。

节点是DOM树的一部分,元素是特定类型的节点

< p >。 <foo> This is Text </foo> < / p >

你有一个foo元素,(它也是一个节点,因为元素继承自节点)和一个文本节点'This is Text',这是foo元素/节点的一个子节点

节点可以是许多不同类型的东西:一些文本、注释、元素、实体等。元素是一种特殊类型的节点。

元素和属性、文本等一样都是节点的一种类型。

Node对象是整个DOM的主要数据类型。

节点可以是元素节点、属性节点、文本节点或“节点类型”一章中解释的任何其他节点类型。

XML元素包括(包括)元素的开始标记到(包括)元素的结束标记。

正如在各种XML 规范中所描述的,element是由开始标记、结束标记和中间的内容组成的,或者交替地是一个空元素标记(没有内容或结束标记)。换句话说,这些都是元素:

<foo> stuff </foo>
<foo bar="baz"></foo>
<foo baz="qux" />

虽然您听到的“节点”的含义大致相同,但每个XML规范都没有准确的定义。它通常用来指dom之类的节点,这些节点可能与XML密切相关,或者使用XML表示。

元素是唯一一种可以有子节点和属性的节点

< p > 文档也有子节点BUT < br > 没有属性,没有文本,只有一个子元素

不同的W3C规范定义了不同的“Node”类型集。

因此,DOM规范<强> < / >强定义了以下类型的节点:

< p > < UL >
  • 文档——元素(最大值 一)、ProcessingInstruction 评论< /代码>,<代码> DocumentType
  • <代码> DocumentFragment ——__abc0, __abc1, 注释文本CDATASection实体引用 <李> DocumentType— 没有孩子
  • <代码> EntityReference ——__abc0, __abc1, 注释文本CDATASection实体引用 < li > __abc0—__abc0, __abc2, __abc3, __abc4, CDATASection < /代码>,<代码> EntityReference
  • Attr——文本实体引用
  • <代码> ProcessingInstruction ——没有孩子
  • 评论——no 孩子们
  • 文本——no 孩子们 <李> CDATASection— 没有孩子 < li > __abc0——__abc1, __abc2, 注释文本CDATASection实体引用
  • 符号——no 孩子李< / > < / UL > < / p >

    <强> XML Infoset < / >强 (XPath使用)有一个较小的节点集:

  • 文件信息项
  • 元素信息
  • 属性信息项
  • 加工指令信息
  • 未展开的实体参考信息项
  • 角色信息
  • 评论信息项目
  • 文档类型声明信息项
  • 未解析的实体信息项
  • 符号信息项
  • 命名空间信息项
  • XPath有以下节点类型:

    • 根节点
    • 元素节点
    • 文本节点
    • 属性节点
    • 命名空间节点
    • 处理指令节点
    • 注释节点

    你问题的答案 "元素和节点之间的区别是什么"是:

    < em > An element is a type of node. Many other types of nodes exist and serve different purposes. < / em >

    现在我知道,元素是节点之一

    这里所有的节点类型"http://www.w3schools.com/dom/dom_nodetype.asp"

    元素位于结束标记中的开始标记和结束标记之间

    文本节点是一个节点,而不是一个元素。

    xml文档是由嵌套元素组成的。元素开始于开始标记,结束于关闭标签。你可能在html中见过<body></body>。开始标签和结束标签之间的所有内容都是元素的内容。如果一个元素是由一个自关闭标记定义的(例如。<br/>)则其内容为空。

    开始标记也可以指定属性,例如。<p class="rant">。在这个例子中,属性的名字是'class',属性价值是'rant'。

    XML语言中没有“节点”这种东西阅读说明书,这个词没有出现。

    有些人非正式地使用“节点”这个词来表示元素,这是令人困惑的,因为一些解析器也赋予这个词一个技术意义(识别“文本节点”和“元素节点”)。确切的含义取决于解析器,所以除非说明使用的解析器,否则这个词的定义是不明确的。如果你指的是元素,就写'element'

    节点,元素是相同的。每个元素都是一个节点,但并不是每个节点都必须是一个元素。

    一个节点是定义,如下:

    文档中有效、完整结构的最小单位。

    或者为:

    树视图中的对象,用作容纳相关对象的容器。

    现在有很多不同类型的节点,比如元素节点,属性节点等等。

    XML Element是一个XML节点,但带有附加的元素,如属性。

    <a>Lorem Ipsum</a>  //This is a node
    
    
    <a id="sample">Lorem Ipsum</a>  //This is an element