Bonjour
Malgré la lecture de divers articles sur XML, je ne vois toujours pas comment XML peut prétendre devenir un moyen universel d'échange de données.
L'universalité d'une solution n'est pas innée en soi, elle résulte uniquement de la force de conviction de celui qui promeut ladite solution et la fait adopter par les différents acteurs du marché. En cela, je fais le parallèle avec Java, qui a été extrêmement bien "vendu" par Sun. Le battage, publicitaire plus que technique, avait réussi à provoquer une situation dans laquelle ne pas supporter Java, c'était se coller une étiquette de ringard. Tous les éditeurs ont suivi, alors que, soyons honnêtes, les performances de Java étaient déplorables tant que la compilation à la volée (JIT) n'est pas apparue.
Certes, XML est normalisé par le WC3, lequel regroupe plusieurs centaines de grandes sociétés. Cela dit, des standards morts-nés, on en a vu d'autres...
C'est sur le terrain des performances que XML me rend le plus sceptique. XML, c'est un fait, est verbeux, redondant à l'extrême. Il ne s'en défend d'ailleurs pas, et en fait une caractéristique avouée : La concision dans le balisage de XML est de peu d'importance. (http://babel.alis.com/web_ml/xml/REC-xml.fr.html)
prenant en cela le contrepied d'un principe fondamental des bases de données, consistant à normaliser pour éviter les redondances à tout prix.
XML n'a certes pas pour vocation principale de stocker des données, même s'il permet de le faire à titre accessoire. Et si l'échange de fichiers de quelques Ko ne me cause guère d'inquiétude, je ne vois pas comment la redondance carabinée du format XML pourrait être négligeable, en bande passante comme en puissance ou en temps de traitement, dès lors qu'on parle de Mo ou de centaines de Mo de données.
Dans le domaine de l'EDI par exemple, les entités communicantes sont préalablement identifiées, se mettent d'accord sur un format de données (ce qui est une étape manuelle durant souvent quelques semaines, le temps de développer les interfaces nécessaires) puis échangent des fichiers compacts, peu redondants.
XML prétend pouvoir mettre en communication des entités qui ignoraient une seconde auparavant l'existence l'une de l'autre, et leur permettre d'échanger des données grâce à l'autodescriptivité des structures des données spécifiées dans les DTD.
Bravo XML, mais comment tu fais ?
En bref, si quelqu'un de bien informé peut m'expliquer la raison du parti-pris de la redondance de XML, me démontrer l'inocuité de cette redondance sur les performances et m'illustrer l'efficacité pratique de l'autodescriptivité de XML, je l'en remercie chaleureusement à l'avance.
Partager