Элемент XML Schema unique
Определение и использование
Элемент unique определяет, что значение атрибута или значения элемента (или комбинацию атрибута и значения элемента) в заданном диапазоне должно быть уникальным. Это значение должно быть уникальным или равным нулю.
Элемент unique должен включать в себя в порядке следования следующие элементы:
элемент selector
Элемент selector содержит XPath-выражение, которое указывает на набор элементов, в котором значения, указанные элементом field, должны быть уникальными.
Необходимо иметь один и только один элемент selector.
элемент field
Каждый элемент field содержит XPath-выражение, которое указывает уникальное значение (атрибут или значение элемента) для элементного набора, указанного элементом selector.
Если есть несколько элементов field, то комбинация этих элементов должна быть уникальной. В этом случае, значение одного элемента field не обязательно уникально для выбранного элемента, но комбинация всех полей должна быть уникальной.
Необходимо иметь один или несколько элементов field.
Информация о элементе
количество出现 | один раз |
Родительский элемент | element |
Содержимое | annotation, field, selector |
Грамматика
<unique id=ID name=NCName любые атрибуты > (annotation?,(selector,field+)) </unique>
(? Знак ? используется в уникальном элементе, чтобы указать, что элемент может出现在 zero или one раз.)
Атрибуты | Описание |
---|---|
id | Опционально. Определяет уникальный ID для этого элемента. |
имя | Обязательно. Определяет имя для этого элемента. |
любые атрибуты | Опционально. Определяет любые другие атрибуты с non-schema命名空间. |
Пример
Пример 1
Этот пример представляет собой простую тип, объединяющий два простых типа:
<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>