Допустимое значение для целочисленного типа данных - PullRequest
1 голос
/ 25 марта 2019

Я проверяю xml против xsd, у которого есть параметр, скажем, «код» с типом данных в качестве целого числа.

Я ожидал ошибки проверки, если я дам «код», любое значение, которое начинается с «0 ", например," 05 ", поскольку, насколько я знаю, это недопустимое целое число.

Но проверка прошла успешно.Я хотел знать, как это возможно?Или мое понимание неверно в отношении допустимых значений, которые может принимать целое число.

1 Ответ

0 голосов
/ 25 марта 2019

Тип данных xs:integer в XSD (как 1.0, так и 1.1) допускает начальные нули в значении. Также допускается ведущий знак «+» или «-».

Если по какой-то причине вы хотите запретить начальные нули (или запретить начальный знак), вы можете добиться этого, ограничив тип с помощью xs:pattern фасета; например <xs:pattern value="0|[1-9][0-9]*"/> запрещает как ведущие нули, так и ведущие знаки.

Спецификацию см. https://www.w3.org/TR/xmlschema11-2/#integer

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