Elemento unique del esquema XML

Definición y uso

El elemento unique especifica que los valores de atributo o valor de elemento (o la combinación de atributo o valor de elemento) deben ser únicos en el rango especificado. Este valor debe ser único o cero.

El elemento unique debe contener en orden los siguientes elementos:

elemento selector

El elemento selector contiene una expresión XPath que especifica un conjunto de elementos en el que los valores especificados por los elementos field deben ser únicos.

Debe haber un y solo elemento selector.

elemento field

Cada elemento field contiene una expresión XPath que especifica un valor único (atributo o valor de elemento) que debe ser único para el conjunto de elementos especificado por el elemento selector.

Si hay varios elementos field, la combinación de los elementos field debe ser única. En este caso, el valor de un solo elemento field no tiene por qué ser único para el elemento seleccionado, pero la combinación de todos los campos debe ser única.

Debe haber uno o más elementos field.

Información del elemento

Número de apariciones Una vez
Elemento padre elemento
Contenido anotación, field, selector

Gramática

<unique
id=ID
name=NCName
cualquier atributo
>
(anotación?,(selector,field+))
</unique>

(El símbolo ? indica que este elemento puede aparecer cero o una vez en el elemento unique.)

Atributo Descripción
id Opcional. Especifica un ID único para este elemento.
nombre Obligatorio. Asigna un nombre a este elemento.
cualquier atributo Opcional. Especifica cualquier otra propiedad con espacio de nombres no esquemático.

Ejemplo

Ejemplo 1

Este ejemplo es un tipo simple que combina dos tipos simples:

<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>