XML, une révolution en marche

par Jean-Paul Figer, ARMOSC

Publié le - Mis à jour le


Principales rubriques

Cet article a été publié en mai 2001 dans le Rapport Annuel 2000 de Cap Gemini Ernst & Young  

Le mot XML a envahi l'Informatique. Espéranto de l'Internet pour les uns, potion magique informatique pour les autres ou dernier mot à la mode des stratèges du Marketing, XML suscite bien des interrogations. Le but de cet article est d'expliquer pourquoi et comment XML va  complètement transformer l'Informatique et Internet. 

Avec peu d'indications, l'être humain est capable de deviner le reste. En voyant sur cette page des gros caractères suivis par des blocs de petits caractères, vous savez que c'est le début d'un article. En regardant des colonnes de chiffres, vous comprenez  la situation de votre compte en banque. Les ordinateurs ne sont pas aussi intelligents. Il faut leur dire exactement ce que représentent les informations, comment elles sont reliées et comment les utiliser. XML a justement pour but de rendre les informations auto-explicatives pour les ordinateurs. Cette modification mineure dans la manière de communiquer des ordinateurs va transformer l'Internet d'une plate-forme d'échange d'informations en une plate-forme pour traiter les informations.

Un peu d'histoire pour comprendre

Grâce à Internet, des centaines de millions d'utilisateurs peuvent échanger des informations numériques avec des dizaines de millions de serveurs.10 milliards de messages électroniques sont échangés chaque jour dans le Monde (octobre 2000,  IDC) . Ce succès de l'Internet s'est construit autour de 3 technologies :  TCP/IP, HTTP, HTML. 

  •  TCP/IP a apporté la connectivité mondiale immédiate en simplifiant les réseaux et  en cassant les coûts des télécommunications.
  •  HTTP, le protocole des serveurs Web a permis à tous les ordinateurs du monde de dialoguer de la même manière gommant les différences des systèmes  propriétaires.
  •  HTML est devenu le langage universel de présentation des informations aux utilisateurs et  le "pointer-cliquer" sur le lien de l'hypertexte s'est imposé comme le paradigme de l'interface avec les machines.

Ces technologies qui permettent un accès instantané à l'information ont produit la révolution Internet. Cependant, bien que toutes les informations existent sur Internet, il est souvent extrêmement difficile de trouver celle qu'on cherche. De plus, les utilisateurs et les entreprises souhaitent des sites Web qui fournissent des services au-delà de celui d'un super télécopieur qui envoie des pages à tous ceux qui les demandent. Ils veulent des systèmes qui prennent des commandes de clients, consolident des informations ou même font fonctionner des usines. Le HTML n'avait pas été conçu pour ce genre de tâches.

L'EDI (Electronic Data Interchange ) avait tenté de résoudre ce problème. En définissant, au niveau mondial, le contenu d'une commande, d'une facture, d'une transaction boursière, on pourrait alors échanger automatiquement des documents entre ordinateurs. Cette approche a  échoué dans la plupart des cas. A la lenteur inhérente à l'approche -obtenir un accord mondial sur le contenu d'un document-, s'est ajouté un "effet comité". Le consensus n'a été possible que sur des documents d'une très grande complexité, inutilisables dans la majorité des cas.

Au début des années 80, une autre tentative avait été faite dans le domaine de la gestion documentaire. Elle avait abouti en 1986 au standard SGML. La complexité de mise en oeuvre du SGML en avait limité l'usage à de très grands systèmes documentaires.  En 1996 une équipe conduite par Jon Bosak de Sun Microsystems décide de créer une version du SGML plus simple et mieux adaptée aux besoins d'échange de données sur le Web. Le XML est né. En quelques mois, il rallie tous les efforts dans ce domaine et  le W3C publie la première version le 10 février 1998. les spécifications du XML  tiennent sur 26 pages à comparer aux 500 pages du SGML !

XML, mais c'est très simple!

XML est l'abréviation d'eXtensible Markup Language. C'est le langage universel pour représenter des documents structurés ou des données sur le Web. Un information structurée rassemble non seulement l'information elle-même (mots, images,...) mais aussi des indications sur son contenu. XML permet de représenter des données structurées ou des objets dans un fichier texte plat.

Ceci est un exemple de fichier XML valide.


Jean-Paul Figer
Chief Technology Officer
est un avocat
du XML

XML est extensible car les repères de marquage des données ne sont pas définies dans le langage comme en HTML. Les utilisateurs peuvent définir librement leurs propres structures et leurs repères.

Comment le simple fait d'ajouter des repères autour des contenus peut-il conduire à une telle révolution ? Les évolutions dans le domaine des logiciels ne sont pas issues d'une seule technologie ni même d'une technologie prédominante comme c'est le cas dans le domaine du matériel. Les techniques du logiciel progressent par une succession d'améliorations infimes apportées dans tous les domaines . L'évolution semble lente, mais le progrès est bien là. Après quelques années, ces progrès ne sont plus perçus comme des améliorations mais comme des nouveautés. Entre un film vu à 2 images par seconde ou à 20 images par seconde, il y a plus qu'un rapport 10, il y a l'illusion du mouvement.

Le simple fait que tout le monde soit d'accord pour adopter le même standard XML afin de représenter des données indépendamment de leur origine (langage de programmation, base de données ou feuille de calcul) est, en soi, une révolution. Cette représentation des données indépendante d'un système, d'un média ou d'un pays va provoquer la prochaine étape de la Révolution Numérique : les ordinateurs parleront entre eux, découvriront  de nouveaux homologues et échangeront des informations sans intervention humaine. L'action unificatrice d'XML est renforcée par l'utilisation du standard Unicode, un système d'encodage des caractères qui permet de mélanger des textes dans la plupart des alphabets du Monde. En HTML comme dans la plupart des traitements de textes, un document est généralement écrit dans un seul jeu de caractères, qu'il s'agisse de l'anglais, du japonais ou de l'arabe. XML facilite donc l'échange d'informations non seulement entre des systèmes informatiques différents mais aussi au-delà des frontières nationales ou culturelles.

