Bonjours,

Je suis en train de me créer un standard générale qui a pour objectif finale de faire la gestion d'utilisateur d'un système. Pour débuter tranquillement, j'ai créer un petit schéma ultra-simple qui garde des informations sur des utilisateurs. En voici un exemple:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
<?xml version="1.0" encoding="utf-8?>
 
<users>
  <user>
    <firstname>André</firstname>
    <lastname>Jacques</lastname>
    <username>Drew</username>
    <password type="md5">0398ejf098j9f8ja9w8jf2</password>
  </user>
</users>
J'ai donc crée mon schéma comme suit :

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
 
<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsi="blabla">
  <xsd:element name="users">
    <xsd:complexType>
      <xsd:element name="user">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="firstname" type="xsd:string" />
            <xsd:element name="lastname" type="xsd:string" />
            <xsd:element name="username" type="xsd:string" />
            <xsd:element name="password" type="xsd:string" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>
Mais voilà, je ne sais pas comment déclarer comme il se doit l'attribut "type" de ma balise "password". J'ai essayé :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
          <xsd:element name="password" type="xsd:string" />
          <xsd:attribute name="type" type="xsd:string" />
J'ai une erreur dans le validateur (http://tools.decisionsoft.com/schemaValidate/). J'ai essayé :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
          <xsd:element name="password" type="xsd:string">
            <xsd:attribute name="type" type="xsd:string" />
          </xsd:element>
Encore une erreur. Ensuite j'ai essayé

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
          <xsd:element name="password" type="xsd:string">
            <xsd:complexType>
              <xsd:attribute name="type" type="xsd:string" />
            </xsd:completType>
          </xsd:element>
Encore une erreur. Je suis désespérer : je peux le faire avec une DTD, mais j'aime mieux les possibilités d'XML Schema car j'ai bien l'intention d'ajouter des éléments dans mon standard : j'aimerais y ajouter des éléments lié au communication et au droit d'accès du système.

Merci

Drew