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] Choice entre attribute et element


Sujet :

Valider XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 96
    Par défaut [XSD] Choice entre attribute et element
    Bonjour,
    dans ma XSD, j'ai actuellement un element comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <xs:element name="monElement">
    	<xs:complexType>
    		<xs:sequence>
    			<xs:element name="offset" type="xs:unsignedLong"/>
    			<xs:element name="formatId" type="FormatIdType"/>
    		</xs:sequence>
    	</xs:complexType>
    </xs:element>
    monElement doit donc contenir deux elements : offset et formatId

    Je voudrais transformer ce qui précède pour que monElement ait un attribut attribut1 OU un attribut attribut2 OU la séquence précédente.

    Il n'est pas possible de faire un choice entre complexType et attribut ou un autre complexType.

    Avez-vous une idée de la manière d'arriver à mes fins?

    Merci,
    Nico

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

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

    est-ce que tes attributs contiennent les mêmes valeurs possibles que pour tes éléments offset et formatId ? Si c'est le cas, on peut s'en sortir avec l'intégrité référentielle sinon ça va être difficile...
    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
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 96
    Par défaut
    J'ai finalement opté pour quelque chose comme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <xs:choice minOccurs="1" maxOccurs="1">
    	<xs:group ref="defaultElement"/>
    	<xs:group ref="eltWithAttribut1"/>
    	<xs:group ref="eltWithAttribut1"/>
    </xs:choice>
    avec la redéfinition de mon élément dans chaque groupe çà fonctionne comme je le voulais (enfin je crois, j'ai encore mes tests à faire )

    Merci,
    Nico

    [EDIT] pour que ma xsd soit valide il a fallu que je définisse mes trois groupes avec des elements ayant des noms différents, et tout marche niquel...

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

Discussions similaires

  1. création XSD choix entre X listes d'attributs
    Par Sakukun dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 08/11/2013, 18h39
  2. [XSD] choix entre attributs et elements
    Par ama-deo dans le forum Valider
    Réponses: 6
    Dernier message: 08/03/2010, 20h21
  3. [xsd] Contrainte entre les attributs
    Par XtoX dans le forum Valider
    Réponses: 3
    Dernier message: 03/04/2009, 11h00
  4. [XSD] Dépendance entre deux attributs
    Par boux2 dans le forum Valider
    Réponses: 1
    Dernier message: 12/12/2006, 14h51
  5. [XSD] Attribut ou élément
    Par be_tnt dans le forum Valider
    Réponses: 5
    Dernier message: 08/06/2006, 10h06

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