XML-Schema (XSD) - Wie Sie angeben übergeordneten element zu enthalten, die mindestens ein untergeordnetes element?

Ich habe ein XML-schema (XSD) definiert ein element als zwingend (nennen Sie es den Eltern); dieser Elternteil hat, sagen wir, fünf child-Elemente, die alle optional, ABER MINDESTENS EIN Kind-element auftreten muss.

Wie kann ich festlegen, das in der xsd?

Zu klären: Die Kinder sind verschiedene Elemente und optional.
Zum Beispiel.

<Parent>
   <Child1>contents are different to other siblings and arbitrary</Child1>
   <Child2>can be text, a simple element, or another complex element</Child2>
   <Child3>etc.. etc</Child3> 
</Parent>

<xs:complexType name="Parent">
  <xs:sequence>
    <xs:element minOccurs="0" name="Child1" type="xs:string"/>
    <xs:element minOccurs="0" name="Child2" />
    <xs:element minOccurs="0" name="Child3" />
  </xs:sequence>
</xs:complexType>

Obwohl jedes Kind ist es freigestellt, die Eltern Bedürfnisse haben mindestens ein Kind.

  • Nach der überprüfung der Antworten (und viel Googeln), es scheint, es ist kein einfaches Konstrukt in xsd angeben; Mehr ärger als es Wert ist, ich haben sich dafür entschieden, lassen Sie die Validierung von software durchzusetzen, zusätzliche Regeln (z.B. Mindestens Einem Kind auftreten müssen).
InformationsquelleAutor joedotnot | 2010-03-22
Schreibe einen Kommentar