Accueil
 chercher             Plan du site             Info (English version) 
L'histoire de XML s'écrit en ce moment même. XMLfr vous aide à la suivre et à en dégager les tendances.Les listes de discussions XMLfr sont à votre disposition pour réagir sur nos articles ou simplement poser une question.Si vous ètes passionnée(e) par XML, pourquoi ne pas en faire votre métier ?XMLfr n'est heureusement pas le seul site où l'on parle de XML. Découvrez les autres grâce à XMLfr et à l'ODP.Les partenaires grâce auxquels XMLfr peut se développer.Pour tout savoir sur XMLfr.XMLfr sans fil, c'est possible !Pour ceux qui veulent vraiment en savoir plus sur XML.L'index du site.
 Si vous vous posez une question, vous n'êtes peut-être pas le premier...Les traductions en français des bibles XML.Ces articles sont des références dans leur domaine.Tout ce qu'il faut savoir pour démarrer sur un sujet XML...


XML, quel historique ?

L'historique des langages de l'Internet, de SGML à XHTML.

Par Gabriel Képéklian, senior consultant chez ATOS Intégration
Paris, France, mardi 21 mars 2000

1 AVANT-PROPOS

2 DES LANGAGES

3 LES LANGAGES DE PRESENTATION

4 XML

1 AVANT-PROPOS

La diffusion de l'information dans notre société (de l'entreprise à la famille) se transforme de plus en plus en publication de documents sur l'Internet et ses avatars. Les acteurs de cette publication ne sont plus des spécialistes. Tout le monde se forme, ou auto-forme, petit à petit aux différents outils bureautiques et aborde ou abordera l'Internet.

Cet article a pour objectif de fournir les éléments qui aideront le lecteur à comprendre les enjeux de la situation actuelle, à déceler les tendances et peut-être à faire des choix.

Sommaire

2 DES LANGAGES

2.1 Introduction

Les langages informatiques sont nés dans les années 1950, par exemple FORTRAN (1956), ALGOL, LISP (1958) et COBOL (1959). Au début des années 80, le nombre de langages était estimé à 3 millions ... dont 450 étaient véritablement utilisés par une communauté significative. Je n'ai pas de données chiffrées pour aujourd'hui, mais on peut imaginer l'entropie !

Pour chaque catégorie de problèmes, il est possible de créer un langage adapté à l'aide duquel les-dits problèmes trouveront un exposé clair. Et l'on sait qu'un problème bien posé est à moitié résolu ... Les mathématiciens et d'autres scientifiques (que nous appellerons les grammairiens formels) se sont intéressés aux langages. Ils les ont formalisés, classés, triés, outillés. C'est ainsi qu'ont été définies les " générations " de langages (les puristes en dénombrent habituellement 5) et les " classes grammaticales " de langages (le théoricien Noam Chomsky a proposé 4 classes).

Pour les outils, les débuts ont été très difficiles. Il fallait permettre à la machine de faire exactement ce que le programmeur voulait. Pour ne pas trahir la pensée du programmeur, il a fallu la structurer, l'exprimer sans ambiguïté, la traduire en séquences intelligibles par l'unité centrale ... Les outils se sont peu à peu sophistiqués, optimisés, rationalisés et démocratisés. Maintenant la programmation se réduit parfois à un simple jeu de souris !

2.2 La publication

Le domaine de l'édition a été très tôt informatisé. Dans les années 70, de gros systèmes de "traitement de textes" ont été conçus. Ils ont évolué progressivement pour donner naissance aux premiers programmes de PAO sur ordinateur personnel, c'était au début des années 80. Les organismes de normalisation se sont associés à ce progrès. Les gros constructeurs, propriétaires des systèmes des années 70, ont aussi poussé leurs solutions et leurs langages.

Dans les années 1960, IBM appuyait SGML, un langage conçu pour les systèmes de saisie de textes et de mise en page de textes, de recherche d'informations et de partage de documents.

Le célèbre langage HTML, parent direct de SGML, est apparu au début des années 1990. On comprend alors qu'il ne soit pas fait pour réaliser des programmes comme une comptabilité, un jeu vidéo ou un calcul de structures métalliques. Son propos est la publication d'information, ce qu'en d'autres termes on peut appeler la présentation d'une information contenue dans un contenant structuré.

2.3 Les catégories

HTML peut être présenté comme le premier langage de l'Internet. Cependant, il ne permet qu'une présentation statique de l'information. C'est pour cette raison qu'on a très tôt cherché à lui donner des moyens interactifs complémentaires.

Plusieurs voies ont été abordées sur le poste client comme sur le serveur. A chaque choix correspondent des technologies et des langages.

Comme tous les langages ne servent pas le même propos, il faut distinguer les différentes catégories de langages. Certains sont descriptifs, d'autres permettent l'expression du style, ou donnent des moyens de programmation, etc.

Sans langages, pas d'expression. Mais faut-il une expression libre ? Nous l'avons vu, les langages répondent à des propos différents. Il en va de même pour ce que les langages décrivent. Si le problème est bien énoncé, en d'autres termes, si le programme est bien écrit alors il donne naissance à une application correcte.

C'est alors que les langages dédiés à la présentation sont arrivés ...

Sommaire

3 LES LANGAGES DE PRESENTATION

3.1 SGML - l'ancêtre

3.1.1 Introduction

Les langages de présentation de l'information sur Internet ont tous SGML pour ancêtre. Apparu en 1969 chez IBM, le Standard Generalized Markup Language est une norme pour la création de langages de balisage et la création de documents échangeables et révisables. Ce métalangage a été conçu pour permettre la création langages que l'on dit descriptifs par opposition aux langages procéduraux.

Historiquement, les manuscrits électroniques contenaient des codes ou des macro-commandes permettant au document d'être composé d'une manière particulière appelée 'specific coding'. Puis le codage générique est apparu vers la fin des années 60. Il emploie des "tag" que l'on traduit par "balise". Ce sont des étiquettes descriptives comme par exemple 'titre' plutôt que des codes comme 'format-X6'.

Les principaux langages descriptifs nés de SGML sont HTML, DHTML et XML.

3.1.2 Historique de la standardisation

Le besoin de donner de la longévité aux documents stockés électroniquement a mené au développement d'un langage spécialisé. Voici les principaux événements qui ont conduit à SGML (Standard Generalized Markup Language).

  • 1967 - Lors d'une réunion à l'imprimerie du gouvernement canadien, William Tunnicliffe parle de la séparation du contenu de l'information des documents de leur format.
  • 1969 - Stanley Rice, un éditeur de New York, propose un ensemble "de structures éditoriales" paramétrables. L'association GCA (Graphic Communications Association) sponsorise des ateliers, des séminaires et des comités pour développer le concept. De ces efforts naquit le comité original GCAGenCode. GenCode a défini un système de balises généralisées basée sur la hiérarchie d'un document. Cette approche fut intégrée à un codage générique qui soulignait le caractère descriptif plutôt que procédural du codage.
  • 1969 - Charles Goldfarb, Edward Mosher, et Raymond Lorie inventèrent le langage GML (Generalized Markup Language) pour IBM. GML était basé sur les idées de codage générique de Rice et Tunnicliffe.
  • 1970 - Goldfarb proposa un langage de balises généralisées basée sur les 2 principes forts. En premier lieu, les balises doivent décrire la structure plutôt que les caractéristiques physiques d'un document. En second lieu, elles doivent être rigoureuses de sorte qu'elle puisse être clairement comprise par un programme ou un interprète humain.
  • 1978 - Un groupe de travail de norme ANSI a été constitué et soutenu par GenCode et par la suite mené par Goldfarb afin de fournir un format pour l'échange des textes qui soit non ambigu et suffisamment riche pour permettre des évolutions futures. Leur travail fut basé sur GML.
  • 1986 - SGML est enfin normalisé par l'ISO. Le langage est complexe. Les outils qui lui sont destinés sont chers. SGML ne sortira pas de sa "niche".

Sommaire

3.2 HTML : une base solide

Ce langage connaît un véritable engouement depuis sa création. Plusieurs versions se sont succédés. Il est important de connaître les dernières versions et leurs caractéristiques car les différents navigateurs ne les supportent pas toutes.

3.2.1 HTML 1.0 - obsolète

Le World Wide Web Consortium (W3C) est l'instigateur de la norme HTML. Apparu en 1991 au CERN à Genève, la première version de HTML est un langage hypertextuel très simple et indépendant qui permet de décrire du texte avec des graphiques.

