Elemento 'choice' del XML Schema

Definición y uso

El elemento 'choice' del XML Schema permite que solo uno de los elementos que se incluyen en la declaración '<choice>' aparezca en el elemento que lo contiene.

Información del elemento

Número de apariciones En los elementos 'group' y 'complexType' aparece una vez; en otros casos no hay restricción.
Elemento padre grupo, choice, secuencia, complexType, restriction (simpleContent), extension (simpleContent), restriction (complexContent), extension (complexContent)
Contenido anotación, any, choice, elemento, grupo, secuencia

Gramática

<choice
id=ID
maxOccurs=enteroNoNegativo|sinLímite
minOccurs=enteroNoNegativo
any attributes
>
(anotación?,(elemento|grupo|choice|secuencia|any)*)
</choice>

(El símbolo '?' indica que el elemento puede aparecer cero o una vez en el elemento 'choice', el símbolo '*' indica que el elemento puede aparecer cero o más veces.)

Atributos Descripción
id Opcional. Define el ID único de este elemento.
maxOccurs Opcional. Define el número máximo de veces que el elemento 'choice' puede aparecer en el elemento padre. Este valor puede ser un entero no negativo. Si no desea establecer ningún límite para el número máximo, utilice la cadena "unbounded". El valor predeterminado es 1.
minOccurs Opcional. Define el número mínimo de veces que el elemento 'choice' puede aparecer en el elemento padre. Este valor puede ser un entero no negativo. Si desea especificar que este grupo 'any' es opcional, configure esta propiedad en cero. El valor predeterminado es 1.
any attributes Opcional. Define cualquier otra propiedad con espacio de nombres no de esquema.

Ejemplo

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

El ejemplo anterior define que el elemento "person" debe contener un elemento "employee" o un elemento "member".