Элемент 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>
(? символ указывает на то, что элемент может出现 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".