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 comportant des erreurs


Sujet :

Valider XML

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2015
    Messages : 1
    Points : 2
    Points
    2
    Par défaut XSD comportant des erreurs
    Bonsoir,

    Je suis sur un code xsd et xml qui comportent des erreurs. Je n'arrive pas à les corriger. Pouvez-vous m'aider ? Je suis nouvelle et je galère un peu >.<

    Voici mon code :

    Errors in file base.xsd:
    6: 52 s4s-elt-invalid-content.1: The content of '#AnonType_base' is invalid. Element 'element' is invalid, misplaced, or occurs too often.
    18: 20 s4s-elt-must-match.1: The content of 'base' must match (annotation?, (simpleType | complexType)?, (unique | key | keyref)*)). A problem was found starting at: complexType.

    base.xsd
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    <?xml version="1.0" encoding="UTF-8" ?> 
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
     
    	<xsd:element name="base">
    		<xsd:complexType>
    			<xsd:element name="mutuelles" type="xsd:string">
    				<xsd:complexType>
    					<xsd:sequence>
    						<xsd:element name="mutuelle" type="xsd:string" defaut="M001MAI" />
    						<xsd:element name="mutuelle" type="xsd:string" defaut="M002AG2" />
    						<xsd:element name="mutuelle" type="xsd:string" defaut="M003AXA" />
    						<xsd:element name="mutuelle" type="xsd:string" defaut="M004GMF" />
    						<xsd:element name="mutuelle" type="xsd:string" defaut="M005AUT" />
    					</xsd:sequence>
    				</xsd:complexType>
    			</xsd:element>
    		</xsd:complexType>
    		<xsd:complexType>
    			<xsd:element name="secteurs_geographiques" type="xsd:string">
    				<xsd:complexType>
    					<xsd:sequence>
    						<xsd:element name="secteur" type="xsd:string" defaut="S001" />
    						<xsd:element name="secteur" type="xsd:string" defaut="S002" />
    						<xsd:element name="secteur" type="xsd:string" defaut="S003" />
    						<xsd:element name="secteur" type="xsd:string" defaut="S004" />
    						<xsd:element name="secteur" type="xsd:string" defaut="S005" />
    					</xsd:sequence>
    				</xsd:complexType>
    			</xsd:element>
    		</xsd:complexType>
    		<xsd:complexType>
    			<xsd:element name="patients">
    				<xsd:complexType>
    					<xsd:sequence>
    						<xsd:element name="patient" type="xsd:string" defaut="1340236800" />
    							<xsd:complexType>
    								<xsd:sequence>
    									<xsd:element name="nom" type="xsd:string" />
    									<xsd:element name="prenom" type="xsd:string" />
    									<xsd:element name="date_naissance" type="xsd:date" />
    									<xsd:element name="adresse" type="xsd:string" />
    								</xsd:sequence>
    							</xsd:complexType>
     
    						<xsd:element name="patient" type="xsd:string" defaut="1295520600" />
    							<xsd:complexType>
    								<xsd:sequence>
    									<xsd:element name="nom" type="xsd:string" />
    									<xsd:element name="prenom" type="xsd:string" />
    									<xsd:element name="date_naissance" type="xsd:date" />
    									<xsd:element name="adresse" type="xsd:string" />
    								</xsd:sequence>
    							</xsd:complexType>
     
    						<xsd:element name="patient" type="xsd:string" defaut="1336316580" />
    							<xsd:complexType>
    								<xsd:sequence>
    									<xsd:element name="nom" type="xsd:string" />
    									<xsd:element name="prenom" type="xsd:string" />
    									<xsd:element name="date_naissance" type="xsd:date" />
    									<xsd:element name="adresse" type="xsd:string" />
    								</xsd:sequence>
    							</xsd:complexType>
     
    					</xsd:sequence>
    				</xsd:complexType>
    			</xsd:element>
    		</xsd:complexType>
    	</xsd:element>
     
    </xsd:schema>
    Merci d'avance

  2. #2
    Membre émérite Avatar de tsuji
    Inscrit en
    Octobre 2011
    Messages
    1 558
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 558
    Points : 2 736
    Points
    2 736
    Par défaut
    Ceux-ci sont des erreurs absolues qui vous devrez vous adresser avant tout d'autres plus subtiles si il y en a.
    [1] Ligne #6 et les lignes de pareille construction comme lignes #19, #36 etc etc. Vous ne pouvez pas mettre type="xs:string" pourtant avec xsd:complexType (ou xsd:simpleType si il y en a) de suite pour construire une élement xsd:element.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <!-- ligne #6
    <xsd:element name="mutuelles" type="xsd:string">
    -->
    <xsd:element name="mutuelles">
    [2] Entre lignes #5 et #6, après xsd:complexType, xsd:element est une erreur. On doit y insérer xsd:sequence ou xsd:choice ou xsd:all etc... pour simplifier des choses : ça dépend ce qu'on veut. Prenez xsd:sequence pour fixer l'idée et changez après si c'est pas le but qu'on veut avec xs:sequence.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <xsd:element name="base">  <!-- ligne #4 -->
        <xsd:complexType>
            <xsd:sequence>    <!-- ajoutant et vous prenez soigne d'en fermer plus loin. -->
               <xsd:element name="mutuelles">
    [3] Vous ne pouvez mettre un attribut default dans xsd:element qui va avoir du type complexe, partout comme par exemple lign #35. Et puis défaut s'écrit comme "default" pas "defaut".

    [4] Lignes #17 et #18 tout comme #30 et #31, ce sont des construction fausse. Il y a une correction déjà mentionné en [2], je pense vous pouvez enlever toutes les deux xsd:element est suivie l'une l'autre. Ailleurs la même situation, vous faites la même.

    [5] Vous ne pouvez définir deux fois la même xsd:element de même nom. Vous voulez dire vous mettrez deux instances de patient dans le document à valider ? Si oui, vous faites comme ça.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <!--
    <xsd:element name="patient">
    -->
    <xsd:element name="patient" maxOccurs="unbounded">
    Et puis vous enlevez la deuxième xsd:element name="patient".

    Vous prenez soigne tous les temps le bien formation du xsd durant les corrections etc... Reposez après le xsd - c'est difficile à tout dire avec un schema plein d'erreurs.

Discussions similaires

  1. question sur le comportement des threads
    Par rose-bonbon dans le forum CORBA
    Réponses: 4
    Dernier message: 27/10/2004, 18h00
  2. [Eclipse 3.0]Affichage des erreurs
    Par alfsalim dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 12/07/2004, 17h33
  3. Réponses: 8
    Dernier message: 18/05/2004, 10h03
  4. [XSLT]Est ce qu'il y'a la gestion des erreur en xslt ?
    Par miloud dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 04/02/2004, 17h19
  5. [LG]gestion des erreurs
    Par frontin dans le forum Langage
    Réponses: 3
    Dernier message: 29/11/2003, 22h41

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