Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

XML fête ses 15 ans
Que pensez-vous de l'avenir du format d'échange de données face à l'essor de JSON ?

Le , par Hinault Romaric

9PARTAGES

7  0 
XML (eXtensible Markup Language), le format d'échange de données entre différents systèmes et plateformes fête ses 15 ans cette semaine.

Lancé en février 1998 comme une recommandation du W3C, le langage de balisage extensible a été rapidement adopté pour l’échange des données sur le Web.

Jean Paoli, cocréateur de la spécification XML 1.0 et désormais responsable de division Microsoft Open Technologies, exprime, dans un billet de blog, sa satisfaction face au succès du standard. « Je n’aurais jamais imaginé il y a 15 ans que nous réussirions notre rêve de disposer d’un moyen d’échange libre des données entre différentes plateformes et désormais à travers divers dispositifs et le Cloud. Pour moi, cela a été le début de la révolution de l’ouverture », écrit Paoli.

Malgré ce succès, XML présente plusieurs défauts, surtout son caractère verbeux, le rendant trop lourd et peu adapté pour les échanges entre les dispositifs à ressources limitées comme les smartphones et les tablettes.

Des faiblesses qu’on ne trouve pas du côté du format JSON, qui est de plus en plus utilisé comme format d’échange de données par plusieurs organisations et dont la prise en charge est désormais effective dans la plupart des langages de programmation.

S’il est clair que le Web s’oriente beaucoup plus vers JSON, XML reste très pratique pour certains scénarios et « sa capacité unique de représenter des documents de façon homogène sera encore importante pour les 15 prochaines années », d’après Paoli.

Quoi qu'il en soit, en tant que développeurs, nous saisissons l’occasion pour souhaiter bon anniversaire à XML.

Source : Billet de blog de Jean Paoli

Et vous ?

Quel format utilisez-vous pour l'échange de données dans vos applications ?

Pensez-vous que l'avenir du XML soit menacé par l’essor de JSON ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Uther
Expert éminent sénior https://www.developpez.com
Le 15/02/2013 à 20:40
Citation Envoyé par Hinault Romaric Voir le message
Quel format utilisez-vous pour l'échange de données dans vos applications ?
XML si le fait que ça soit lisible peut-être utile. Binaire sinon.

Citation Envoyé par Hinault Romaric Voir le message
Pensez-vous que l'avenir du XML soit menacé par l’essor de JSON ?
J'ai du mal a voir en quoi le JSON menacerait le XML. Les deux peuvent très bien vivre ensemble.

Personnellement je trouve JSON à l'image de son papa le JavaScript : pratique pour faire rapidement de petit truc mais une horreur des que les choses se compliquent.
Et quitte a faire quelque-chose d'illisible, je préfère un format binaire bien mieux optimisé, en taille et performance.
3  0 
Avatar de ulspider
Membre éprouvé https://www.developpez.com
Le 16/02/2013 à 0:20
Si l'on regarde uniquement du point de vue des échanges de données, le JSON domine le XML. Plus concis, moins verbeux...

Mais avec le XML il faut aussi prendre en compte :
  • XSL : Pour mettre en forme ou transformer un document XML. Bien pratique de pouvoir adapter à la voler un document qui ne correspond pas à une structure donnée.
  • XSD : Permet de définir la structure d'un XML. Bien plus facile de valider un XML que des données contenus dans un JSON.
  • XPath et XQuery : Du requêtage sur un ou des documents XML. Plus facile de récupérer des données dans un XML et de faire des calculs puissants sans bibliothèques annexes. (Agrégat, Tri, Filtrage...)
  • ...


Bref, le XML n'est que la partie immergée d'un vaste monde
3  0 
Avatar de Traroth2
Membre chevronné https://www.developpez.com
Le 18/02/2013 à 14:36
XML et JSON n'ont pas le même point de vue sur l'information. JSON est un format d'échange d'objets entre applications, alors que XML est un format de meta-document permettant de représenter n'importe quel type d'information de manière structurée.
2  0 
Avatar de thelvin
Modérateur https://www.developpez.com
Le 15/02/2013 à 15:26
Pour l'échange de données, c'est plutôt du JSON ou du protocol buffer dans les cas extrêmes.
XML me sert à représenter mes données de type documentaire, qui ont plus vocation à rester stockées là qu'à être échangées.

Je pense que XML n'a jamais été adapté pour les données simples, et que JSON aurait dû exister bien avant. Mais à l'époque, bien sûr, on avait pas le recul pour faire la différence. JSON sert pour la plupart des besoins, et XML pour ce que JSON ne peut pas faire.
3  2 
Avatar de alex_vino
Membre émérite https://www.developpez.com
Le 15/02/2013 à 17:51
et XML pour ce que JSON ne peut pas faire
Faut pas trop pousser le bouchon non plus... a cette vitesse tu va traiter XML de fardeau
XML bénéficie d'une excellente intégration avec les languages de programmation + frameworks, JSON beaucoup moins (ou parfois il faut payer tres cher pour des outils qui ne marchent pas toujours).
En parlant Web, Google (ainsi que ses concurrents) requiert des fichiers XML pour les sitemaps, Shopping, ... comme quoi.

