10

XSD ファイルで特定のデータ型の要素を定義するときに、暗黙のデフォルト値の範囲はありますか? たとえば、整数型の要素を定義するとします。

<xs:element name="MyIntegerElement" type="xs:integer"/>

これには、検証される暗黙の最小値と最大値がありますか? 次のように有効な範囲を明示的に定義できることはわかっています。

<xs:element name="MyIntegerElement">
   <xs:simpleType>
      <xs:restriction base="xs:integer">
         <xs:minInclusive value="1"/>
         <xs:maxInclusive value="16"/>
      </xs:restriction>
   </xs:simpleType>
</xs:element>

しかし、これに対して XML ファイルを検証するときにこれを行わないと、デフォルトで有効な値の範囲になりますか? XSD のドキュメントを調べてみましたが、まだ答えが見つかりません。

4

1 に答える 1

8

まあ、それはデータ型に依存します...

at w3の定義integerを見ると:

整数の値空間は無限集合 {...,-2,-1,0,1,2,...}

本質的には、整数の場合、任意の整数を表すことができるため、デフォルトでは最小/最大値の範囲がないことを意味します。

一方、の場合int:

(...) maxInclusive は 2147483647 になり、minInclusive は -2147483648 になります。

リストはlongsshortsなどに続きます...

ここで詳細を読むことができます: http://www.w3.org/TR/xmlschema-2/#typesystem

于 2013-03-18T20:49:48.527 に答える