элемент choice в XML Schema
определение и использование
Элемент choice в XML Schema позволяет включать только один из элементов, объявленных в <choice>, в содержащем элементе.
информация о элементе
количество的出现次数 | в элементах group и complexType появляется один раз; в других случаях ограничений нет. |
родительский элемент | group, choice, sequence, complexType, restriction (simpleContent), extension (simpleContent), restriction (complexContent), extension (complexContent) |
содержимое | annotation, any, choice, element, group, sequence |
грамматика
<choice id=ID maxOccurs=nonNegativeInteger|unbounded minOccurs=nonNegativeInteger любые атрибуты > (annotation?,(element|group|choice|sequence|any)*) </choice>
(? символ объявлен в элементе choice, элемент может появляться 0 или 1 раз, * символ объявлен элемент, который может появляться 0 или несколько раз).
атрибуты | описание |
---|---|
id | опционально. Определяет уникальный ID этого элемента. |
maxOccurs | опционально. Определяет максимальное количество的出现次数 choice элемента в родительском элементе. Значение может быть целым числом, большим или равным нулю. Если не хотите устанавливать ограничение на максимальное количество, используйте строку "unbounded". По умолчанию значение равно 1. |
minOccurs | опционально. Определяет минимальное количество的出现次数 choice элемента в родительском элементе. Значение может быть целым числом, большим или равным нулю. Если нужно указать, что этот any набор является опциональным, установите этот атрибут в ноль. По умолчанию значение равно 1. |
любые атрибуты | Опционально. Определяет любые другие атрибуты с non-schema命名空间. |
Пример
<xs:element name="person"> <xs:complexType> <xs:choice> <xs:element name="employee" type="employee"/> <xs:element name="member" type="member"/> </xs:choice> </xs:complexType> </xs:element>
Пример выше определяет, что элемент "person" должен содержать элемент "employee" или элемент "member".