我正在使用来自外部公司的Web服务,该服务已为其wsdl中的元素定义了以下限制:
<xs:simpleType>
<xs:restriction base="xs:positiveInteger">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="9999999999"/>
</xs:restriction>
</xs:simpleType>
在类中转换此限制时,我使用tipe UInt32创建了一个属性,但此数据类型仅允许数字最多为4294967295,远低于限制中定义的maxInclusive。
这种限制在技术上和逻辑上对于模式有效吗?或者是错误的,外部公司应该将基本类型更改为更大的类型?
提前致谢。
限制很好。看看W3C standard。
[定义:] positiveInteger是通过将minInclusive的值设置为1而从nonNegativeInteger派生的。这导致正整数的标准数学概念。 positiveInteger的值空间是无限集{1,2,...}。 positiveInteger的基类型是nonNegativeInteger。
它们可能意味着这个值是xs:unsignedInt或xs:unsignedLong,但从技术上讲它是正确的。