XSD序列,带有可选元素和任何

时间:2019-02-21 18:47:00

标签: xsd xsd-validation

是否可以定义一个带有可选元素的复杂类型序列,后跟n个可选元素? 目前,我有此XSD可以阻止UPA:

for i in random_name:
    print(i, end='')

# Or

for i in random_name:
    print(i.rstrip())

可能的XML可能是:

<xs:complexType name="itemtype">
    <xs:sequence>
        <xs:element name="uuid" type="uuidtype"/>
        <xs:element name="lastname" type="nametype"/>
        <xs:element name="isActive" minOccurs="0" type="isactivetype"/>
        <xs:element name="countries_scope" type="countryscopetype"/>
        <xs:element name="origin" minOccurs="0" type="nametype"/>
        <xs:element name="url" minOccurs="0" type="nametype"/>
        <xs:element name="email" minOccurs="0" type="emailtype"/>
        <xs:element name="description" minOccurs="0" type="nametype"/>
        <xs:element name="town" minOccurs="0" type="nametype"/>
        <xs:element name="role" minOccurs="0" type="nametype"/>
        <xs:element name="source" minOccurs="0" type="nametype"/>
        <xs:element name="origin_zip" minOccurs="0" type="nametype"/>
        <xs:element name="town_zip" minOccurs="0" type="nametype"/>
        <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
    </xs:sequence>
</xs:complexType>

这里仅使用可选角色,年龄将是任一个元素。

1 个答案:

答案 0 :(得分:1)

解决方案很简单。最后一个元素不能为任意。 该XSD可以工作:

Grok