Ich bin fest versuchen, eine XSD enthält ein Feld zu definieren, die nur eine der drei folgenden Werte haben kann:XSD Definition für Aufzählungs Wert
- Grün
- Red
- Blau
Im Wesentlichen möchte ich eine strenge Enumeration auf der Schema-Ebene definieren.
Mein erster Versuch erscheint falsch und ich bin mir nicht sicher über den "richtigen" Weg, es zu beheben.
<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>
Durch einen automatischen XML-Generator verwendet wird, behandelt es diese Elementnamen als String-Objekte:
<xs0:color>
<xs0:green>text</xs0:green>
</xs0:color>
Ich würde jedoch eine Erweiterung von NMTOKEN anstelle von String empfehlen. Es ist mehr mit der Idee eines Enums, denke ich. Es ist auch mehr Werkzeug-freundlich, besonders mit Code-Generatoren. – skaffman