IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Valider XML Discussion :

[XSD] Elements de meme nom dans une sequence


Sujet :

Valider XML

  1. #1
    Nouveau membre du Club
    Inscrit en
    Août 2004
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 41
    Points : 29
    Points
    29
    Par défaut [XSD] Elements de meme nom dans une sequence
    Bonjour a tous,

    J'aurais besoin, dans un choice (ou une sequence c'est pareil) de mettre des elements de meme nom mais d'un type different.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
       <xsd:complexType name="totoType">
            <xsd:choice minOccurs="0"
                              maxOccurs="unbounded">
                   <xsd:element name="contentUnit" type="unType"/>
                   <xsd:element name="contentUnit" type="unAutreType"/>
            </xsd:choice>
       </xsd:complexType>
    Le vaildateur me jette. Il accepte des elements de meme nom et de meme type, mais pas d'un type different....

    Quelqu'un peut m'aider ?

    Un grand merci d'avance !

    Mathias.

  2. #2
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Bonjour,

    il est normal que le validateur n'accepte pas ce type de contrainte, car il viole une règle fondamentale des XML Schema : à tout moment, le validateur doit savoir dans quel élément il se trouve pour vérifier son schéma. Or, dans ce cas, il ne peut pas choisir l'un ou l'autre des contentUnit avant de savoir ce qu'il contient, et donc de faire une lecture préemptive ce que son fonctionnement interdit.

    Pour contourner ce problème, crée pour contentUnit un type complexe qui englobe ses deux variantes dans un xs:choice.
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  3. #3
    Nouveau membre du Club
    Inscrit en
    Août 2004
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 41
    Points : 29
    Points
    29
    Par défaut
    Merci beaucoup !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/11/2010, 15h16
  2. [XSD] Eléments avec même nom et attributs différents
    Par stanware dans le forum Valider
    Réponses: 3
    Dernier message: 24/06/2008, 17h44
  3. Réponses: 4
    Dernier message: 10/10/2007, 15h31
  4. Réponses: 2
    Dernier message: 21/06/2007, 08h44
  5. Réponses: 10
    Dernier message: 22/05/2004, 13h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo