INTERVIEW 
 
Tim Bray
Directeur des technologies Web
Sun Microsystems
Tim Bray (Sun Microsystems)
"Le protocole de publication Atom aura un impact plus grand que XML"
Acceptant les critiques émises à l'encontre de XML, le co-rédacteur du langage de balisage salue le travail de standardisation des consortiums W3C et IETF, et critique ECMA. Il pointe du doigt la trop grande complexité des Web Services.
29/01/2007
 
JDN Développeurs : Qu'est-ce qui vous a amené à coéditer la spécification XML ?
  En savoir plus
Dossier Numériser, gérer et publier ses contenus
  Sur le Web
XML
Atom
Tim Bray : En 1996, peu de monde comprenait à la fois le balisage formel, SGML, et le Web. J'étais de ceux-là, et en tant que consultant, j'avais un peu de temps libre. Par ailleurs, je connaissais Jon Bosak, l'organisateur du projet, donc tout s'est fait très naturellement.

Quelles ont été alors les décisions les plus importantes ou difficiles que avez prises ?
La conception de XML s'est faite très facilement, rétrospectivement - nous avions beaucoup d'expériences sur lesquelles nous baser. La politique stricte de XML en matière de gestion d'erreurs fut l'une des décisions les plus difficiles, et j'étais certainement celui qui a le plus poussé pour son adoption. Dix ans après, il est toujours impossible d'affirmer que c'était la bonne décision.

Vous êtes également "co-chair" du groupe de travail Atompub. Parmi les standards créés, le format de syndication est le plus connu, en tant qu'alternative à RSS. Pouvez-vous nous en dire plus sur le protocole de publication ?
Le rêve du protocole de publication Atom [ndlr Atom Publishing Protocol] est simple : tout devrait avoir un bouton "Publier". Tous les navigateurs, tous les tableurs, tous les téléphones, tous les appareils photos, tous les lecteurs d'e-mails, tout.

La valeur d'Internet grandit d'autant plus qu'il y a de personnes qui contribuent au contenu. Atom est la pièce nécessaire de l'infrastructure qui permettra à de nombreux petits programmes très simples d'interagir avec n'importe quel système populaire de publication sur le Net. Le protocole Atom aura un impact plus grand que XML.

XML a commencé sous la forme d'un langage de description de données. Estimez-vous qu'il a été correctement utilisé par la communauté des services Web (WS-*), ou l'ont-ils utilisé au-delà du nécessaire ?
Je n'ai aucun respect pour l'ECMA."
Je pense que la pile de spécifications WS-* est bien trop complexe, mal conçue et se base fondamentalement sur deux technologies profondément défectueuses : XML Schema et WSDL. J'en pense qu'il en résultera une énorme déconvenue pour ceux qui y ont investi des milliards. Cependant, la mauvaise conception n'est pas due au fait d'utiliser XML, c'est juste une mauvaise conception.

XML et Atom proviennent chacun d'une organisation différente, le W3C et l'IETF. Comment compareriez-vous les méthodologies de chacune de ces organisations ?
Elles sont très différentes. Mais il est important de se rendre compte que les standards sont comme les enfants : chacun est différent, et ils dépendent pour la plupart des personnalités de ceux qui dirigent un projet donné. Je pense que le monde a besoin autant de l'IETF que du W3C.

A voir le succès récent du groupe indépendant WHAT WG, pensez-vous que les organisations de standardisation tels que le W3C, l'IETF ou ECMA devraient toujours être les seules à avoir le dernier mot sur les standards ?
Je n'ai aucun respect pour l'ECMA, qui semble fonctionner en mettant de l'argent d'un côté, pour obtenir un standard de l'autre. Je pense que les organisations de standardisation conservent leur valeur, mais qu'elles n'ont pas le monopole des standards utiles. Par exemple, RSS a été inventé par une poignée de personnes coopérant de manière informelle.

