XSD - Schema: Wie bestimmte Bedingung formulieren?
-
Hi Leute,
ich habe einen Knoten aus meinem Namespace (A). Dieser Knoten soll enthalten dürfen: Plaintext, einen bestimmten Knoten aus meinem Namespace (B) sowie alle Knoten aus dem XHTML-Namespace.
Mein Versuch:<xs:element name="A" type="pageContent"/> <xs:group name="pageContentGroup"> <xs:sequence> <xs:choice> <xs:element ref = "B"/> <xs:any namespace="http://www.w3.org/1999/xhtml" processContents="strict"/> </xs:choice> </xs:sequence> </xs:group> <xs:complexType name="pageContent" mixed="true"> <xs:sequence> <xs:group ref="pageContentGroup"/> </xs:sequence> </xs:complexType>
Das klappt aber nicht so wie ich möchte. Sobald ich ein Element einfüge müssen alle anderen auch dieser Bedingung genügen. Soll heißen, dass ich meinen B-Tag nicht einfügen kann, wenn ich HTML verwendet habe und umgekehrt.
Bitte um Hilfe.
-
*g* Ne halbe Stunde rumversucht und dann 5 Minuten nachdem ich aufgegeben & gepostet habe, finde ich es raus.
So klappt's:<xs:group name="pageContentGroup"> <xs:sequence> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element ref = "type" minOccurs="0" maxOccurs="unbounded"/> <xs:any namespace="http://www.w3.org/1999/xhtml" processContents="strict" minOccurs="0" maxOccurs="unbounded"/> </xs:choice> </xs:sequence> </xs:group>