Creer un schema XSD valide
Bonjour tout le monde,
Devant permettre a differents systemes de pouvoir communiquer avec une base de donnees unique, j'ai monte un petit serveur REST, et je dois definir un schema XML pour les echanges qui se feront, vous l'avez devine, en XML...
Le souci c'est qu'en voulant le valider ici j'obtiens regulierement des erreurs, alors que mon schema me semble correct en le comparant a ce que founit la doc du W3C...
Si quelqu'un avait une petite idee pour me debloquer...
Merci d'avance :)
Schema
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:ItemAny"
xmlns:ia="urn:ItemAny"
elementFormDefault="qualified">
<!-- Elements simples de base -->
<xsd:element name="userId" type="xsd:positiveInteger" />
<xsd:element name="id" type="xsd:positiveInteger" />
<xsd:element name="name" type="xsd:string" />
<xsd:element name="desc" type="xsd:string" />
<xsd:element name="created" type="xsd:date" />
<xsd:element name="appAuth" type="xsd:string" />
<xsd:element name="appPass" type="xsd:string" />
<!-- Balises complexes, encapsulantes -->
<xsd:complexType name="object">
<xsd:sequence>
<xsd:attribute ref="ia:id" use="optionnal" />
<xsd:element ref="ia:name" />
<xsd:element ref="ia:desc" minOccurs="0" maxOccurs="1" />
<xsd:element ref="ia:param" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="objects">
<xsd:sequence>
<xsd:element ref="ia:object" use="required" minOccurs="1" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="collection">
<xsd:sequence>
<xsd:attribute ref="ia:id" use="optionnal" />
<xsd:element ref="ia:name" />
<xsd:element ref="ia:desc" minOccurs="0" maxOccurs="1" />
<xsd:element ref="ia:objects" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="collections">
<xsd:sequence>
<xsd:element ref="ia:collection" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="itemAny">
<xsd:sequence>
<xsd:element ref="ia:collections" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:schema> |
Et les erreurs renvoyees par le site:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
file:/usr/local/XSV/xsvlog/tmppBCiF9uploaded:18:4: Invalid per cvc-complex-type.1.2.4:
element {http://www.w3.org/2001/XMLSchema}:attribute not allowed here (1) in element {http://www.w3.org/2001/XMLSchema}:sequence, expecting [{http://www.w3.org/2001/XMLSchema}:annotation,$,{http://www.w3.org/2001/XMLSchema}:element,{http://www.w3.org/2001/XMLSchema}:group,{http://www.w3.org/2001/XMLSchema}:choice,{http://www.w3.org/2001/XMLSchema}:sequence,{http://www.w3.org/2001/XMLSchema}:any]:
file:/usr/local/XSV/xsvlog/tmppBCiF9uploaded:18:4: Invalid per cvc-complex-type.1.3: undeclared attribute {None}:use
file:/usr/local/XSV/xsvlog/tmppBCiF9uploaded:18:4: Invalid per cvc-complex-type.1.3: undeclared attribute {None}:ref
file:/usr/local/XSV/xsvlog/tmppBCiF9uploaded:18:4: Invalid per cvc-complex-type.1.4: required attribute {None}:name not present
file:/usr/local/XSV/xsvlog/tmppBCiF9uploaded:19:4: Invalid per cvc-complex-type.1.3: undeclared attribute {None}:ref
file:/usr/local/XSV/xsvlog/tmppBCiF9uploaded:19:4: Invalid per cvc-complex-type.1.4: required attribute {None}:name not present
file:/usr/local/XSV/xsvlog/tmppBCiF9uploaded:20:4: Invalid per cvc-complex-type.1.3: undeclared attribute {None}:minOccurs
file:/usr/local/XSV/xsvlog/tmppBCiF9uploaded:20:4: Invalid per cvc-complex-type.1.3: undeclared attribute {None}:maxOccurs
[...] |