Problème de validation avec namespace
Bonjour,
J'essaye de valider le fichier xml suivant :
Code:
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
| <xml>
<sioc:Forum xmlns:dcterms="http://purl.org/dc/terms/"
xsi:schemaLocation="confirmation.xsd"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:sioc_t="http://rdfs.org/sioc/types#"
xmlns:sioc="http://rdfs.org/sioc/ns#"
xmlns="http://www.w3schools.com">
<dc:title> title </dc:title>
<dcterms:created> date </dcterms:created>
<dcterms:description> text </dcterms:description>
<sioc:Post>
<sioc:id>9</sioc:id>
<sioc:creator_of>user_id</sioc:creator_of>
<sioc:content>contenu du message</sioc:content>
<marks>
<number_of_marks>1</number_of_marks>
<average>2.5</average>
</marks>
</sioc:Post>
<sioc:Post>
<sioc:id>10</sioc:id>
<sioc:creator_of>user_id</sioc:creator_of>
<sioc:content>contenu du message</sioc:content>
<marks>
<number_of_marks>2</number_of_marks>
<average>1.5</average>
</marks>
</sioc:Post>
</sioc:Forum>
</xml> |
avec le xml schema suivant
Code:
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
|
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:sioc_t="http://rdfs.org/sioc/types#"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:sioc="http://rdfs.org/sioc/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<xs:element ref='sioc:Forum'/>
<xs:complexType name="ForumType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" ref="dcterms:title" />
<xs:element ref="dcterms:created" minOccurs="0" maxOccurs="1"/>
<xs:element minOccurs="0" maxOccurs="1" ref="dcterms:description" />
</xs:sequence>
</xs:complexType>
<xs:complexType name='PostType'>
<xs:sequence>
<xs:element ref="sioc:id" minOccurs="1" maxOccurs="1"/>
<xs:element ref="sioc:creator_of" minOccurs="1" maxOccurs="1"/>
<xs:element minOccurs="1" maxOccurs="1" ref="sioc:content" />
<xs:element name="marks" type="MarkType" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="MarkType">
<xs:sequence>
<xs:element name="number_of_marks" type="xs:integer" minOccurs="0" maxOccurs="1"/>
<xs:element name="average" type="xs:float" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:schema> |
Seulement j'ai du mal à bien cerner la notion de namespace(du moins j'ai du mal à la mettre en place), du coup j'ai vraiment du mal définir les bons namespaces.
Je me retrouve avec des erreurs de ce type : The target namespace must not match 'http://www.w3.org/2001/XMLSchema-instance'
ou sinon mes éléments dans le xsd ne "match" pas avec ceux du xml.
Me manque-t'il quelque chose dans mes déclarations? ou bien je dois revoir tout mon fichier?