From: Stéphanie LOPERA (stephanie.lopera@lafon.fr)
Date: 06/11/2001 - 10:28
Merci pour ta réponse mais cela ne change rien, j'ai exactement le même message
d'erreur...
Stéphanie
DELGRANCHE David a écrit :
> Salut,
>
> A mon avis, la cause de ton soucis est ton fichier XML. En
> fait ton noeud Root est ta déclaration de namespace. Pour la validation, ce
> noeud n'est pas considéé comme la racine et donc le noeud racine est pour
> lui: <bp> qui a un autre noeud au même niveau: <b> d'où deux racines!
> Essayes juste ca:
> <?xml version="1.0"?>
> <a xmlns="x-schema:evenement">
> <e>
> <bp>1111111</bp>
> <nom>nom station 1111111</nom>
> <b>
> <nb>1112</nb>
> <np>1113</np>
> <tp>1114</tp>
> </b>
> </e>
> </a>
>
> Ca devrait aller mieux....
>
> David.
>
> > -----Message d'origine-----
> > De: Stéphanie LOPERA [SMTP:stephanie.lopera@lafon.fr]
> > Date: mardi 6 novembre 2001 11.06
> > À: XMLfr.org
> > Objet: [xml-tech] validation d'un XML avec schéma XSD
> >
> > Je souhaite valider un fichier xml à partir de son schéma xsd.
> > Pour cela, j'utilise un Window Script File (objet éxecutant du code) qui
> > est le suivant :
> >
> > <package>
> > <job id="validation">
> > <script>
> > //fichier XML
> > var fichier_xml = WScript.Arguments(0);
> > var xmldoc = new ActiveXObject("Msxml2.DOMDocument.4.0");
> > xmldoc.async = false ;
> > xmldoc.validateOnParse = false ;
> >
> > //fichier XSD
> > var fichierXsd =
> > "C:\\mesDocuments\\maquette\\traitement_fichier_CSV\\validationXML\\E.xsd"
> > ;
> >
> > var schema = new ActiveXObject("Msxml2.XMLSchemaCache.4.0");
> > oSchema = schema.add("x-schema:evenement",fichierXsd);
> >
> > //association du schema xsd au fichier xml
> > xmldoc.schemas = oSchema;
> > // le document se charge seulement si le schema associe est
> > valide
> > xmldoc.load(fichier_xml);
> >
> > ok = xmldoc.validate();
> > if (ok.errorCode==0) {
> > WScript.echo("Fichier bien forme");
> > } else {
> > WScript.echo("Raison de l'erreur : " + ok.reason);
> > }
> > </script>
> > </job>
> > </package>
> >
> > 1. Je crée un objet qui va ouvrir mon document XML
> > 2. J'ouvre mon fichier XSD
> > 3. J'associe mon schéma à l'objet XML
> > 4. Je lis mon fichier XML
> > 5. Je vérifie si le fichier est bien formé (il l'est j'en suis sûre mais
> > je vous met ci-après le XML et le XSD)
> >
> > Quand j'éxecute le tout, le résultat est :
> > "Raison de l'erreur : Validate failed because the document does not
> > contain exactly one root node"
> >
> > ... ??
> > Si vous connaissez une autre technique pour associer une schéma ou alors
> > que vous avez une suggestion, je suis ouverte à tout.
> > Merci de vos réponses.
> >
> > Stéphanie
> >
> > Mon XML :
> > <?xml version="1.0"?>
> > <e xmlns="x-schema:evenement">
> > <bp>1111111</bp>
> > <nom>nom station 1111111</nom>
> > <b>
> > <nb>1112</nb>
> > <np>1113</np>
> > <tp>1114</tp>
> > </b>
> > </e>
> >
> > Mon XSD :
> > <?xml version="1.0" encoding="UTF-8"?>
> >
> > <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
> > elementFormDefault="qualified">
> > <xs:include schemaLocation="TYPES.xsd"/>
> > <xs:element name="e">
> > <xs:complexType>
> > <xs:sequence>
> > <xs:element ref="bp"/>
> > <xs:element ref="nom" minOccurs="0"/>
> > <xs:element ref="b" minOccurs="0" maxOccurs="2"/>
> > </xs:sequence>
> > </xs:complexType>
> > </xs:element>
> > <xs:element name="bp" type="wherecode"/>
> > <xs:element name="nom" type="xs:string"/>
> > <xs:element name="b">
> > <xs:complexType>
> > <xs:sequence>
> > <xs:element ref="nb"/>
> > <xs:element ref="np"/>
> > <xs:element ref="tp"/>
> > </xs:sequence>
> > </xs:complexType>
> > </xs:element>
> > <xs:element name="nb" type="no_borne"/>
> > <xs:element name="np" type="no_portique"/>
> > <xs:element name="tp" type="pilote_portique"/>
> > </xs:schema>
> >
> >
> > --
> > Devenez redacteur <XML>fr et contribuez au developpement du
> > xml francophone (http://xmlfr.org/infos/redacteurs/) !
> >
> > Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
> >
> > Cette liste est a votre disposition pour discuter en francais de
> > tout sujet technique lie a XML.
> >
> > Pour resilier votre abonnement, envoyez un message contenant
> > la commande "unsubscribe" a xml-tech-request@xmlfr.org
> > (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)<< Fichier:
> > ATT00029.txt>>
> -- Attached file included as plaintext by Listar --
>
> --------------Interscan------------- (on the network)
>
> email-body was scanned and no virus found
> ------------------------------Traite par ISVW---------------
>
> --
> Devenez redacteur <XML>fr et contribuez au developpement du
> xml francophone (http://xmlfr.org/infos/redacteurs/) !
>
> Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
>
> Cette liste est a votre disposition pour discuter en francais de
> tout sujet technique lie a XML.
>
> Pour resilier votre abonnement, envoyez un message contenant
> la commande "unsubscribe" a xml-tech-request@xmlfr.org
> (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC
webmaster@xmlfr.org
|