Les deux faces de l'XML

Tel Janus, XML comporte deux faces bien séparées mais reliées par une exigence technique commune : manipuler des données structurées indépendamment des systèmes.

La première face : XML outil technique pour construire des applications au sein de l'entreprise

XML permet de réaliser et de déployer à peu de frais dans l'entreprise des applications robustes et performantes construites sur les standards de l'Internet. En plus, XML est un ensemble de nouvelles technologies : «XML namespaces» permet de mélanger les repères de sources différentes sans risques, «XML Schemas» permet de définir simplement les règles de construction des documents, «XSL» et «XSLT» sont des nouveaux outils pour appliquer des transformations et styles à des documents, le «DOM» est un ensemble de classes d'objets pour programmer avec des données XML pour ne citer qu'elles. Ces technologies sont extrêmement puissantes mais nécessitent une nouvelle formation. Le manque de personnel formé sera un facteur qui va ralentir le déploiement de XML à court terme.

La deuxième face : XML, le langage commun pour les applications  inter-entreprises et de commerce électronique.

La deuxième face d'XML transformera radicalement la nature du Web. Depuis des siècles, l'humanité a fait du commerce en échangeant des documents : ordre d'achat, factures, listes, reçus, etc. Cette méthode fonctionnait très bien puisqu'elle ne nécessitait pas que les parties concernées aient la connaissance des procédures internes de l'autre. Chaque document précise ce que les destinataires doivent savoir et rien de plus. L'échange de documents est certainement aussi la bonne manière de faire des affaires en ligne. Les entreprises vont utiliser la famille des spécifications XML pour communiquer avec leurs clients et entre elles. XML n'impose pas la structure rigide de l'EDI à ces échanges. En réduisant les interventions humaines, XML va permettre d'optimiser un peu plus la chaîne d'approvisionnement et d'automatiser les fonctions de gestion. Cette automatisation réduira aussi les coûts des erreurs de traitements.  La technologie XML offrira également des informations aux agents des utilisateurs sous une forme permettant le traitement automatique après réception. Disposer de données XML va devenir une condition sine qua non pour préserver sa position sur le marché. Ce type d'information associé aux meta-données, c'est à dire aux données qui décrivent les données, va améliorer la recherche d'information et la probabilité de rencontre entre fournisseurs et clients.

Des sites Web aux "Services Web"

Les entreprises de toute taille vont bénéficier de la croissance explosive des transactions B2B sur Internet, que ce soit pour trouver de nouveaux clients, fournir de nouveaux services ou optimiser leur fonctionnement. Les services Web sont des applications indépendantes  pouvant être décrites, publiées, localisées et utilisées sur Internet. Les précédents tentatives de réaliser des systèmes distribuées (CORBA ? JavaRMI, COM+) ont donné naissance à des systèmes dont le couplage entre les différents composants était beaucoup trop complexe pour fonctionner dans un environnement aussi distribué qu'Internet. Avec XML, les sites ou les services Web vont échanger leurs données beaucoup plus facilement. Les application seront construites en assemblant des services Web. Certains services pourront être découverts dynamiquement pendant le fonctionnement. L'intégration de services devient la manière innovante de transposer sur le Web les applications existantes ce qui va permettre à n'importe quelle entreprise de participer facilement et pleinement à la nouvelle économie.

Le futur de XML

XML est une victoire des utilisateurs. C'est un standard ouvert qui peut être librement étendu sans les habituelles limitations de certains systèmes ou langages. Destiné à être lu par les ordinateurs, XML reste lisible par un être humain et peut être produit et manipulé par le plus élémentaire des éditeurs de textes. En théorie, les utilisateurs d'XML ne peuvent plus devenir les otages des vendeurs de logiciels propriétaires. Cela signifie la fin de la domination du marché par quelques grosses sociétés. L'utilisation de bout en bout d'XML et d'XSL signifie la fin du contrôle des utilisateurs par des standards propriétaires. Les sociétés qui ont construit leurs empires sur des standards propriétaires vont certainement faire de la résistance. Les manières les plus évidentes vont consister à limiter l'usage d'XML au middleware, à continuer à employer HTML au lieu d'XSL pour la publication, à essayer d'imposer des "namespaces" et des "schémas" sur des plates-formes propriétaires,  bref un retour à l'ancienne situation. Au contraire, si les utilisateurs restent vigilants, l'emploi généralisé d'XML va progressivement transformer l'Internet en une gigantesque base de données et une puissante plate-forme de services dont les entreprises pourront tirer parti. Il y a gros à parier que cette plate-forme aura d'ici quelques années des capacités qui dépasseront celles de n'importe quelle entreprise. On peut même se demander s'il sera possible de contrôler cette plate-forme dont les capacités dépasseront celles de l'homme dans tous les domaines. La vision rassurante de l'ordinateur qui nous assiste mais que l'on peut toujours débrancher, risque de disparaître.

Envoyer vos remarques, suggestions ou questions à

Jean-Paul Figer
© Jean-Paul Figer, 1958-2013

J'ai travaillé pendant 40 ans à Capgemini. Cependant les opinions exprimées dans ces articles n'engagent que moi et ne représentent pas la position de Capgemini.

Pour être informé des nouveaux articles, inscrivez-vous avec votre adresse mail