Элемент union определяет простой тип, как коллекцию (набор) значений из заданных простых типов данных.
- Родительские элементы: simpleType
Синтаксис элемента
<union
id=идентификатор
memberTypes="список QName"
любые атрибуты
>
(annotation?, (simpleType*))
</union>
(Знак ? указывает на то, что элемент может появляться ноль или один раз, знак * указывает на то, что элемент может появляться ноль, один или больше раз внутри элемента union.)
Атрибуты элемента
Атрибут | Описание |
---|---|
id | Не обязательный. Определяет уникальный идентификатор для элемента |
memberTypes | Не обязательный. Определяет список из встроенных типов данных или элементов simpleType, декларированных в схеме |
любые атрибуты | Не обязательный. Любые другие атрибуты вне пространства имен схемы |
Пример использования
В следующем примере определяется простой тип, который является набором из двух простых типов:
<xs:element name="jeans_size">
<xs:simpleType>
<xs:union memberTypes="sizebyno sizebystring" />
</xs:simpleType>
</xs:element>
<xs:simpleType name="sizebyno">
<xs:restriction base="xs:positiveInteger">
<xs:maxInclusive value="42"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="sizebystring">
<xs:restriction base="xs:string">
<xs:enumeration value="small"/>
<xs:enumeration value="medium"/>
<xs:enumeration value="large"/>
</xs:restriction>
</xs:simpleType>