Problème validation xml schema
Bonjour, je souhaite valider mon fichier xml grâce à un xmlschema.
Je viens de m'y mettre alors je ne m'y connais pas trop, voici mon problème :
Failed to invoke method parse in class org.exist.xmlrpc.RpcConnection: org.xml.sax.SAXParseException: cvc-complex-type.3.2.2: Attribute 'id_auteur' is not allowed to appear in element 'auteur'.
Apparemment mon Xmlschema m'interdit d'ajouter un attribut à l'élément auteur ... Est ce que quelqu'un pourrait me dire pourquoi ?
Fichier xsd :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
<xsd:element name="Bibliotheque">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="auteurs">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" name="auteur">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="nom" type="xsd:string" />
<xsd:element name="prenom" type="xsd:string" />
<xsd:element name="date_naissance" type="xsd:dateTime" />
<xsd:element name="id_livre" maxOccurs="unbounded" type="xsd:IDREF" />
</xsd:sequence>
<xsd:attribute name="id_auteur" type="xsd:ID" />
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
....
</Bibliotheque> |
Fichier xml :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
<?xml version="1.0" encoding="iso-8859-1"?>
<Bibliotheque xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://localhost:8080/exist/test/test.xsd">
<auteurs>
<auteur id_auteur = "a1">
<nom>Hugo</nom>
<prenom>Victor</prenom>
<date_naissance>1696-09-01T00:00:00Z</date_naissance>
<id_livre>l1</id_livre>
<id_livre>l2</id_livre>
</auteur>
... |
J'avais aussi essayer avec des refs et j'ai eu le même problème, quelque chose doit être mal écrit.
Par ailleurs j'ai quelques questions, à la base cette id_auteur apparaissait en tant qu'élément dans mon élément "auteur". Est ce que le fait de le passer en attribut donne un avantage ? (niveau accès ou autres)
Merci pour votre aide !