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 :

Schema xml - les bases


Sujet :

Valider XML

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2008
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 86
    Points : 35
    Points
    35
    Par défaut Schema xml - les bases
    Bonjour.

    J'essaie en vain de créer un schema xml (xsd) à partir de ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <?xml version="1.0" encoding="UTF-8"?>
    <messages>
    	<message>
      		<content>Hello World 1</content>
      		<xx>123</xx>
      	</message>
    	<message>
      		<content>Hello World 2</content>
      		<xx>456</xx>
      	</message>
    </messages>
    J'ai donc ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:import namespace="http://www.w3.org/XML/1998/namespace"
            schemaLocation="http://www.w3.org/2001/xml.xsd" />
      <xs:element name="messages">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="message">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="content" type="xs:string" />
                  <xs:element name="xx" type="xs:string" />
                </xs:sequence>  
              </xs:complexType>
            </xs:element>
          </xs:sequence>  
        </xs:complexType>
      </xs:element>
    </xs:schema>
    Mais la validation ne fonctionne pas. J'ai l'erreur : Invalid content was found starting with element 'message'. No child element is expected at this point.

    Et je ne vois pas ce qui cloche. Ou je ne comprends rien au xsd, ou je suis fatigué ou ...

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Là tu es dans la section "XML avec Java"
    Cette question serait mieux placée dans la section "Valider du XML" généraliste.

    Quant au problème, c'est simple : par défaut les éléments d'une séquence doivent être présent au moins une fois et au plus une fois.
    Or, là, ton élément <messages> a deux enfants <message>, et non pas un seul. Ton schéma doit donc indiquer que la séquence doit autoriser plusieurs <message>

    Se renseigner sur maxOccurs="unbounded"
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. [1.x] construction schema.xml depuis base de données
    Par megaloplex dans le forum Symfony
    Réponses: 3
    Dernier message: 12/05/2010, 14h56
  2. Réponses: 2
    Dernier message: 02/07/2009, 16h24
  3. les bases d'xml
    Par cpf2006 dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 29/08/2008, 16h40
  4. Que choisir pour gérer les sauvegardes : fichiers XML ou base de données ?
    Par Invité dans le forum Développement 2D, 3D et Jeux
    Réponses: 11
    Dernier message: 14/06/2007, 11h58
  5. Schema XML d'une base
    Par will2taz dans le forum Windows Forms
    Réponses: 2
    Dernier message: 30/04/2007, 16h12

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