Ho uno schema XML (XSD) che definisce un elemento come obbligatorio (chiamalo padre); questo genitore ha, diciamo, cinque elementi figli, che possono essere tutti facoltativi, MA ALMENO deve verificarsi un elemento figlio.XML Schema (XSD) - Come specificare l'elemento genitore per contenere almeno un elemento figlio?
Come posso specificarlo in xsd?
Per chiarire: I bambini sono elementi diversi e facoltativi. Ad esempio.
<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>
Anche se ogni bambino è facoltativo, il genitore deve avere almeno un figlio.
Dopo aver esaminato le risposte (e molto di Google), sembra che non ci sia un costrutto facile in xsd per specificarlo; Più problemi di quanti ne valga la pena, ho deciso di lasciare che il software di validazione imponga regole aggiuntive (come ad esempio Almeno un bambino deve verificarsi). – joedotnot