CernDOC, un terrain propice à l’éclosion du web

Chacun sait que c’est au CERN que le « World Wide Web » a fait ses premiers pas avant de connaître son succès actuel. Ce qu’on sait moins, en revanche, c’est que, dès les années 1980, des équipes du CERN avaient développé un système de documentation très avancé, appelé CernDOC, qui était notamment l’un des premiers à utiliser le modèle client-serveur, repris plus tard lors du développement du web.

Le schéma utilisé par Tim Berners-Lee pour présenter le WEB. En jaune, le cercle de CERNDOC. 

Le projet CernDOC a été lancé au début des années 1980 par la division DD (l’actuelle division IT) pour permettre de partager et de stocker les documents produits par les physiciens et les ingénieurs du CERN. À l’époque, les installations informatiques centrales reposaient sur des ordinateurs centraux IBM. On ne connaissait pas encore les PC, les Macintosh et les imprimantes laser, mais on avait déjà commencé à développer des réseaux. « Grâce à BITNET, nous disposions de la capacité de réseau nécessaire pour la plateforme VM/CMS d’IBM, la technologie qu’utilisait le projet CernDOC. Le système d’exploitation VM/CMS permettait aux utilisateurs de disposer de machines virtuelles individuelles sur lesquelles ils pouvaient créer ou récupérer des documents stockés sur un serveur de documentation, raconte Eric Van Herwijnen, chef de projet de CernDOC. CernDOC, qui était fondé sur le système de serveur-client développé au laboratoire Rutherford Appleton (Sysdoc), donnait aux utilisateurs la possibilité de gérer des documents sur leurs machines virtuelles individuelles ».

CernDOC était très performant quand il s’agissait de retrouver des informations, mais certains facteurs nuisaient à sa facilité d’utilisation : « Le seul moyen de récupérer un document était d'envoyer une requête au serveur ; or celui-ci ne possédait pas d’interface de navigation, continue Eric. De plus, CernDOC fonctionnait selon un langage qui n’utilisait pas de liens hypertexte, ce qui fait qu’il n’était pas possible de lier des documents. Pour pouvoir visualiser un document, on était obligé de le sélectionner à partir de la base de données ».

« Quand nous avons commencé à implémenter le système, nous avons décidé d’utiliser le langage SGML, explique Eric, et nous demandions aux gens de l'utiliser sur nos ordinateurs centraux. Il s’agit d’un métalangage qu’IBM avait normalisé pour le traitement de texte. Il ne comportait pas de réelles instructions de traitement : il fallait donc le traduire pour représenter les commandes de traitement de texte qu’il contenait. CernDOC a été le premier système à stocker des documents à l'aide d'un format d'échange indépendant de l'application, ce qui permettait de les afficher sur différentes plateformes de clients. »
En raison de sa complexité, ce n’est pas le langage SGML qui a été utilisé pour le web, Tim Berners-Lee ayant préféré reprendre des caractéristiques provenant d’un certain nombre d’applications SGML pour créer un langage simplifié, le langage HTML, qui comprenait une ancre pour liens hypertexte et ne dépendait pas d’une Définition de type de document (voir encadré).
Alors que le milieu des physiciens commençait à reconnaître l’intérêt que le web pouvait représenter, CernDOC et le langage SGML ont été confrontés à un sérieux problème : l’avènement de l’ère du PC. « Les VM/CMS d’IBM ont été brusquement supplantés par les PC, rappelle Eric. Nous sommes passés peu à peu des VM aux Sun, puis aux PC et aux Mac. Grâce à Microsoft Word, le monde entier s’est converti au WYSIWYG (tel écran - tel écrit) et Adobe PDF est devenu de facto le format standard d’échange de documents. En un sens, c'est ce qui a signé l'arrêt de mort du SGML – et de CernDOC. »

CernDOC a fini par être abandonné ; pourtant, les idées qui ont présidé à sa conception auront marqué une étape importante dans le développement du Web.



Définition de type de document

Une Définition de type de document ou DTD est l’une des composantes d’un métalangage de type SGML. Il s’agit d’une série de déclarations de balisage définissant un type de document et contenant les instructions qui déterminent la nature et l'emplacement des éléments qui apparaîtront sur un document. XML est une version simplifiée de SGML.

par Jordan Juras