gpt4 book ai didi

c# - XSD 文件,从哪里获取 xmlns 参数?

转载 作者:行者123 更新时间:2023-11-30 18:57:56 25 4
gpt4 key购买 nike

<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="abc" targetNamespace="http://schemas.businessNameHere.com/SoftwareNameHere"
elementFormDefault="qualified"
xmlns="http://schemas.businessNameHere.com/SoftwareNameHere"
xmlns:mstns="http://schemas.businessNameHere.com/SoftwareNameHere"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="..." type="..." />
<xs:complexType name="...">

我正在开发一个使用 XSD 生成 .cs 文件的项目。我的问题是关于字符串“http://schemas.businessNameHere.com/SoftwareNameHere”如果我改变它,它不起作用。但是 http://不是有效的...背后的逻辑是什么?我在哪里可以找到有关放在那里的内容或如何更改它的信息?

最佳答案

XSD namespace 不必是有效的 URI。具有作为 URL 的 namespace 字符串并不意味着从 URL 中获取任何内容,或者与网络有关的任何内容 - 它只是一个与其他任何字符串一样的字符串。因此,尽管 URL 从它实际上没有指向任何东西的意义上来说可能是无效的,但它仍然是作为命名空间声明的有效字符串。

您可以阅读一些 reasoning behind namespace identifiers being in this format here .

使用 URL 作为命名空间标识符有多种原因,但主要是为了方便 - 它是一个唯一的标识符,通常对用户具有某种意义,很像 Java 命名空间通常以“com”开头的方式、“组织”或“网络”。

关于命名空间为何采用 URI(技术上,IRI)格式的具体细节,您可以阅读 W3C's standards for XML namespaces .指定 XML 命名空间采用 IRI(国际资源标识符)格式,在 RFC3986 中定义.

有关如何正确使用 namespace 的更多信息,有很多很棒的演练,like this one .更改 namespace 时什么不起作用?

关于c# - XSD 文件,从哪里获取 xmlns 参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2595141/

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