Рекомендуемый курс:

Элемент XML Schema unique

Определение и использование

Элемент unique определяет, что значение атрибута или значения элемента (или комбинацию атрибута и значения элемента) в указанном диапазоне должно быть уникальным. Это значение должно быть уникальным или равным нулю.

Элемент unique должен последовательно содержать следующие элементы:

элемент selector

Необходимо иметь один и только один элемент selector.

элемент field

Каждый элемент field содержит XPath-выражение, которое указывает уникальное значение (атрибут или значение элемента) для элементного набора, указанного элементом selector.

Если есть несколько элементов field, то комбинация элементов field должна быть уникальной. В этом случае, значение одного элемента field для выбранного элемента не обязательно уникально, но комбинация всех полей должна быть уникальной.

Необходимо иметь один или несколько элементов field.

Информация о элементе

Число出现的次数 один раз
Родительский элемент element
Содержимое annotation, field, selector

Грамматика

<unique
id=ID
name=NCName
любые атрибуты
>
(annotation?,(selector,field+))
</unique>

(? Знак ? позволяет элементу出现 0 или 1 раз в уникальном элементе.)

Атрибуты Описание
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>