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 - probleme pour gerer un attribute


Sujet :

Valider XML

  1. #1
    Invité
    Invité(e)
    Par défaut XSD - probleme pour gerer un attribute
    Bonjour tout le monde

    J'ai (une fois de plus) un petit souci avec les schema XSD. J'aimerai ajouter un attribute a un element, mais j'ai beau modifier le code dans tous les sens, impossible d'avoir un XSD valide suite a ca

    Code du 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
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ia="urn:ItemAny" targetNamespace="urn:ItemAny" elementFormDefault="qualified">
    	<!-- Elements et attributs simples de base -->
    	<xsd:group name="basic-elements">
    		<xsd:sequence>
    			<xsd:element name="name" type="xsd:string"/>
    			<xsd:element name="desc" type="xsd:string" minOccurs="0"/>
    		</xsd:sequence>
    	</xsd:group>
    	<xsd:group name="authentification-elements">
    		<xsd:sequence>
    			<xsd:element name="userId" type="xsd:positiveInteger"/>
    			<xsd:element name="appAuth" type="xsd:string"/>
    			<xsd:element name="appPass" type="xsd:string"/>
    		</xsd:sequence>
    	</xsd:group>
    	<xsd:group name="object-elements">
    		<xsd:sequence>
    			<xsd:element name="param" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
    		</xsd:sequence>
    	</xsd:group>
    	<xsd:attributeGroup name="basic-attributes">
    		<xsd:attribute name="id" type="xsd:positiveInteger" use="optional"/>
    		<xsd:attribute name="name" type="xsd:positiveInteger" use="optional"/>
    	</xsd:attributeGroup>
     
    	<!-- Definition des elements -->
    	<xsd:complexType name="type-object">
    		<xsd:sequence>
    			<xsd:group ref="ia:basic-elements"/>
    			<xsd:group ref="ia:object-elements"/>
    		</xsd:sequence>
    		<xsd:attributeGroup ref="ia:basic-attributes"/>
    	</xsd:complexType>
    	<xsd:complexType name="type-collection">
    		<xsd:sequence>
    			<xsd:group ref="ia:basic-elements"/>
    			<xsd:element name="objects">
    				<xsd:complexType>
    					<xsd:sequence>
    						<xsd:element name="object" type="ia:type-object" maxOccurs="unbounded"/>
    					</xsd:sequence>
    				</xsd:complexType>
    			</xsd:element>
    		</xsd:sequence>
    		<xsd:attributeGroup ref="ia:basic-attributes"/>
    	</xsd:complexType>
     
    	<!-- Elements racine -->
    	<xsd:element name="collections">
    		<xsd:complexType>
    			<xsd:sequence>
    				<xsd:group ref="ia:authentification-elements"/>
    				<xsd:element name="collection" type="ia:type-collection" maxOccurs="unbounded"/>
    			</xsd:sequence>
    		</xsd:complexType>
    	</xsd:element>
    </xsd:schema>
    Code 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
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <ia:collections xsi:schemaLocation="urn:ItemAny doctype.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ia="urn:ItemAny">
    	<ia:userId>1092835097</ia:userId>
    	<ia:appAuth>testAppli</ia:appAuth>
    	<ia:appPass>testPassAppli</ia:appPass>
    	<ia:collection id="1">
    		<ia:name>un nom</ia:name>
    		<ia:desc>une description</ia:desc>
    		<ia:objects>
    			<ia:object>
    				<ia:name>nom objet</ia:name>
    				<ia:desc/>
    				<ia:param name="Titre par exemple">Value du name, dynamic</ia:param>
    			</ia:object>
    		</ia:objects>
    	</ia:collection>
    </ia:collections>
    Le parametre que je n'arrive a faire accepter au XSD est souligne en rouge... Quelqu'un aurait-il une idee ? Merci d'avance

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 19
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <xsd:element name="param">
    		<xsd:complexType>
    			<xsd:simpleContent>
    				<xsd:extension base="xsd:string">
    					<xsd:attribute name="name" type="xsd:string" use="required" />
    				</xsd:extension>
    			</xsd:simpleContent>
    		</xsd:complexType>
    </xsd:element>
    Remplace ta déclaration de l'élément param par ceci.

Discussions similaires

  1. [XL-2013] Une solution a mon probleme pour gerer les doublons dans excel 2013
    Par Farouk2015 dans le forum Excel
    Réponses: 3
    Dernier message: 09/01/2015, 22h44
  2. attribut xsd problem
    Par yassirjanati dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 22/09/2011, 09h18
  3. Problème pour gérer des fenêtres
    Par pouette13 dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 26/07/2007, 12h27
  4. Réponses: 4
    Dernier message: 13/11/2006, 09h54
  5. Shell - Problème pour gérer les majuscules et minuscules
    Par claralavraie dans le forum Linux
    Réponses: 6
    Dernier message: 11/01/2006, 17h17

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