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


当前回答

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

<a>Lorem Ipsum</a>  //This is a node

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

其他回答

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

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

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

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

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

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

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

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

节点定义为:

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

或者为:

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

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

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