Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1450 connectés 

  FORUM HardWare.fr
  Programmation
  XML/XSL

  Lier les fichiers .xml .xsd .xsl

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Lier les fichiers .xml .xsd .xsl

n°1164400
Diel5
Posté le 29-07-2005 à 10:54:17  profilanswer
 

J'ai un petit souci. Je n'arrive pas a executer ce fichier xml avec les contraintes que lui impose Schema, dans ce sens que l'element "price" est de type="xs:integer" dans Schema. Lorsque dans le fichier xml, je mets des lettres a price (mle), il l'excute quand meme! Et pourtant il ne devrait pas! Est ce que quelqu'un peut m'aider a regler ce probleme svp?
 
 Voici shiporder.xsd:
---------------------------------------------------------
 
<?xml version="1.0" encoding="ISO-8859-1" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
 
<!-- definition of simple elements -->
<xs:element name="orderperson" type="xs:string"/>
<xs:element name="name" type="xs:string"/>
<xs:element name="address" type="xs:string"/>
<xs:element name="city" type="xs:string"/>
<xs:element name="country" type="xs:string"/>
<xs:element name="title" type="xs:string"/>
<xs:element name="note" type="xs:string"/>
<xs:element name="quantity" type="xs:positiveInteger"/>
<xs:element name="price" type="xs:integer"/>
 
<!-- definition of attributes -->
<xs:attribute name="orderid" type="xs:string"/>
 
<!-- definition of complex elements -->
<xs:element name="shipto">
 <xs:complexType>
  <xs:sequence>
   <xs:element ref="name"/>
   <xs:element ref="address"/>
   <xs:element ref="city"/>
   <xs:element ref="country"/>
  </xs:sequence>
 </xs:complexType>
</xs:element>
<xs:element name="item">
 <xs:complexType>
  <xs:sequence>
   <xs:element ref="title"/>
   <xs:element ref="note" minOccurs="0"/>
   <xs:element ref="quantity"/>
   <xs:element ref="price"/>
  </xs:sequence>
 </xs:complexType>
</xs:element>
 
<xs:element name="shiporder">
 <xs:complexType>
  <xs:sequence>
   <xs:element ref="orderperson"/>
   <xs:element ref="shipto"/>
   <xs:element ref="item" maxOccurs="unbounded"/>
  </xs:sequence>
  <xs:attribute ref="orderid" use="required"/>
 </xs:complexType>
</xs:element>
 
</xs:schema>
 
Et voila shiporder.xml:
-------------------------------------------------------------------------------
 
<?xml version="1.0" encoding="ISO-8859-1"?>
 
<shiporder orderid="889923"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="shiporder.xsd">
 <orderperson>John Smith</orderperson>
 <shipto>
  <name>Ola Nordmann</name>
  <address>Langgt 23</address>
  <city>4000 Stavanger</city>
  <country>Norway</country>
 </shipto>
 <item>
  <title>Empire Burlesque</title>
  <note>Special Edition</note>
  <quantity>1</quantity>
  <price>10.90</price>
 </item>
 <item>
  <title>Hide your heart</title>
  <quantity>1</quantity>
  <price>mle</price>
 </item>
</shiporder>
 
Merci d'avance! Je suis en stage et ce probleme bloque mon travail.
 
 
 

mood
Publicité
Posté le 29-07-2005 à 10:54:17  profilanswer
 

n°1164404
FlorentG
Unité de Masse
Posté le 29-07-2005 à 10:55:02  profilanswer
 

Parce que ton parser ne valide pas le fichier XML face à son Schema...

n°1164411
Diel5
Posté le 29-07-2005 à 11:00:29  profilanswer
 

FlorentG a écrit :

Parce que ton parser ne valide pas le fichier XML face à son Schema...


 
Bien sur! Et c'est ca le probleme. Qu'est ce que je dois faire pour ? J'utilise  nedit pour ecrire mes fichiers et je l'execute sur Netscape 7.0

n°1164414
FlorentG
Unité de Masse
Posté le 29-07-2005 à 11:01:40  profilanswer
 

Netscape étant basé sur FireFox, je crois pas que FireFox connaissent les schémas xsd... Il connait les DTD, c'est tout. Faut que tu trouves un parser qui connaisse l'xsd, peut-être celui de microsoft

n°1164436
Diel5
Posté le 29-07-2005 à 11:09:34  profilanswer
 

FlorentG a écrit :

Netscape étant basé sur FireFox, je crois pas que FireFox connaissent les schémas xsd... Il connait les DTD, c'est tout. Faut que tu trouves un parser qui connaisse l'xsd, peut-être celui de microsoft


 
Ouh la! J'ai alors un gros souci! Dans ma boite on utilise microsoft que pour faire du traitement de texte. Mais est ce que tu peux quand meme me dire comment est ce que je fais pour me choper un parser  XML sur windows ?

n°1164440
FlorentG
Unité de Masse
Posté le 29-07-2005 à 11:11:06  profilanswer
 

http://msdn.microsoft.com/xml/ Dans les downloads, t'as le parser...

n°1167675
avander
Posté le 02-08-2005 à 11:20:47  profilanswer
 

et pour une fois on peut dire qu'ils n'ont pas loupé leur parser chez M$, le MSXML 4 est très costaud, rapide et même dispo en ligne de commande avec l'utilitaire MSXSL.EXE


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  XML/XSL

  Lier les fichiers .xml .xsd .xsl

 

Sujets relatifs
Boucle pour enregistrer plusieur fichiersUpload de gros fichiers sans acces au FTP
Upload de gros fichiers sans acces au FTP[php-Xoops]Probleme de fichiers phpxx.tmp qui saturent le dossier temp
[C] astuces needed, gestion/browsing dans fichiersEditeur hexadecimal : "fusionner" 2 fichiers...
Comparaison d edeux fichiers, formatageRécupérer des fichiers dans un dossier
Connaissez-vous un moyen de lier un .exe à d'autres fichiers?[DJGPP] Quelle commande pour lier des fichiers objets avec LD?
Plus de sujets relatifs à : Lier les fichiers .xml .xsd .xsl


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR