XSD minLength не определено, что будет по умолчанию minLegnth? - PullRequest
1 голос
/ 13 июня 2011

У меня есть определение xsd, как показано ниже

<xs:simpleType name="ShortName">
    <xs:restriction base="xs:string">
      <xs:maxLength value="3"/>
    </xs:restriction>
  </xs:simpleType>

Я дал только maxLength и не определен minLength.Означает ли это, что у меня длина «ShortName» может быть 0,1,2,3 символа?

Если я явно не установил минимальную длину, будет ли минимальная длина по умолчанию равна 0 (MINLENGTH = 0)?

Ответы [ 2 ]

2 голосов
/ 15 июня 2011

Из w3c :

Правило валидации: maxLength Valid

Значение в пространстве значений является действительным по отношению к maxLength , определенному следующим образом:

1, если {разновидность} атомная , тогда

1.1 если {определение типа примитива} является строкой или anyURI, тогда длина значения, измеряемая в символах , должна быть меньше или равна {значению};

1.2, если {определение типа примитива} равно hexBinary или base64Binary, то длина значения, измеренная в октетах двоичных данных, должна быть меньше или равна {value};

1.3 если {определение типа примитива} имеет значение QName или NOTATION, то любое {значение} допустимо для фасета.

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

Согласно этому определению и в отсутствие ограничения minLength, любое значение длины, которое меньше или равно значению maxLength, которое вы определяете, будет действительным. Следовательно, ноль будет значением minLength по умолчанию для совместимого со спецификацией валидатора XML.

2 голосов
/ 13 июня 2011

http://www.w3schools.com/schema/schema_facets.asp

minLength: указывает минимальное количество символов или элементов списка позволил. Должно быть равно или больше чем ноль.

Если не указано, я думаю, что по умолчанию Ноль.

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