Avec l'apparition de JSON, certains voient en XML un format lourd. Diriez-vous que XML est trop verbeux ?
Non. XML et JSON se chevauchent parfois, mais ciblent des problèmes différents.
JSON est une très bonne manière de prendre une structure de donnée en mémoire, la sérialiser pour le réseau, et charger une structure de données équivalente de l'autre côté quelques microsecondes plus tard.
XML est une bonne manière d'encoder un document, pour à long terme pouvoir le réutiliser sous forme généralisée. Le receveurr peut en faire des usages que le producteur n'aurait pas imaginé.
Si vous avez beaucoup de texte à afficher pour l'œil humain, XML est quasiment inévitable. Si vous envoyez simplement des coordonnées géographiques ou des propositions d'enchère au travers d'un réseau, JSON vous demandera probablement moins de travail.

Au sujet de la philosophie REST, fait-elle partie du protocole Atom ?
Je ne pense pas qu'il y aura de XML 2.0."
Le protocole de publication Atom a été soigneusement et explicitement conçu pour suivre cette philosophie.

Après coup, pensez-vous que XML était la meilleure spécification possible en la matière ?
Je pense qu'il y de nombreuses erreurs horribles dans XML 1.0 - c'est ça regarder dans le rétroviseur ! Cela dit, XML 1.0 semble être suffisant pour être utile à beaucoup de gens, qui en font beaucoup de choses différentes, donc en général je suis satisfait.

Verra-t-on un XML 2.0 ?
Je ne pense pas qu'il y aura de XML 2.0. Les obstacles politiques seraient effrayants - tout le monde voudra sa part du gâteau -, et la base installée de logiciels qui reconnaissent XML comprend aujourd'hui à peu près tous les ordinateurs liés à Internet, donc une transition me semblerait trop onéreuse.

De fait, sous quel œil voyez-vous les récents commentaires, demandant un XML 2.0 avec gestion des erreurs ?
Micah Dubinko, dans son récent article XML 2.0 est-il en développement, pose la question "HTML sur le Web est un cas particulier ?", et la réponse est évidemment "oui". Notez que le langage HTML en cours de développement par le WHAT WG n'est pas du tout du XML, et je ne serai pas assez audacieux pour prédire si c'est une bonne idée.

Il y a toujours quelques outils capables de traiter des données XML, mais également d'accepter des données imparfaites (non-XML) - à commencer par tous les navigateurs Web.

  En savoir plus
Dossier Numériser, gérer et publier ses contenus
  Sur le Web
XML
Atom
Je doute que l'on voit publiée une nouvelle version officielle baptisée "XML 2.0" disposant de différentes règles de gestion d'erreurs. Mais je suis certain que le débat sur quand appliquer de véritables traitements d'erreurs XML et quand accepter des données non-XML continuera pendant longtemps, parmi d'autres choses très distrayantes.

Il y a tout un éventail de situations possibles : d'un côté, si un système de transactions boursières électroniques reçoit un message XML pour une transaction évaluée à deux millions d'euros, et qu'une balise n'est pas fermée, vous ne voulez certainement pas que le système devine tout seul ce que le message contient, vous voulez qu'il signale l'erreur. De l'autre côté, si quelqu'un envoi sur son blog la photo d'un petit chaton via son téléphone portable, vous ne voulez pas qu'elle soit rejetée parce qu'il y a un "&" au mauvais endroit. Le monde est compliqué.
 
Propos recueillis par Xavier Borderie, JDN Développeurs

PARCOURS
 
 
Tim Bray, 51 ans, est directeur de technologies Web chez Sun Microsystems.

2004 Sun Microsystems
1999 Antarctica Systems
1996 Consultant indépendant
1989 Cofondateur de Open Text Corporation
1987 University of Waterloo, projet New Oxford English Dictionary
1983 GTE (aujourd'hui Verizon)
1981 Service après-vente, Digital Equipment Corporation

Et aussi il a été co-chair des groupes de travail XML et Atompub.