xsd wählen Sie mehrere Werte aus der enumeration oder gleichwertiger Art
Ich habe folgende XSD-Beispiel
<xs:element name="days" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Monday"/>
<xs:enumeration value="Tuesday"/>
<xs:enumeration value="Wednesday"/>
<xs:enumeration value="Thursday"/>
<xs:enumeration value="Friday"/>
<xs:enumeration value="Saturday"/>
<xs:enumeration value="Sunday"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Dem xml extrahieren sollte in der Lage sein, um mehrere Werte enthalten, die aus der Liste beschränken aber das, was Sie die EINGABETASTE, um die Aufzählung oben, zum Beispiel, <Tag>Samstag, Mittwoch</Tag>. Ist das möglich?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn du kannst Locker das Komma (nicht als Trennzeichen in XSD), und sein Inhalt mit Leerzeichen, dann ist das Ihre Lösung:
Bist du grundsätzlich mit einer Liste, also so etwas wie dieses wäre perfekt gültig:
Proaktiv zu sein hier... wenn, zum Beispiel, könnte man will die Eindeutigkeit der Werte, dann kann dies nicht durchgesetzt werden, die in XSD.
Scheint, wie Sie Ihre use-case ist besser verarbeitet, die Verwendung von Regulären Ausdrücken, da Sie erwähnten user input:
Können Sie ersetzen
*.day
mit(Monday|Tuesday|...)
.wird, wie oben angegeben, sondern um zu zeigen explizit:
Dieser Ausdruck enthält die Werte, die Sie wollen, plus
Dies erlaubt es auch, "Mo,Mo,Mo,di,Mo", das kann kein großes problem sein, je nachdem, wie Sie die Daten verwenden, nachdem Sie Sie gelesen. Ich meine, wenn Sie sind die Fahnen dann: Mo, Mo, Mo ist kein problem.