Является ли технически допустимым ограничение positiveInteger с maxInclusive 9999999999? - PullRequest
2 голосов
/ 09 апреля 2019

Я работаю с веб-сервисом из внешней компании, который определил следующее ограничение для элемента в своем wsdl:

<xs:simpleType>
    <xs:restriction base="xs:positiveInteger">
        <xs:minInclusive value="1"/>
        <xs:maxInclusive value="9999999999"/>
    </xs:restriction>
</xs:simpleType>

Делая преобразование этого ограничения в классе, я создал свойство с типом UInt32, но этот тип данных допускает только числа до 4294967295, что намного ниже значения maxInclusive, определенного в ограничении.

Этот вид ограничения технически и логически действителен для схемы? или это неправильно, и внешняя компания должна изменить базовый тип на больший?

Заранее спасибо.

1 Ответ

1 голос
/ 15 апреля 2019

Ограничение в порядке. Взгляните на W3C стандарт .

[Definition:] positiveInteger · выводится из nonNegativeInteger, устанавливая значение · minInclusive · равным 1. Это приводит к стандартной математической концепции положительных целых чисел. · Пространство значений · positiveInteger - бесконечный набор {1,2, ...}. · Базовый тип · positiveInteger - неNegativeInteger.

Вероятно, это значение означает xs: unsignedInt или xs: unsignedLong, но технически это правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...