Si tu dit que XML est meilleur pour le stockage alors je serais content de savoir quels sont tes arguments, parce que si tu dis que JSON est bien meilleur pour les échanges alors pourquoi devoir utiliser XML qui est plus gourmand en espace disque (pas top pour le stockage).
1  0 
Avatar de thelvin
Modérateur https://www.developpez.com
Le 15/02/2013 à 18:28
Citation Envoyé par alex_vino Voir le message
XML bénéficie d'une excellente intégration avec les languages de programmation + frameworks, JSON beaucoup moins (ou parfois il faut payer tres cher pour des outils qui ne marchent pas toujours).
Ben, ça fait partie des choses que JSON ne peut pas faire. Your point?

Citation Envoyé par alex_vino Voir le message
En parlant Web, Google (ainsi que ses concurrents) requiert des fichiers XML pour les sitemaps, Shopping, ... comme quoi.
Ouais enfin le besoin d'extensivité ne pisse pas loin pour ces trucs-là. C'est du XML parce pour ce genre de trucs ça n'a pas d'importance, que JSON n'existait pas, et que le CSV maintient une culture d'incompétence crasse qui complique de mettre tout le monde d'accord.

Citation Envoyé par alex_vino Voir le message
Si tu dit que XML est meilleur pour le stockage alors je serais content de savoir quels sont tes arguments, parce que si tu dis que JSON est bien meilleur pour les échanges alors pourquoi devoir utiliser XML qui est plus gourmand en espace disque (pas top pour le stockage).
Pas pour "le stockage." Pour "des choses qui sont faites pour rester là sans bouger." Des documents, des pages, des données détaillées, organisées, et fortement extensibles.

JSON :
- est illisible dès qu'on met plus de cinq propriétés différentes, ou dès qu'il y a beaucoup de données d'un point de vue humain. Ce qui n'est pas un problème quand on communique entre applications, mais est un emmerdement de plus pour les données en fichier.
- n'est pas assez extensible.
- n'a pas de logique de flux, pourtant omniprésente dans les données avec mise en forme.
- n'a pas de technologie raisonnable de transformation, de mélange de formats, de validation a priori, et tout un tas de trucs qui sont généralement considérés lourds et peu utiles en XML, mais bien pratique pour des données statiques de niveau avancé.
2  1 
Avatar de Squisqui
En attente de confirmation mail https://www.developpez.com
Le 15/02/2013 à 21:08
Le deux commentaires du dessus rassemble mon point de vue.
Par contre :
Citation Envoyé par Hinault Romaric Voir le message
Malgré ce succès, XML présente plusieurs défauts, surtout son caractère verbeux, le rendant trop lourd et peu adapté pour les échanges entre les dispositifs à ressources limitées comme les smartphones et les tablettes.
C'est vrai que les PC, il y a 15ans, étaient beaucoup plus puissants. J'ose même pas imaginer les échanges sur Internet, à l'époque, de son "cousin" HTML.
1  0 
Avatar de thelvin
Modérateur https://www.developpez.com
Le 16/02/2013 à 4:08
En même temps, moi, au lieu de dire qu'ils ne devraient pas être comparés, je montre en quoi ils ne sont pas utilisés pareil. C'est bien beau de raconter qu'il ne faut pas faire des trucs, mais encore faut-il le prouver. Ça s'appelle le partage de connaissance. Un truc qui se pratique sur les forums d'entraide. Enfin...

