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

  FORUM HardWare.fr
  Programmation
  XML/XSL

  Syntaxe XSD spécifique

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Syntaxe XSD spécifique

n°1403966
hammett
Posté le 10-07-2006 à 16:02:55  profilanswer
 

Bonjour,
 
Je suis en train de créer un XSD pour valider un flux XML..  
J'ai un problèlme dans la rédaction de mon XSD.. Il y'a un  
cas que je n'arrive pas à spécifier :
 

Code :
  1. <tutu attrib="blabla">oui</tutu>


 
Donc tutu est un élément possèdant un attribut attrib (qui dans certain cas n'a pas de restriction et dans l'autre en a).. Par contre l'element tutu ne peut avoir que les valeurs 'oui' ou 'non'...
Soit en DTD :
 

Code :
  1. <!ELEMENT tutu (oui|non)>
  2. <!ATTLIST tutu attrib #PCDATA #REQUIRED>


 
ou bien :  
 

Code :
  1. <!ELEMENT tutu (oui|non)>
  2. <!ATTLIST tutu attrib (1|0) #REQUIRED>


 
Comment puis je traduire cela dans mon schéma XSD ??  
Merci !
 

mood
Publicité
Posté le 10-07-2006 à 16:02:55  profilanswer
 

n°1404052
hammett
Posté le 10-07-2006 à 16:58:00  profilanswer
 

Personne ?

n°1404367
hammett
Posté le 11-07-2006 à 09:32:34  profilanswer
 

Yup ! :whistle:

n°1404401
tegu
Posté le 11-07-2006 à 10:30:38  profilanswer
 

Vite fait je verrais un truc du genre

<simpleType name="boolStringType">
  <restriction base="string">
    <enumeration value="oui" />
    <enumeration value="non" />
  </restriction>
</simpleType>
 
<element name="tutu" type="boolStringType">
  <complexType>
    <attribute name="attrib" type="string" />
  </complexType>
</element>


 
edit: oups j'avais pas vu le « attrib (1|0) #REQUIRED » je vais adapter


Message édité par tegu le 11-07-2006 à 10:32:29
n°1404407
tegu
Posté le 11-07-2006 à 10:37:13  profilanswer
 

Ça devrait mieux correspondre à toutes les régles que tu as précisées, mais je ne suis pas un expert en XSD.

<xsd:simpleType name="boolStringType">
  <xsd:restriction base="xsd:string">
    <xsd:enumeration value="oui" />
    <xsd:enumeration value="non" />
  </xsd:restriction>
</xsd:simpleType>
 
<xsd:simpleType name="boolType">
  <xsd:restriction base="xsd:integer">
    <xsd:enumeration value="0" />
    <xsd:enumeration value="1" />
  </xsd:restriction>
</xsd:simpleType>
 
<xsd:element name="tutu" type="boolStringType">
  <xsd:complexType>
    <xsd:attribute name="attrib" type="booType" use="required" />
  </xsd:complexType>
</xsd:element>
 


Message édité par tegu le 11-07-2006 à 10:38:13
n°1404452
hammett
Posté le 11-07-2006 à 11:20:41  profilanswer
 

Oki merci ! Je vais tester ca...

n°1404537
tegu
Posté le 11-07-2006 à 13:09:04  profilanswer
 

Dans mon deuxième exemple j'utilise le préfixe xsd: parceque j'ai l'habitude de travailler comme ça, mais tu dois pouvoir t'en passer comme dans mon 1e exemple


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

  Syntaxe XSD spécifique

 

Sujets relatifs
erreur de syntaxeSyntaxe inconnue
[ASP.NET][Resolu] Erreur de syntaxe sur un INSERT INTOConvertisseur txt-binaire spécifique
<input type="text"> spécifiquethread écoutant hal (spécifique à linux)
Probleme syntaxe thread librairie pthreadSyntaxe PL/SQL
[Résolu] probleme de syntaxe *&Petite question de syntaxe sur for
Plus de sujets relatifs à : Syntaxe XSD spécifique


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)