XML Schema mit choice und sequence - Reihefolge??
Florian
- xml
Hallo!
Ich habe folgende xsd:
....
xsd:choice
xsd:sequence
<xsd:element ref="flr:a" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="flr:b" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="flr:c" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:choice>
....
Frage: Ist eine XML-Datei mit folgender Elementreihenfolge dazu gültig:
a
a
a
a
b
b
b
c
Laut XMLSpy ist sie das, aber eigentlich erlaubt choice ja nur eine Auswahl aus dem nächsten element (oben die sequence), eine Liste müsste dann ja so aussehen, oder:
xsd:sequence
xsd:choice
<xsd:element ref="flr:a" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="flr:b" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="flr:c" minOccurs="0" maxOccurs="unbounded"/>
</xsd:choice>
</xsd:sequence>
Danke!
Florian
hallo Florian,
Ich habe folgende xsd:
Frage: Ist eine XML-Datei mit folgender Elementreihenfolge dazu gültig:
Laut XMLSpy ist sie das, aber eigentlich erlaubt choice ja nur eine Auswahl aus dem nächsten element (oben die sequence), eine Liste müsste dann ja so aussehen
ehmm... und was wolltest du wissen? deine frage hast du ja selbst schon beantwortet.
choice kann folgendes enthalten:
<choice
id = ID
maxOccurs = (nonNegativeInteger | unbounded) : 1
minOccurs = nonNegativeInteger : 1
{any attributes with non-schema namespace . . .}>
Content: (annotation?, (element | group | choice | sequence | any)*)
</choice>
für sequence gilt das selbe inhaltsmodell.
für eine liste könntest du xsd:list nehmen.
wie du mit choice so eine liste erstellen kannst, seht als bsp. unter: http://www.w3.org/TR/xmlschema-0/#ref17
grüße
thomas