这些 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 模式。

简答:没有。

更长的答案:
在第一种情况下 RequestIDRequest 的属性,在第二种情况下 RequestID 是一个元素(其值还包含第一种情况下不存在的引号)。第一种情况下的 Details 元素有一个名为 Name 的属性,其中包含值 Bob。在第二种情况下,Details 元素有一个名为 Name 的子元素,其值为 Bob。这是两个不同的东西。

仅供参考:
在这两种情况下,元素和属性都在命名空间中(这里的前缀名为 ns5)。

最终结果:
这两种情况都需要不同的 XSD,并且等价。

会不会一样处理?

取决于谁或什么在处理它们。可以想象将元素和属性视为可互换的软件,就像将大小写视为可互换的软件一样。

但是在XML级别,文档肯定是不一样的