Je vais jouer l'avocat du diable (rien de personnel contre toi, slooptoo):
plus besoin de parsers exotiques
... mais des tas d'API différentes pour accéder à un même contenu.
Qu'est-ce que vous utiliserez pour lire votre fichier XML ?
SAX ? DOM ? ElementTree ? Expat ? 4Suite ? Xerces ? libxml ? MSXML ?...
Chaque parseur a une API différente.
( Et il faut voir la tronche des API... :-/ Rien que pour lire une simple valeur, c'est celuiQuiEcritLeNomDeFonctionLePlusLongAGagné() )
Vous changez de plateforme (langage, OS) ?
Ah flûte, la librairie que vous utilisiez n'existe pas sur la nouvelle plateforme.
Il faut recoder complètement le code qui lit le fichier XML pour utiliser la nouvelle API.
Pouark !
un meme parser simple pour tout
... sauf qu'un parseur XML c'est tout sauf simple (en interne) :-)
(détection fin et début des balises, support des encodages (UTF-8, ISO-8859-1...), détection et conversion des entités (& ...;), prise en compte des espaces inutiles, éventuelle validation contre un schéma...)
Par rapport au parsing d'un fichier tabulaire ou un simple fichier .ini, les parseurs XML consomment nettement plus de mémoire et plus de CPU... pour le même résultat.
enfin xml n est pas un fichier texte, le fichier texte n est qu une 'vue' de la structure xml
Ah... ça fait plaisir de lire ça !
Vraiment.
Il y a si peu de personnes qui comprennent la différence entre une donnée et sa représentation.
(Combien de fois j'ai pu entendre: "Mais moi je veux que ma date elle soit au format français dans ma base de données !")


