繁体   English   中英

XSD属性限制和值

[英]XSD attribute restriciton and value

这似乎很简单,但是我还没有找到答案。 我有同时使用属性和值的xml:

<BusinessIdentifier businessIdentifierType="Customer Number">D123456788</BusinessIdentifier>

哪个应针对架构进行验证:

<xs:simpleType name="BusinessIdentifierTypes">
    <xs:restriction base="xs:string">
        <xs:enumeration value="Plan Number"/>
        <xs:enumeration value="Customer Number"/>
        <xs:enumeration value="Scheme Number"/>
        <xs:enumeration value="Agency Code"/>
    </xs:restriction>
</xs:simpleType>

<xs:element name="BusinessIdentifier">
<xs:complexType>
<xs:attribute name="businessIdentifierType" type="BusinessIdentifierTypes" use="required"/>                                             
</xs:complexType>
</xs:element>

我可以看到我在某处缺少值D123456789,但是我不确定如何将其放在相同的元素和属性中。 这看起来与我试图实现XML模式如何通过枚举限制属性类似,但是在尝试使用xs:extension标记时出现错误

您需要将类型定义为“具有简单内容的复杂类型”。 希望这可以帮助您在自己喜欢的XML Schema参考书中进行查找。

是的,谢谢,我通过在架构中使用以下内容来解决此问题:

<xs:element name="BusinessIdentifier">
                                        <xs:complexType>
                                            <xs:simpleContent>                                                  <xs:extension base="xs:string">                                                     <xs:attribute name="businessIdentifierType" type="BusinessIdentifierTypes" use="required"/>
                                                </xs:extension>
                                            </xs:simpleContent>
                                        </xs:complexType>
                                    </xs:element>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM