Вы здесь

XSD элемент sequence

Элемент sequence определяет, что дочерние элементы должны появляться в последовательности. Каждый дочерний элемент может использоваться от 0 до бесконечного числа раз.

  • Родительские элементы: group, choice, sequence, complexType, restriction (simpleContent и complexContent), extension (simpleContent и complexContent)
Синтаксис

<sequence
 id=идентификатор
 maxOccurs=целоеЧисло | unbounded
 minOccurs=целоеЧисло
 любые атрибуты
 >

 (annotation?, (element | group | choice | sequence | any)*)

</sequence>

(Знак ? указывает на то, что элемент может появляться ноль или один раз, знак * указывает на то, что элемент может появляться ноль, один или больше раз внутри элемента sequence.)

Атрибуты
Атрибут Описание
id Не обязательный. Определяет уникальный идентификатор для элемента
maxOccurs Не обязательный. Определяет, сколько раз максимально может появляться элемент в родительском элементе. Значением может быть любое целое число >= 0, если же нужно снять лимит на использование, то следует указать ключевое слово "unbounded". Значение по умолчанию 1
minOccurs Не обязательный. Определяет, сколько раз минимально может появляться элемент в родительском элементе. Значением может быть любое целое число >= 0. Значение по умолчанию 1
любые атрибуты Не обязательный. Любые другие атрибуты вне пространства имен схемы
Примеры использования элемента

Пример №1
Следующий пример демонстрирует декларацию элемента "personinfo", который должен содержать пять дочерних элементов "firstname", "lastname", "address", "city" и "country":


<xs:element name="personinfo">
   <xs:complexType>
     <xs:sequence>
       <xs:element name="firstname" type="xs:string"/>
       <xs:element name="lastname" type="xs:string"/>
       <xs:element name="address" type="xs:string"/>
       <xs:element name="city" type="xs:string"/>
       <xs:element name="country" type="xs:string"/>
     </xs:sequence>
   </xs:complexType>
</xs:element>

Пример №2
Следующий пример демонстрирует декларацию элемента "pets", который должен содержать 0 или больше дочерних элементов "dog" и "cat":


<xs:element name="pets">
   <xs:complexType>
     <xs:sequence minOccurs="0" maxOccurs="unbounded">
       <xs:element name="dog" type="xs:string"/>
       <xs:element name="cat" type="xs:string"/>
     </xs:sequence>
   </xs:complexType>
</xs:element>