bonjour
j'ai un fichier XMLde ce format :
Code :

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
 <System NAME="aircraft">
 <Model ID="apache">
		 <div style="margin-left:40px"><Model3D>AAAA</Model3D></div>		<div style="margin-left:40px"><ConfigurationFile>BBBB</ConfigurationFile></div> </Model>
 <DefaultModel>
		<div style="margin-left:40px"><Model3D>AAAA</Model3D></div>		<div style="margin-left:40px"><ConfigurationFile>BBBB</ConfigurationFile></div>	</DefaultModel>
 </System>
 
 <System NAME="BOAT">
 <Model ID="Ferry">
		 <div style="margin-left:40px"><Model3D>CCCC</Model3D></div>		<div style="margin-left:40px"><ConfigurationFile>DDDD</ConfigurationFile></div> </Model>
 <DefaultModel>
		<div style="margin-left:40px"><Model3D>CCCC</Model3D></div>		<div style="margin-left:40px"><ConfigurationFile>DDDD</ConfigurationFile></div>	</DefaultModel>
 </System>
 
 
	<DefaultSystem>
 <DefaultModel>
		<div style="margin-left:40px"><Model3D>AAAA</Model3D></div>		<div style="margin-left:40px"><ConfigurationFile>BBB</ConfigurationFile></div>	</DefaultModel>
 </DefaultSystem>

j'ai fais un programme en c qui li ce fichier xml et qui retourne le contenu de ces deux balises :
Model3D et ConfigurationFile
, on lui passant ces deux paramétrés:
le NAME du system et le ID du model.
pour le moment ça marche.
voici l'algorithme:

entrer NAME et ID;
si NAME existe
si ID existe
retourne Model3D et ConfigurationFile
sinon
retourne DefaultModel
sinon
retourne DefaultSystem.

mais comme vous remarquez, il y a des répétitions
exemple:
dans <System NAME="aircraft"> </System>
le <Model ID="apache"> et <DefaultModel> et <DefaultSystem> contiennent les mêmes valeurs.
Question:
Est ce que il n'y a pas une méthode pour éviter cette répétition?
par exemple:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
<System NAME="aircraft">
<Model ID="apache">
<Model3D>AAAA</Model3D>
<ConfigurationFile>BBBB</ConfigurationFile>
</Model>
<DefaultModel ref="apache"> </DefaultModel>
</System>
....
<DefaultSystem ref="aircraft">
</DefaultSystem>