gpt4 book ai didi

xml - 何时使用 W3C 的 xmlns 和 xmlns :xsi namespaces?

转载 作者:行者123 更新时间:2023-12-04 17:00:49 29 4
gpt4 key购买 nike

我在这里有一个关于 XML 的基本问题。声明元素的 xmlns 时属性,使用 http://www.w3.org/2001/XMLSchema 是否合法? ?并在声明 xmlns:xsi 时属性,使用 http://www.w3.org/2001/XMLSchema-instance 是否合法作为值(value)?

我问这个是因为我已经看到一些引用这些命名空间的 XML 编辑器自动生成的 XML,但是(至少在 XMLSchema-instance 页面上)W3C 说“这个模式不应该这样使用:the XML Schema Recommendation 禁止此命名空间中的属性声明”。

所以我很困惑;说这样的话是否总是违法的:

<?xml version="1.0" encoding="UTF-8"?>
<myElement xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
[...]
</myElement>

...如果不是,为什么 W3C 似乎说永远不应该使用命名空间?一个人会用它做什么?我曾尝试阅读 XML 1.0 规范,但它非常冗长且难以理解。

最佳答案

该命名空间不应用于其他任何用途。它必须用于引用在该命名空间中声明的属性。

您不得在属于其他人的命名空间中声明任何元素或属性。这意味着您不得申报您的 myElement在“XMLSchema”命名空间内。

<?xml version="1.0" encoding="UTF-8"?> 
<root xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<genericElement xsi:type="xs:string">string</genericElement>
</root>

关于xml - 何时使用 W3C 的 xmlns 和 xmlns :xsi namespaces?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6583614/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com