Это правильный способ создания схемы XML?Пожалуйста, предложите - PullRequest
0 голосов
/ 02 июня 2011

1:

  <xs:element name="abcd" minOccurs="1" maxOccurs="1"/>
    <xs:simpleType>
     <xs:restriction base="xs:string">
      <xs:length value="4"/>
    </xs:restriction>
   </xs:simpleType>
  </xs:element>

2:

<xs:element name="abcd" type="xs:string" length value = "4" minOccurs="1" maxOccurs="1"/>

Могу ли я добавить maxOccurs и minOccurs, как я сделал в числе 1. Является ли число 2 также правильным способом определения схемы?

1 Ответ

0 голосов
/ 02 июня 2011

Ваш первый пример кода имеет небольшую синтаксическую ошибку.Начальный тег <xs:element> имеет косую черту / в конце, что делает его самозакрывающимся элементом, и ваш XML будет искажен.Удаление косой черты исправляет эту ошибку.

<xs:element name="abcd" minOccurs="1" maxOccurs="1"/>
  <xs:simpl...
</xs:element>

Да, обычно вы можете добавить minOccurs и maxOccurs, как вы уже сделали, но это не разрешено для глобальных определений элементов (что означает, что <xs:element>является (прямым) дочерним элементом элемента <xs:schema>).Значения по умолчанию для minOccurs и maxOccurs равны 1, поэтому в вашем примере кода значение останется прежним, даже если они были пропущены.

Ваш второй пример содержит ошибку.

<xs:element name="abcd" type="xs:string" length value = "4" minOccurs="1" maxOccurs="1"/>

length не является допустимым атрибутом для элемента <xs:element> Также рекомендация XML не допускает пробелов до или после символа равенства =, но не все анализаторы жалуются на это.В противном случае это кажется правильным.

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