【发布时间】:2011-01-30 05:34:07
【问题描述】:
我在targetNameSpace 中定义了一个complexType,例如"http://xyz.example.com",并在许多地方使用。现在我想在我新创建的具有不同命名空间的 XSD 中使用它,比如 "http://abc.example.com"。
我可以这样做吗?还是我必须使用相同的命名空间?
【问题讨论】:
标签: xml xsd namespaces
我在targetNameSpace 中定义了一个complexType,例如"http://xyz.example.com",并在许多地方使用。现在我想在我新创建的具有不同命名空间的 XSD 中使用它,比如 "http://abc.example.com"。
我可以这样做吗?还是我必须使用相同的命名空间?
【问题讨论】:
标签: xml xsd namespaces
一个模式只能有一个目标命名空间。
至于您的具体问题,如果您的复杂类型位于不同的命名空间中,它将是不同的类型。使类型独一无二的是名称和命名空间的组合,而不是它的定义。
您可以将定义此类型的架构导入到其他架构中,并且您可以在包含两个架构中的元素的 XML 文档中使用该复杂类型。这就是 XML 命名空间的优势。
【讨论】: