>我正在使用一家外部公司的 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 标准。
[定义:] 正整数 是 ·派生· 从非负整数 通过将 ·minInclusive· 的值设置为 1。 这导致了正整数的标准数学概念。 ·价值空间·的 positiveInteger 是无限集合 {1,2,...}。 ·基型·的正整数是非负整数。
他们可能的意思是这个值是xs:unsignedInt或xs:unsignedLong,但从技术上讲是正确的。