Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Lecture d'un fichier XML

4 réponses
Avatar
teddy
Bonjour,

J'ai une petite partie d'un fichier XML qui me pose un problème.
Avec un script d'analyse (parser), j'extrais les données contenues dans les balises.
Ca marche bien pour 95% du fichier.
Il y a une partie du fichier (à la fin) dont les balises n'ont pas de nom ce qui fait que mon parser
les confond toutes comme 2 balises dont l'une serait nommée "icfresultats", l'autre nommée
"icfcomplements" :

<icf:controles>
<icf:resultats>
<icf:resultat id="Adresse" label="L'adresse n'a pas pu être retrouvée." type="NOK" code="-501"/>
<icf:resultat id="Flexibilite" label="AB exacte." type="OK" code="0"/>
<icf:resultat id="Facturation" type="OK" code="0"/>
</icf:resultats>
<icf:complements>
<icf:complement ref="Adresse" label="l'adresse ne correspond pas à une adresse connue."/>
<icf:complement ref="Flexibilite" label="Info additionnelles: RZRAT=PHA; Code Commune
RZRAT=75000;"/>
<icf:complement ref="Facturation" label="facturation valide ."/>
</icf:complements>
</icf:controles>

Est-ce que ces balises sont correctes ou bien mon parser est à revoir ?
Je crois que le nom d'une balise n'est pas obligatoire si on fait référence à un schéma via par
exemple un lien genre xmlns: controles=http://www.azerty.com ?
Les doc du W3C sont lourds et pas finalisés pour le XML.

Merci à tous pour votre avis.
(la question a été précédemment posée sur microsoft.public.fr.xml sans aucune réponse, ce forum est
d'ailleurs complètement déserté !)

Teddy

4 réponses

Avatar
MC
Bonsoir !

Pour valider des fichiers XML, un moyen classique, c'est d'utiliser
XMLlint.exe ; une petite recherche sur Google te donnera des adresses.

--
@-salutations

Michel Claveau
Avatar
teddy
Merci pour l'info.

XMLlint.exe est un outil de l'éditeur ULTRAEDIT V12 (c)IDM Computer.
J'utilise parfois cet éditeur pour analyser et modifier des gros fichiers de
données (extrait de tables de base Oracle).
XMLlint.exe permet effectivement le contrôle de la structure des fichiers
XML mais les résultats produits sont assez abscons.
D'autre part, des posts dans le newsgroup dédié à l'éditeur semblent
indiquer que l'outil est bugué.

Si vous avez d'autres suggestions, je suis preneur...

Teddy



"MC" a écrit dans le message de news:

Bonsoir !

Pour valider des fichiers XML, un moyen classique, c'est d'utiliser
XMLlint.exe ; une petite recherche sur Google te donnera des adresses.

--
@-salutations

Michel Claveau




Avatar
Méta-MCI
Salut !

Xmllint est un utilitaire développé, au départ, par xmlsoft.org,
conjointement aux librairies Libxml et LibXml2 (il a d'ailleurs besoin de
cette dernière).

Il se peut qu'UltraEdit l'utilise, vu qu'il est sous licence libre.

Je ne sais pas qui a fait le portage sous windows.

Un problème de xmllint, c'est qu'il s'arrète à la première erreur trouvée.
Un autre problème, c'est d'avoir la dernière version.

Mais, xmllint est considéré comme un des meilleurs outils de validation de
fichiers XML. Du coup, si ton fichier est sans erreur, tu es tranquille.

@+

Michel Claveau
Avatar
teddy
Alors le portage de Xmllint sous UltraEdit V12.20b n'est pas une réussite
même si le fichier XML que je teste semble apparemment mal construit dans sa
dernière partie.
En effet, il m'indique qu'il y a des erreurs et finit par : not validate


Je vais voir ce que l'on trouve sur xmlsoft.org

Merci pour l'info.




"Méta-MCI" a écrit dans le message de
news: 45c9e1ff$1$25940$
Salut !

Xmllint est un utilitaire développé, au départ, par xmlsoft.org,
conjointement aux librairies Libxml et LibXml2 (il a d'ailleurs besoin de
cette dernière).

Il se peut qu'UltraEdit l'utilise, vu qu'il est sous licence libre.

Je ne sais pas qui a fait le portage sous windows.

Un problème de xmllint, c'est qu'il s'arrète à la première erreur trouvée.
Un autre problème, c'est d'avoir la dernière version.

Mais, xmllint est considéré comme un des meilleurs outils de validation de
fichiers XML. Du coup, si ton fichier est sans erreur, tu es tranquille.

@+

Michel Claveau