Xsd 参考XML模式扩展
我有这样的简单模式Xsd 参考XML模式扩展,xsd,Xsd,我有这样的简单模式 > <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="employee" type="fullpersoninfo"/> <xs:complexType name="personinfo"> <xs:sequence> <xs:element nam
> <?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="employee" type="fullpersoninfo"/>
<xs:complexType name="personinfo">
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="fullpersoninfo">
<xs:complexContent>
<xs:extension base="personinfo">
<xs:sequence>
<xs:element name="address" type="xs:string"/>
<xs:element name="city" type="xs:string"/>
<xs:element name="country" type="xs:string"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
>
在另一个模式中,我想引用personinfo:country,我如何引用它
您的简单模式的作者通过将“country”元素设置为
fullpersoninfo
类型的本地元素,而不是顶级元素,努力使其无法从另一个模式文档中引用。如果模式无法更改,您将被套住
如果可以更改模式以重用要重用的构件,则需要包含或导入相关的模式文档,然后使用它们的限定名称引用它们。但是,您似乎有点不确定是要引用
country
元素还是country
元素的类型;如果你想产生一个连贯的模式,你需要下定决心。这只是一个例子。实际情况不同。我有两个不同的XSD中的PersonInfo和fullpersoninfo,我无法更改它们。我想在这个例子中提到国家因素。如果你的例子提供了一个技术上准确的情况描述,那么你的问题已经得到了回答。如果没有,那么你问错了问题,你问的问题已经得到了回答。不管怎样,祝你好运。