如何在XML Schema中为fractionDigits限制指定最小值?

Mar*_*bel 7 xml xsd xsd-1.0

我有以下XML Schema:

<xsd:simpleType name="fractionalSalary">
    <xsd:restriction base="xsd:decimal">
        <xsd:fractionDigits value="2" />
        <xsd:minExclusive value="0" />
    </xsd:restriction>
</xsd:simpleType>
Run Code Online (Sandbox Code Playgroud)

有没有选项指定最小数量xsd:fractionDigits为2?因为我对薪水有下列限制:positive number with 2 decimal places precision, e.g. 10000.50和验证失败应该像输入1000.545214582.0001也对输入1000.510000.

PS:使用XML Schema 1.0

Gar*_*thL 10

您可以添加模式限制:

<xsd:simpleType name="fractionalSalary">
    <xsd:restriction base="xsd:decimal">
        <xsd:fractionDigits value="2" />
        <xsd:minExclusive value="0" />
        <xsd:pattern value="\d+\.\d{2}" />
    </xsd:restriction>
</xsd:simpleType>
Run Code Online (Sandbox Code Playgroud)

这意味着提供的小数必须与正则表达式匹配.

此时,您也可以摆脱fractionDigits元素,因为正则表达式涵盖了该约束.