Surtout qu'ils devraient être utilisés différemment, mais l'état de l'art, dans l'industrie, est un joyeux bordel.
3  2 
Avatar de alex_vino
Membre émérite https://www.developpez.com
Le 16/02/2013 à 11:19
Citation Envoyé par Thorna Voir le message
Il y a 25 à 30 ans, lorsqu'on suivait un "cours d'informatique" en entreprise, on apprenait à quelles adresses mémoire se trouvaient des octets libres dans les 640 (ou 512) ko dont on disposait à l'époque. Un octet par ici et deux octets par là, et on trouvait que c'était génial de pouvoir en disposer !
Depuis ce moment-là, la puissance des processeurs à augmenté vertigineusement, tout comme la taille de la mémoire disponible et celle des disques, et pendant ce même temps, les vendeurs de système se sont éreintés à trouver comment gaspiller toutes ces ressources : OS de 40 Go, fichiers C qui affichent "coucou" compilés en .EXE qui dépassent 10 Mo parfois, etc.
XML est dans la tendance : alors que les fichiers .INI étaient tout autant lisibles (quoi que bien moins performants, il faut le reconnaitre), XML utilisé pour tout et pour rien ne sert qu'à encombrer les répertoires de fichiers longs et indigestes, inutilement verbeux et gros, alors que bien souvent un de ces fameux .INI de 10 lignes suffirait.
On pourrait donc penser maintenant à une prise de conscience : "ah mais on n'a pas la place dans les smartphones : pourquoi donc gaspiller autant ?" ! D'où JSON, bien plus compact que XML, ouf... mais trouvez-vous réellement qu'il soit lisible ? Et est-ce que remplacer des <balises> par des [ ou des ] ou des { ou des } ou... est vraiment une évolution ? Ok, ça fait "c-style", et alors ?
Je pense que tout ça, c'est une affaire de mode qu'on pousse inutilement au premier plan en ce moment. Voyons : il suffit d'attendre tranquillement 2 ou 3 ans, rien de plus ! A cette époque future mais proche, tous les smartphones auront les 32Go de mémoire et leur téra de stockage. Pourquoi donc se fatiguer à améliorer un système peu performant de fichiers descriptifs, alors qu'on aura bientôt les moyens de l'utiliser sans effort ?
Il n'y a pas que la programmation bas-niveau en C dans la vie
Tout dépend de ce pour quoi tu développe.
Si tu fait une application smartphone qui prend une photo et nécessite d'ajouter de nouvelles métadonnées en local il n'y a pas besoin de passer des mois a trouver le format de stockage.
Par contre si tu fait un WebService qui doit distribuer beaucoup de données simultanément a des milliers d'utilisateurs sur un serveur mal dimensionné il faudra peut-etre dans ce cas bien étudié la problématique.
Dire que demain les machines seront plus puissantes est une mauvaise direction. A moins de dépenser des milliers d'Euros, les ordinateurs portables / smartphones / tablettes sont bien moins puissantes que les traditionnels PC. Imagine que demain Google sort ses Glasses et Apple son iWatch ce te fera bizarre de devoir développer tes application, les porter, ou supporter ce type de client.
Code léger et optimisé = performance = machines (client/serveur) moins puissantes = bande passante améliorée = durée dans le temps = objectif
1  0 
Avatar de Julien Bodin
Membre éclairé https://www.developpez.com
Le 16/02/2013 à 18:00
Citation Envoyé par Thorna Voir le message
Il y a 25 à 30 ans, lorsqu'on suivait un "cours d'informatique" en entreprise, on apprenait à quelles adresses mémoire se trouvaient des octets libres dans les 640 (ou 512) ko dont on disposait à l'époque. Un octet par ici et deux octets par là, et on trouvait que c'était génial de pouvoir en disposer !
Depuis ce moment-là, la puissance des processeurs à augmenté vertigineusement, tout comme la taille de la mémoire disponible et celle des disques, et pendant ce même temps, les vendeurs de système se sont éreintés à trouver comment gaspiller toutes ces ressources : OS de 40 Go, fichiers C qui affichent "coucou" compilés en .EXE qui dépassent 10 Mo parfois, etc.
XML est dans la tendance : alors que les fichiers .INI étaient tout autant lisibles (quoi que bien moins performants, il faut le reconnaitre), XML utilisé pour tout et pour rien ne sert qu'à encombrer les répertoires de fichiers longs et indigestes, inutilement verbeux et gros, alors que bien souvent un de ces fameux .INI de 10 lignes suffirait.
On pourrait donc penser maintenant à une prise de conscience : "ah mais on n'a pas la place dans les smartphones : pourquoi donc gaspiller autant ?" ! D'où JSON, bien plus compact que XML, ouf... mais trouvez-vous réellement qu'il soit lisible ? Et est-ce que remplacer des <balises> par des [ ou des ] ou des { ou des } ou... est vraiment une évolution ? Ok, ça fait "c-style", et alors ?
Je pense que tout ça, c'est une affaire de mode qu'on pousse inutilement au premier plan en ce moment. Voyons : il suffit d'attendre tranquillement 2 ou 3 ans, rien de plus ! A cette époque future mais proche, tous les smartphones auront les 32Go de mémoire et leur téra de stockage. Pourquoi donc se fatiguer à améliorer un système peu performant de fichiers descriptifs, alors qu'on aura bientôt les moyens de l'utiliser sans effort ?
Désolé mais je trouve ton message complètement surréaliste.
L'informatique d'il y a 25 - 30 ans n'existe plus, j'en suis désolé pour toi.

Tu ne peux pas dire que ces vieux machins que sont les fichiers .INI sont mieux que les XML/JSON. C'est tout aussi lisible (moins pour le JSON qui compense par sa taille), plus performant, plus fonctionnel.

Il faudrait écrire combien de fichiers INI pour décrire la même chose qu'un XML juste "un peu" évolué ?

Concernant l'évolution des besoins de stockage je ne comprend pas le lien avec les formats de fichiers... Quand tu parles de vouloir se fatiguer à améliorer un système peu performant de fichiers descriptifs tu parlais pas des .INI rassure-moi ?
3  2