Précédent   Forum du club des développeurs et IT Pro > Autres langages > XML/XSL et SOAP > Valider
Valider W3C XML Schemas, DTD, Relax NG, Schematron...) et tout ce qui permet de les mettre en oeuvre. Avant de poster -> FAQ XML, Sources XML
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 28/06/2012, 10h58   #1
irnbru
Membre confirmé
 
Avatar de irnbru
 
Inscription : juin 2004
Messages : 305
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 305
Points : 210
Points : 210
Par défaut confusion sur xs:choice

Bonjour à tou(te)s

xs:choice est défini comme:

Citation:
XML Schema choice element allows only one of the elements contained in the <choice> declaration to be present within the containing element.
Alors c'est assez confus...

Moi j'avais compris que le parent ne pouvait contenir que 0, un ou plusieurs instance d'un seul type d'élément (à choisir donc) dont leur type donné se trouve parmi tous les éléments types proposés par choice (comme une sorte d'énumération) et cet élément pouvait être affiché 0, 1 ou n fois....(suivant l'attribute min/maxOccurs)

Hors il semble qu'en fait le parent pouvait contenir plusieurs types d'éléments dont leur type est proposé par choice, et ces éléments pouvaient être affichés 0, 1 ou n fois....(suivant l'attribute min/maxOccurs)

Par exemple moi j'avais compris

Parent, Parent/e1 ou Parent/e2, Parent/e1 e1, Parent/e2 e2 sont possibles

Hors il est autorisé de faire Parent/ e1 e2, Parent/ e1 e1 e2, Parent/e1 e2 e2 etc... (plusieurs types d'éléments acceptés donc chez le parent)

Voilà j'espère que ma question n'est pas trop confuse aussi


Merci si vous pouvez m'éclaicir

Bonne journée
__________________
http://xfiles62.free.fr
irnbru est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2012, 11h10   #2
Loceka
Expert Confirmé
 
Avatar de Loceka
 
Tlouye Ci
Inscription : mars 2004
Messages : 1 805
Détails du profil
Informations personnelles :
Nom : Tlouye Ci

Informations forums :
Inscription : mars 2004
Messages : 1 805
Points : 2 933
Points : 2 933
En gros, l'élément choice correspond au (...|...) en DTD, ni plus ni moins.
Loceka est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2012, 11h13   #3
irnbru
Membre confirmé
 
Avatar de irnbru
 
Inscription : juin 2004
Messages : 305
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 305
Points : 210
Points : 210
Merci pour ta réponse Loceka cela veut dire quoi car je ne connais pas bien DTD aussi

Est ce que cela veut dire prendre le ou les type(s) que vous voulez parmi la liste proposée (..|..|...) au sein du parent?
__________________
http://xfiles62.free.fr
irnbru est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2012, 11h26   #4
Loceka
Expert Confirmé
 
Avatar de Loceka
 
Tlouye Ci
Inscription : mars 2004
Messages : 1 805
Détails du profil
Informations personnelles :
Nom : Tlouye Ci

Informations forums :
Inscription : mars 2004
Messages : 1 805
Points : 2 933
Points : 2 933
Après avoir lu la doc (je maîtrise pas très bien le XSD), je doute un peu de ce que je viens de dire.

En tout cas en DTD, (a|b|c) signifie "un et un seul élément parmis a, b et c". Du coup quand tu écris (a|b|c)+, ça signifie un et un seul élément entre a, b et c autant de fois que tu veux (donc tu répètes le choix à chaque fois).
Loceka est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2012, 11h35   #5
irnbru
Membre confirmé
 
Avatar de irnbru
 
Inscription : juin 2004
Messages : 305
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 305
Points : 210
Points : 210
Je pense que tu as raison il y a justement des attributs
minOccurs="0" maxOccurs="unbounded" dans choice,

je pense que par défaut il sont à 1

Citation:
maxOccurs
The maximum number of times the choice can occur. The value can be an integer greater than or equal to zero. To set no limit on the maximum number, use the string "unbounded". Default value is 1.

Optional.

minOccurs
The minimum number of times the choice can occur. The value can be an integer greater than or equal to zero. To specify that this choice group is optional, set this attribute to zero. Default value is 1.

Optional.
là cela veut dire que l'on peut répéter ce choix 0, 1 ou x fois parmi un seul type des types à disponibilité,

Merci
__________________
http://xfiles62.free.fr
irnbru est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 05h49.


 
 
 
 
Partenaires

Hébergement Web