Bonjour à tous!
Après avoir énormément paufiné les cours sur XPath (encore merci pour le nom!) j'ai pu modifier directement tout un tas de contrôle et de calculs qui était réalisé par un code en VB (division, valeurs conditionnées par des IF ou des Choose, tests sur balises vides, etc.).
Mon fichier XML de sortie est donc vraiment pas mal! Par contre, avant traitement final, il doit passer par un fichier XSD (non modifiable). Et dans ce fichier XSD, l'ordre des balises doit impérativement être respecté.
J'ai tenté d'agencer les balises "template" du XSL pour répondre à l'ordre attendu par le XSD, mais je me suis aperçu que ce n'est pas l'ordre du template qui importe, mais celui du fichier XML d'entrée.
Du coup, quelle est la meilleure solution pour remettre les balises dans l'ordre attendu par le XSD?
- Remodifier le fichier XML par le code VB (ouch...)?
- Repasser par un nouveau XSL?
- Autre (encore une fois, avec tout qui se mélange dans ma tête, j'ai du mal à envisager d'autres solutions)?
Merci d'avance pour le coup de main
Un petit exemple:
Fichier d'entrée:
Fichier de sortie:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <NOM>DUPOND</NOM> <PRENOM>Jean</PRENOM>
Ordre dans le fichier XSD:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <NOM>DUPOND</NOM> <PersonID>DUPOND Jean</PersonID> <PRENOM>Jean</PRENOM>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <xs:all> <xs:element type="xs:string" name="PRENOM"/> <xs:element type="xs:string" name="NOM"/> <xs:element type="xs:string" name="PersonID"/> </xs:all>
Partager