Bonjour,
Je dois constituer un fichier XML répondant à un fichier XSD et comme je suis total débutant, je me heurte à un soucis que je ne comprend pas.
J'arrive bien à constituer le fichier, mais si je ne met pas un attribut xmlns="" à chaque element, les éditeurs que j'ai utilisés refusent de valider le document.
J'ai raccoucis le XSD au max pour expliquer le problème :
exemple de fichier
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"?> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/EprImport" xmlns:tns="http://www.example.org/EprImport" elementFormDefault="unqualified"> <complexType name="epr"> <sequence> <element name="pat_age" minOccurs="0" maxOccurs="1"> <simpleType> <restriction base="int"> <minInclusive value="1"></minInclusive> <maxInclusive value="999"></maxInclusive> </restriction> </simpleType> </element> </sequence> </complexType> <element name="ImportEPR" type="tns:epr"></element> </schema>
En l'état ça valide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <?xml version="1.0" encoding="utf-8" ?> <ImportEPR xsi:schemaLocation="http://www.example.org/EprImport C:\Users\Gabriel\Downloads\XML\EprImport0.xsd" xmlns="http://www.example.org/EprImport" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <pat_age xmlns="">55</pat_poids> </ImportEPR>
Si je supprime l'attribut xmlns="" de pat_age, ça ne valide plus.
Peut-être est-ce l'entête de mon XML ou une maladresse dans le XSD qui m'a été fourni.
Que faire pour ne plus rendre cet attribut obligatoire ?
Les attributs de l'élément ImportEPR ont été ajouté par EditriX lorsque je veux lier le XSD au XML.
Et visible ces attributs sont aussi utile à VisualStudio, car si je les supprime VisualStudio accepte tout et n'importe quoi comme élément.
Bref j'aimerais bien en simplifiant soit le XSD soit le XML faire fonctionner la validation de l'un ou l'autre de ces éditeurs sans obliger à cet attribut vide.
Merci de l'aide que vous pourrez m'apporter.
Partager