XML属性和元素是否可以交换?

问题描述 投票:0回答:1

搜索后,我知道属性和元素之间的语法差异。

我不是问我是否应该使用哪个,但是如果它们被例如服务器解释为相同的话。

在w3schools.com上,它显示以下示例“ 包含完全相同的信息”;]

<!-- document A using an attribute -->
<note date="2008-01-10">
    <to>Tove</to>
    <from>Jani</from>
</note>


<!-- document B using an element -->
<note>
    <date>2008-01-10</date>
    <to>Tove</to>
    <from>Jani</from>
</note>

我的问题是,“这两个文档应该互换吗?”

即,服务器期望使用文档格式A,但是接收到文档B。服务器将被“强制”按照xml标准解析和接受文档B吗?

xml parsing attributes element standards
1个回答
0
投票

否,这两个文档不可互换。服务器和客户端之间必须达成共识的使用中的XML模式定义了每种元素类型的可能的属性和可能的​​子元素。这是两个不同的集合。

的确,对于不具有内部结构的数据,可以使用属性或子元素来传输信息。但这是架构开发人员需要做出的决定。做出此决定时需要考虑的重要事项是基准面是否具有内部结构。最复杂的属性可以是令牌列表。 (或者是微语法,例如您的日期。)另一方面,子元素可以任意丰富的结构。因此它们只在包含的信息不是很复杂的范围内“包含相同的信息”。

© www.soinside.com 2019 - 2024. All rights reserved.