Frage zu XML Schema

Fragen zu allen anderen Programmiersprachen.
Benutzeravatar
Spirit
Beiträge: 174
Registriert: 13.04.2005 19:09

Frage zu XML Schema

Beitrag von Spirit »

Hallo,
ich habe mich in letzter Zeit mit XML Schema beschäftigt und bin
dabei auf folgendes Problem gestoßen:

Wenn ich in einem Schema z.B. ein Element definieren möchte, welches
ein Attribut 'name' und ein Attribut 'ref' sowie einige Unterelemente
besitzen kann, wie kann ich dann im Schema festlegen, dass das
'ref'-Attribut nur dann benutzt werden darf, wenn keine weiteren Attribute
und keine Unterelemente angegeben werden? Oder eben umgekehrt: Wenn das
'name'-Attribut sowie die Unterelemente angegeben werden, darf 'ref'
nicht angegeben werden.

Zur Veranschaulichung, erlaubt sein soll folgendes:

Code: Alles auswählen

<Auto name="Mein Auto">
   <Farbe>rot</Farbe>
   ...
</Auto>

-- oder --

<Auto ref="Mein Auto" />
Es soll jedoch nicht erlaubt sein, sowas zu schreiben:

Code: Alles auswählen

<Auto name="abc" ref="xyz">
   <Farbe>rot</Farbe>
   ...
</Auto>
Da man <xs:choice> nur auf Elemente anwenden kann, aber nicht auf
Attribute, weiß ich nicht, wie ich das lösen kann.