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

C# Discussion :

C# Validation XML avec XSD


Sujet :

C#

  1. #1
    Futur Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 13
    Points : 8
    Points
    8
    Par défaut C# Validation XML avec XSD
    Bonjour,

    Cela fait deux jours que je suis sur ce problème. J'aimerais valider mon XML avec un schéma XSD. Jusque là tout va bien j'ai trouvé tout ce qu'il me fallait sur le net. Maintenant le problème est que j'essaie d'avoir un schéma XSD le plus restrictif possible et c'est là que cela commence à se gâter. J'ai vu que dès qu'on ajoutais des "nillable" et des type a tester cela se compliquait. J'ai trouvé qu'il fallait ajouter un attribut "nil=true" dans le XML mais maintenant c'est encore, pire.

    Voici mes exemple XML et XSD, il y aurait-il une âme charitable pour me dire si y'a une solution ou si finalement au lieu de cherche à tester un double je dois juste tester une string (mais on perds en restriction...).

    Mon XML :
    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
    <?xml version="1.0" encoding="utf-8" ?> 
    - <SellerExtranet>
    - <Property Ref="2890">
      <Type>Appartment</Type> 
      <Transaction>Vente</Transaction> 
      <City>ARNAC POMPADOUR</City> 
      <District /> 
      <Surface>50.5</Surface> 
      <Rooms>3</Rooms> 
      <Price>149000.45</Price> 
      <Currency>EUR</Currency> 
      </Property>
    - <Property Ref="19295">
      <Type>House</Type> 
      <Transaction>Location</Transaction> 
      <City>Paris 02</City> 
      <District /> 
      <Surface>84</Surface> 
      <Rooms nil="true" /> 
      <Price>680</Price> 
      <Currency>EUR</Currency> 
      </Property>
    </SellerExtranet>
    Mon 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
    <?xml version="1.0" encoding="utf-8"?>
    <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:element name="SellerExtranet">
        <xs:complexType>
          <xs:sequence>
            <xs:element maxOccurs="unbounded" name="Property">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Type" type="xs:string" />
                  <xs:element name="Transaction" type="xs:string" />
                  <xs:element name="City" type="xs:string" />
                  <xs:element name="District" type="xs:string" />
                  <xs:element name="Surface" type="xs:decimal" />
                  <xs:element name="Rooms" type="xs:unsignedShort" nillable="true" />
                  <xs:element name="Price" type="xs:string" />
                  <xs:element name="Currency" type="xs:string" />
                </xs:sequence>
                <xs:attribute name="Ref" type="xs:unsignedShort" use="required" />
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:schema>
    Et voilà mes erreurs en retour :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Error: L'attribut 'nil' n'est pas déclaré. Error: L'élément 'Rooms' n'est pas valide - La valeur '' n'est pas valide selon son type de données 'http://www.w3.org/2001/XMLSchema:unsignedShort' - La chaîne '' n'est pas une valeur UInt16 valide. Error: L'attribut 'nil' n'est pas déclaré. Error: L'élément 'Rooms' n'est pas valide - La valeur '' n'est pas valide selon son type de données 'http://www.w3.org/2001/XMLSchema:unsignedShort' - La chaîne '' n'est pas une valeur UInt16 valide. Error: L'attribut 'nil' n'est pas déclaré. Error: L'élément 'Rooms' n'est pas valide - La valeur '' n'est pas valide selon son type de données 'http://www.w3.org/2001/XMLSchema:unsignedShort' - La chaîne '' n'est pas une valeur UInt16 valide.
    Voilà en gros. Je vous remercie par avance de votre aide et si vous avez des questions n'hésitez par. J'ai regardé partout sur le net mais je ne trouve vraiment pas la solution...

  2. #2
    Futur Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    Bon voici la réponse à ma question j'avais bien cherché partout mais j'avais pas vu ce post :

    http://www.developpez.net/forums/d37...leme-nillable/

    Voilà, désolé pour le dérangement...

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

Discussions similaires

  1. Validation XML avec XSD provenant d'une BDD
    Par Yoyo17 dans le forum Format d'échange (XML, JSON...)
    Réponses: 0
    Dernier message: 29/10/2012, 09h55
  2. [WD 12] MSXML - validation xml avec xsd externe
    Par nicol9 dans le forum WinDev
    Réponses: 1
    Dernier message: 29/07/2008, 15h08
  3. Valider XML avec XSD
    Par neilbgr dans le forum Langage
    Réponses: 10
    Dernier message: 26/03/2008, 16h01
  4. Validation XML avec un schema XSD
    Par eods dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/05/2006, 14h33
  5. [XSD][xerces] validation xml avec un xsd
    Par chand_bing dans le forum Valider
    Réponses: 2
    Dernier message: 05/02/2004, 20h21

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