Il s'exécute sur toute sorte de plate-forme. Il comprend déjà la définition d'éléments de structuration comme les titres, les listes et les chapitres, mais la présentation finale est laissée au logiciel de navigation.

Cette version n'est plus du tout utilisée.

3.2.2 HTML 2.0 - obsolète

Le succès du navigateur Mosaic (premier à offrir une interface utilisateur graphique) impose HTML. Au passage, le langage y gagne quelques particularités du browser Mosaic. Par rapport à la version 1.0, les nouveautés ont été bon nombre de possibilités de mise en page (éléments de structure externe au document comme les en-têtes, les lignes de titre, les différents niveaux de titres) mais aussi les liens hypertextes, les mises en relief, les insertions flexibles de graphiques, de tableaux, de listes et de formulaires.

Le standard HTML 2.0 a cependant attendu septembre 1995 pour être adopté définitivement. C'est à cause de cette attente que sont nés les dialectes qui ont nui à l'harmonisation des navigateurs.

Il est devenu très rare de rencontrer cette version.

3.2.3 HTML 3.X - en voie d'obsolescence

Il y a eu plusieurs versions 3. La plus célèbre est la version 3.2 connue sous son nom de code "Wilbur". Elle est devenue un standard en mai 1996 à Paris, ce fait mérite d'être noté ! Les nouveautés ont été la présentation structurée d'éléments de tableau, les tailles et couleurs de polices de caractères, l'agencement du texte autour de l'image, les images cliquables sans communication avec le serveur et (le plus important pour l'avenir) l'insertion des applets Java et JavaScript.

On rencontre encore aujourd'hui des pages exprimées en HTML 3.2.

3.2.4 HTML 4.0 - le standard

Dès juillet 1997, sous le nom de code "Cougar", une nouvelle proposition de standard est faite. C'est l'époque de la grande rivalité entre Netscape et Microsoft. Les définitions sont faites avec rapidité et en octobre 1997 la norme se fige. Les nouveautés sont nombreuses. Le HTML ne se limite plus aux seuls navigateurs et vise maintenant à s'intégrer aux différents matériels de sortie de l'utilisateur. L'internationalisation est effective, par exemple les accents du français sont pris en compte. La définition des tableaux s'améliore. Les formulaires s'enrichissent de fonctionnalités. Le tag OBJECT permet d'insérer tout type d'objet et non plus seulement des contrôles ActiveX. Les feuilles de style sont adoptées. L'impression se fait intelligente (par exemple la possibilité de commander le saut de page). Des événements qui appartenaient aux scripts (par exemple : onmouseover, onload) sont maintenant reconnus. Les frames sont officialisés. Les affichages impossibles ont la possibilité d'une alternative.

L'utilisation de la version 4.0 a progressé très vite et a supplanté la 3.2 pendant l'année 1999.

3.2.5 Evolutions

Jusqu'en 1999, HTML a été considéré comme la lingua-franca de la publication sur Internet. Après être passé par plusieurs évolution, HTML possède désormais un éventail de dispositifs reflétant les besoins d'une communauté internationale très diverse. HTML 4.0, créé par W3C, est devenu une recommandation en décembre 1997.

Au cours de l'atelier du W3C sur le "futur de HTML" organisé à San Jose, Californie, en mai 1998, les discussions ont porté sur la possibilité d'une prochaine génération de HTML. A la fin de l'atelier, on a convenu que la seule façon de progresser était de s'appuyer sur une nouvelle génération de HTML.

XML n'était plus très loin.

Sommaire

3.3 DHTML

3.3.1 Introduction

DHTML est une extension certes majeure du langage HTML qui renonce à son caractère statique pour devenir dynamique mais qui reste propriétaire Microsoft. L'éditeur propose une solution pour obtenir l'interaction, l'animation et, surtout, la mise à jour "à la demande", sans qu'il soit nécessaire de se servir de plug-in ou autres applications complémentaires. Netscape n'a pas suivi.

En raison des limites du langage HTML, les pages Web étaient statiques : une fois affichées, elles ne pouvaient plus changer. Il fallait, pour les animer, recourir à des outils externes comme des applets Java ou des extensions (plug-in), parfois difficiles à mettre en oeuvre et, surtout, pas forcément présents sur la machine de l'utilisateur.

3.3.2 Pages dynamiques

Dynamic HTML, ou DHTML, est une évolution du langage HTML qui, en plus de la définition des différents éléments de la page, permet de préciser les comportements et les interactions entre lesdits éléments. Concrètement, cela signifie qu'une page HTML est aujourd'hui capable, en fonction des actions de l'internaute ou de tout autre événement, de faire évoluer elle-même sa forme et son contenu.

Le principe de base est très proche du développement classique d'applications. On construit une interface à l'aide de divers éléments ou objets (des textes, des titres, des images, des boutons, etc.) auxquels on associe des propriétés (contenu, police de caractères, couleur, etc.) et un comportement face aux événements et en fonction du contexte (clic, affichage, heure, etc.).

La ligne de code suivante illustre la simplicité et l'efficacité de DHTML. Si nous voulons que le titre H1 de couleur verte devienne rouge lorsque la souris passe dessus, il faut écrire :

<H1 onmouseover="this.style.color = 'red';">Fais-moi rougir</H1>

DHTML, et après ?

Le langage DHTML ne résout qu'un problème. Il apporte de la dynamicité. En revanche, il ne donne aucune intelligence aux documents. Son avenir est donc intrinsèquement compromis.

Sommaire

4 XML

Ce chapitre n'est pas une présentation de XML. Il évoque ce langage en tant qu'aboutissement du lent processus de maturation conceptuel qui nous aura conduit du document indissociable de la page sur laquelle il est imprimé au document intelligent (enfin presque) où contenu et présentation sont dissociés, manipulables et extensibles.

4.1 Les dates clef

  • 1996 - Jon Bosac de Sun Microsystems recrute une équipe
  • 1996 juillet - Les travaux du groupe débutent
  • 1996 août - Les principes sont rédigés
  • 1996 novembre - Un draft de 22 pages est publié, c'est la première version de XML
  • 1997 décembre - La proposition de recommandation est disponible
  • 1998 février - La recommandation XML v1.0 voit le jour !

4.2 Les avantages de XML

  • XML bénéficie de la base installée de HTML, de HTTP et des navigateurs Internet
  • XML est simple et portable
  • XML peut décrire des documents de toute complexité
  • XML est plus qu'un simple langage de balise, c'est une vaste famille ! ("XML family")
  • XML est international

4.3 Des champs d'application

A titre d'exemples, nous pouvons citer :

  • Messagerie : XML en tant que format standard pour l'échange de données (par exemple : XML/EDI)
  • Traitement : déplacement du serveur vers le client (par exemple : Electronic Banking, Electronic Commerce)
  • Documentaire : XML permet d'exprimer toute l'intelligence du document dans le document, les applications documentaires peuvent se développer sans contrainte (par exemple : le format EIDE pour la GED)
  • Collaboratif : les Intranets bénéficieront largement des documents XML. Avec HTML, la même information était préparée pour tout le monde, maintenant le choix de la restitution peut revenir au client. L'auteur décide du contenu, le lecteur de la présentation.
  • Publication : présentation variable de l'information ; publication dans différents formats avec XSL ; publication automatisée (par exemple à partir des bases de données)
  • Recherche : Recherche intelligente d'information
  • Intégration de système : Echanges automatisés, EAI, etc.

4.4 Convergence HTML et XML : XHTML

Les deux avatars de SGML qui semblaient être voués à vivre des destinées séparées convergent aujourd'hui pour former XHTML. Pourtant, rien ne semblait fait pour rapprocher ces deux langages.

La solution de cette dissonance annoncée s'appelle XHTML. Tout en restant très voisin de HTML, XHTML respecte les règles XML. Il peut être utilisé par les outils XML et reste visualisable par les versions récentes des navigateurs. Il est également plus extensible que HTML ; il est en effet possible de définir la structure et le contenu des documents.

4.5 En guise de conclusion

Ce tableau est un résumé du paysage actuel. Il n'est pas exhaustif, mais ... il donne une bonne vision de la situation.

Sommaire

Pour en savoir plus :

Copyright 2000, Gabriel Képéklian.


 

Mots clés.



L'histoire de XML s'écrit en ce moment même. XMLfr vous aide à la suivre et à en dégager les tendances.


Les documents publiés sur ce site le sont sous licence "Open Content"
Conception graphique
  l.henriot  

Conception, réalisation et hébergement
Questions ou commentaires
  redacteurs@xmlfr.org