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


当前回答

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

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

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

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

其他回答

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

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

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

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

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

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

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

如。 <foo>这是文本</foo>

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

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

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