[英]XSD: default integer value range
在XSD文件中定义特定数据类型的元素时是否存在隐含的默认值范围? 例如,如果我定义一个integer类型的元素:
<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文档但尚未找到答案。
那么,这取决于数据类型......
如果你看一下w3中integer
的定义 :
整数的值空间是无限集{..., - 2,-1,0,1,2,...}
本质上,它意味着,对于整数,默认情况下没有最小/最大值范围,因为可以表示任何整数。
另一方面, 对于int
:
(...)maxInclusive为2147483647,minInclusive为-2147483648。
这个名单还有longs
, shorts
......
您可以在此处详细阅读: http : //www.w3.org/TR/xmlschema-2/#typesystem
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.