错误:maxLength构面不适用于从xs:integer派生的类型

时间:2018-09-20 04:20:24

标签: xml xsd xsd-validation xml-validation

当我尝试

<xsd:simpleType>
    <xsd:restriction base="xsd:nonNegativeInteger">
        <xsd:maxLength value="35"/>
        <xsd:minLength value="1"/>
    </xsd:restriction>
</xsd:simpleType>

我收到错误

  

maxLength构面不适用于从xs:integer派生的类型

如何使用minLengthmaxLength获得一个正整数?

1 个答案:

答案 0 :(得分:1)

要允许1..35之间(包括两端)的整数:

<xsd:simpleType>
    <xsd:restriction base="xsd:nonNegativeInteger">
        <xsd:minInclusive value="1"/>
        <xsd:maxInclusive value="35"/>
    </xsd:restriction>
</xsd:simpleType>

要允许使用1..35位数字的整数:

<xsd:simpleType>
    <xsd:restriction base="xsd:nonNegativeInteger">
        <xsd:pattern value="\d{1,35}"/>
    </xsd:restriction>
</xsd:simpleType>