XML 中的元素和属性名称可以相同吗?

Can element and attribute names be the same in XML?

<root>
    <x x="y" />
</root>

有效XML?

是的,元素和属性可以同名,但要注意以下几点:

  • 这并不常见,因为它可能会造成混淆,而且很少能准确地模拟真实世界的实体。
  • Terminology:
    • Well-formed XML 可能有同名的元素和属性,因为 W3C Recommendation 中没有任何内容禁止它。
    • 如果关联模式(DTD、XSD 等)允许,
    • Valid XML 可能具有同名的元素和属性,因为有效性是XML 文档和模式之间关系的函数,而不是 XML 文档的固有 属性。