Bonjour, je me prends la tête avec l'imbitable grammaire XSD sur un truc simple. J'ai besoin de doc XML de la sorte :
Voici le schéma que j'ai tenté :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <notes> --> c'est la racine donc une seule occurrence et pas de données dedans. <note utilisateur="tartempion" horodatage="2017-01T01:20:33:44"> --> c'est un ensemble non limité de notes avec comme attribut un nom d'utilisateur et une date heure de postage bla bla bla --> le contenu de la note elle même </note> <note utilisateur="tduchemol" horodatage="2017-02-13T11:12:13"> lkedzj pùzef EZAFR ùpoezafr w!setj </note> </notes>
Sauf que ça marche pas.... Quand j'essaye de valider ceci :
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 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://XSpace.com/ODS" xmlns="http://XSpace.com/ODS" elementFormDefault="qualified"> <xs:annotation> <xs:documentation xml:lang="en"> Purchase order schema for Example.com. Copyright 2000 Example.com. All rights reserved. </xs:documentation> </xs:annotation> <xs:element name="notes" type="XMLnotes"/> <xs:complexType name="XMLnotes"> <xs:sequence> <xs:element name="notes" minOccurs="0" maxOccurs="1" type="ALLnotes"/> </xs:sequence> </xs:complexType> <xs:complexType name="ALLnotes"> <xs:sequence> <xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="xs:string"/> </xs:sequence> <xs:attribute name = "horodatage" type = "xs:dateTime"/> <xs:attribute name = "utilisateur" type = "xs:string"/> </xs:complexType> </xs:schema>
Il me répond : Validation XML*: déclaration introuvable pour l'élément 'notes'. Emplacement*: /*:notes[1]
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 '<notes> <note horodatage ="2016-01-01T11:21:33" utilisateur = "tartempion"> bla bla bla </note> </notes>'
Merci de me dire ce qui ne va pas !
A +
Partager