Bonjour à tous,

voilà je dispose d'un fichier xml généré sous XML Spy et validé avec un XSD sous xml SPY.

Mon problème : lorsque que je charge cet xml avec Xerces et le même XSD, si j'active la vaidation DOM (XMLUni::fgDOMValidation) dans mon prog c++, alors mon fichier xml n'est pas chargé convenablement.

Fichier xml :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
<toto xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="totoDEBUG.xsd">
	<toto_study>
		<file name="ton">TON</file>
		<file name="teo">TEO</file>
	</toto_study>
</toto>
Fichier xsd :

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
30
31
32
33
34
35
36
37
38
 
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2007 sp1 (http://www.altova.com) by MICHELIN (MICHELIN - USINE DE LADOUX) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="toto">
		<xs:annotation>
			<xs:documentation>Test toto</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="toto_study" type="toto_study_type"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="toto_study_type">
		<xs:annotation>
			<xs:documentation>toto files</xs:documentation>
		</xs:annotation>
		<xs:sequence minOccurs="0" maxOccurs="unbounded">
			<xs:element name="file">
				<xs:complexType>
					<xs:complexContent>
						<xs:extension base="file_type">
							<xs:attribute name="name" type="xs:string" use="required"/>
						</xs:extension>
					</xs:complexContent>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="file_type">
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute name="desc"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
</xs:schema>
arbre xml chargé par xerces si la validation DOM est active :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<toto xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="totoDEBUG.xsd">
 
  <toto_study>
    <file name="ton"/>
    <file name="teo"/>
  </toto_study>
 
</toto>
arbre xml chargé par xerces si la validation DOM n'est pas active :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<toto xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="totoDEBUG.xsd">
	<toto_study>
		  <file name="ton">TON</file>
		  <file name="teo">TEO</file>
	</toto_study>
</toto>
D'après vous, quel peut être l'origine du pb ?
Y a t il une erreur dans mon xml ou mon xsd ?
Est ce que j'utilise mal Xerces ?

merci pour votre aide.

bi²