0

値 0.00 は有効な nonNegativeInteger ではなく、Integer でさえないことに気付きました。残念ながら、データはその形式で提供されています。.0 で終わる場合は破棄したくありませんが、タイプを Decimal に変更したくなく、.1 で終わる値が有効である可能性もあります。

私の XSD が正の整数であるように数値を検証できる方法はありますか?そのため、0.00、0、1、1.0、2.0000000 などの値はすべて受け入れられますが、-1、1.1、2.2、3.3333 はすべて無効ですか?

ありがとう -c

4

2 に答える 2

1

小数に変更して、小数点以下の桁数を制限することを検討できます。特に、正規表現ファセットを使用できる場合があります。私はこれを試したことがなく、有効かどうかさえわかりませんが、注目すべき方向性です。値スペースではなく字句スペースを制限することになりますが、それはあなたが望むものです。

于 2009-04-30T19:06:30.460 に答える
0

これは私が必要としているもので機能します、ジョンに感謝します

<xs:simpleType name="nonNegativeWholeDecimal">
    <xs:restriction base="xs:decimal">
        <xs:pattern value="[0-9]*(\.[0]*)?"/>
    </xs:restriction>
</xs:simpleType>
于 2009-04-30T20:58:46.290 に答える