这些 XML 文档在功能上是否相同?
Are these XML documents functionally the same?
这些在 XML 架构中是否表示相同的意思?他们会被同样处理吗?
<ns5:Request RequestID="12345">
<ns5:Details Name="Bob"/>
</ns5:Request>
<ns5:Request>
<ns5:RequestID>"12345"</ns5:RequestID>
<ns5:Details>
<ns5:Name>"Bob"</ns5:Name>
</ns5:Details>
</ns5:Request>
首先 XML 基于 属性 。第二个 XML 基于 元素 。所以他们需要完全不同的 XML 模式。
简答:没有。
更长的答案:
在第一种情况下 RequestID
是 Request
的属性,在第二种情况下 RequestID
是一个元素(其值还包含第一种情况下不存在的引号)。第一种情况下的 Details
元素有一个名为 Name
的属性,其中包含值 Bob
。在第二种情况下,Details
元素有一个名为 Name
的子元素,其值为 Bob
。这是两个不同的东西。
仅供参考:
在这两种情况下,元素和属性都在命名空间中(这里的前缀名为 ns5
)。
最终结果:
这两种情况都需要不同的 XSD,并且不等价。
会不会一样处理?
取决于谁或什么在处理它们。可以想象将元素和属性视为可互换的软件,就像将大小写视为可互换的软件一样。
但是在XML级别,文档肯定是不一样的
这些在 XML 架构中是否表示相同的意思?他们会被同样处理吗?
<ns5:Request RequestID="12345">
<ns5:Details Name="Bob"/>
</ns5:Request>
<ns5:Request>
<ns5:RequestID>"12345"</ns5:RequestID>
<ns5:Details>
<ns5:Name>"Bob"</ns5:Name>
</ns5:Details>
</ns5:Request>
首先 XML 基于 属性 。第二个 XML 基于 元素 。所以他们需要完全不同的 XML 模式。
简答:没有。
更长的答案:
在第一种情况下 RequestID
是 Request
的属性,在第二种情况下 RequestID
是一个元素(其值还包含第一种情况下不存在的引号)。第一种情况下的 Details
元素有一个名为 Name
的属性,其中包含值 Bob
。在第二种情况下,Details
元素有一个名为 Name
的子元素,其值为 Bob
。这是两个不同的东西。
仅供参考:
在这两种情况下,元素和属性都在命名空间中(这里的前缀名为 ns5
)。
最终结果:
这两种情况都需要不同的 XSD,并且不等价。
会不会一样处理?
取决于谁或什么在处理它们。可以想象将元素和属性视为可互换的软件,就像将大小写视为可互换的软件一样。
但是在XML级别,文档肯定是不一样的