Типы данных схемы XSD для систем с 32-битными примитивами? - PullRequest
1 голос
/ 10 марта 2011

Я только что обнаружил (конечно, нелегко), что все целочисленные типы данных, которые я использую в своих схемах XSD, позволяют 64-разрядным значениям проходить проверку вместо 32-разрядных значений.Да, я знаю - мой недостаток в том, что я не углубляюсь в спецификации W3C для типов данных и просто предполагаю, что INT будет 32-битным.

Так есть ли простой способ (как в объявлении DOCTYPE илипространство имен и т. д.) Могу ли я установить 32-битное ограничение для любых типов данных "xs:", включающих целые числа?Сейчас я прохожу и объявляю свои собственные производные типы данных с 32-битными минимальными / максимальными значениями и fgrep'ом файлы XSD, но было бы неплохо, если бы была простая (очевидная) настройка, о которой я не подозреваю.

1 Ответ

1 голос
/ 10 марта 2011

Существует встроенный тип xs: int , который является производным от xs:integer и имеет 32-битный диапазон со знаком.

3.3.17 int

[Определение:] int является производным от долго, установив значение · MaxInclusive · быть 2147483647 и · MinInclusive · быть -2147483648. · Базовый тип · типа int длинный.

(а базовый тип xs: long равен xs: integer)

...