estoy atascado tratando de definir un XSD contiene un campo que puede tener sólo uno de los tres valores siguientes:XSD Definición de Valor enumerado
- verde
- Rojo
- azul
Básicamente, quiero definir una enumeración estricta en el nivel de Esquema.
Mi primer intento parece incorrecto y no estoy seguro de la forma "correcta" de solucionarlo.
<xs:element name="color">
<xs:complexType>
<xs:choice>
<xs:element name="green"/>
<xs:element name="red"/>
<xs:element name="blue"/>
</xs:choice>
</xs:complexType>
</xs:element>
Mediante el uso de un generador automático de XML, trata a los nombres de los elementos como objetos de cadena:
<xs0:color>
<xs0:green>text</xs0:green>
</xs0:color>
Recomendaría usar una extensión de NMTOKEN, en lugar de String. Creo que consiste más en la idea de una enumeración. También es más amigable para herramientas, particularmente con generadores de código. – skaffman