Définir une liste d'éléments dans un schéma xsd
Cette partie de mon schéma est de me donner de la difficulté à:
<xs:element name="newrecipients">
<xs:complexType>
<xs:choice>
<xs:element name="csv" type="xs:string" />
<!-- List of recipients -->
</xs:choice>
</xs:complexType>
</xs:element>
La liste des destinataires est une liste de choses comme:
<recipient>
<field1>...</field1>
...
<fieldN>...</field>
</recipient>
où la balise destinataire pourrait contenir aléatoire de la séquence de balises inconnues du schéma. J'ai donc utilisé quelque chose comme
<xs:element name="recipient">
<xs:complexType>
<xs:sequence>
<xs:any minOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Le problème est que je ne sais pas comment le définir une liste de destinataires. Je sais <xs:list>
mais je ne peux pas comprendre comment l'utiliser dans ce cas parce que d'habitude je vois quelque chose comme
<xs:element name="intvalues" type="valuelist">
<xs:simpleType name="valuelist">
<xs:list itemType="xs:integer"/>
</xs:simpleType>
</xs:schema>
où vous devez définir un élément qui contient la liste. Je veux directement csv
OU directement le list
.
Ce qui me manque? Merci.
EDIT: exemple de sortie
Ce:
<newrecipients>
<csv>myrecipients.csv</csv>
</newrecipients>
ou ceci:
<newrecipients>
<recipient>
<field1>...</field1>
...
<fieldN>...</field>
</recipient>
...
<recipient>
<field1>...</field1>
...
<fieldN>...</field>
</recipient>
</newrecipients>
Vous devez vous connecter pour publier un commentaire.
Je ne sais pas si c'est valable à l'intérieur d'un
xsd:choice
élément:Pour sûr que vous pouvez utiliser cette solution d'emballage les éléments des déclarations à l'intérieur d'un
xsd:sequence
tag, mais je ne sais pas si vous voulez la liste de existe si et seulement si le csv élément est manquant.