Le langage SGML :

vue d'ensemble et derniers progrès
par George Charlebois

Flash Réseau, numéro 3
Décembre 1994

Le langage SGML, qui signifie Standard Generalized Markup Language ou langage standard de balisage généralisé, est une norme de l'Organisation internationale de normalisation (ISO), soit la norme ISO 8879, qui décrit un langage servant au codage des textes. Ce langage comprend un ensemble de conventions servant au balisage, ou à la description, d'un document plein texte et qui permet aux applications informatiques d'identifier et de manipuler des parties individuelles du document. Ces conventions précisent les codes autorisés et obligatoires, établissent la distinction entre les balises et le texte lui-même et fournissent la signification de chaque code.

Vue d'ensemble et description

Le langage SGML est un produit de l'industrie de l'édition et remonte à l'automatisation des signes de correction au cours des années 1970. La notion d'un langage de balisage généralisé a été abordée la première fois au cours d'une réunion de représentants de l'Association des communications graphiques et de l'Imprimerie du gouvernement canadien, en 1967. Les travaux effectués à la suite de cette réunion ont donné lieu à la publication d'une norme portant sur le premier langage de balisage généralisé, le GML, au début des années soixante-dix. En 1978, cette norme servit à établir la première version de la norme SGML, émise par l'Association des communications graphiques. En 1986, cette norme fut révisée et devint la norme internationale ISO 8879, dans la version finale que l'on connaît encore aujourd'hui.

À l'encontre de la plupart des langages de balisage, le SGML n'est pas un produit propriétaire, c'est-à-dire qu'il n'appartient à aucun fournisseur particulier et qu'il n'est pas nécessaire de détenir une licence pour l'utiliser. N'importe qui peut donc examiner la spécification SGML et en implanter une version. De plus, le SGML n'est lié à aucun environnement matériel ni application précis. L'étiquetage SGML n'intègre pas de codes de formatage spécifiques dans le texte d'un document et sert uniquement à identifier certaines parties du document à des fins de traitement ultérieur. Cette capacité unique à séparer le format, la structure et le contenu d'un document et à traiter chaque partie séparément confère aux documents codés en format SGML un degré d'indépendance face au matériel et aux logiciels inégalé par les autres méthodes.

Nous verrons dans les lignes qui suivent la façon dont est constitué un document SGML.

Synthèse du document. Cet élément sert à préciser les aspects fondamentaux du «dialecte» SGML utilisé. C'est à ce niveau que l'on établit les paramètres implicites, que l'on détermine les options et les séparateurs, que l'on précise le jeu de caractères qui sera utilisé ainsi que les autres fonctions similaires. La synthèse du document peut être maintenue sous forme de table dans les applications de traitement plutôt que dans le document même et demeurer ainsi invisible aux yeux de l'utilisateur.

Définition du type de document (DTD). Cet élément sert à préciser la structure du document. Ainsi, une organisation qui posséderait un vaste programme d'édition pourrait recourir à une DTD pour définir une catégorie complète de documents similaires. Par exemple, on pourrait attribuer la même DTD à tous les manuels administratifs et une autre à tous les catalogues. Un tel partage des DTD constitue un procédé économique et confère en même temps un aspect uniforme et commun aux documents d'une organisation. La principale fonction d'une DTD consiste à préciser l'ensemble d'étiquettes utilisé pour le codage du texte d'un document, y compris les noms des étiquettes réelles, la relation entre les étiquettes, l'ordre dans lequel elles apparaissent dans le document et tous les attributs de qualification qui s'appliquent aux étiquettes individuelles. Une autre fonction importante de la DTD sert à définir le format des liens avec les autres documents.

Instance du document. Il s'agit du texte réel du document comportant les étiquettes SGML qui lui ont été intégrées et qui identifient les diverses parties du texte. La plupart de ces textes constituent des fichiers ASCII standard créés à l'aide d'un logiciel de traitement de texte ou du logiciel Auteur/Éditeur SGML. Même si une instance de document peut partager une DTD avec d'autres documents, comme nous l'avons mentionné précédemment, elle ne peut se conformer qu'à une seule DTD et ne peut faire appel aux ensembles d'étiquettes, aux valeurs implicites ni aux définitions de plusieurs DTD. Spécification de sortie. Cet élément fournit de l'information sur la mise en forme des éléments de texte spécifiques, comme l'oeil du caractère, la mise en retrait et la taille de la police. Il est particulièrement utile lorsque vous devez préserver le format exact du document, comme dans le cas des transmissions de formules. Il existe actuellement deux types de spécifications, soit FOSI, acronyme de Formatting Output Specification Instance, qui est utilisée pour les imprimés, et DSSSL, abréviation de Document Style Semantic and Specification Language, qui est utilisée pour tous les autres types de supports ainsi que les imprimés. La spécification DSSSL est une norme ISO qui en est maintenant à sa deuxième version et qui fait encore l'objet de révisions approfondies.

Actuellement, il existe deux types de systèmes SGML. Ceux qui traitent directement les fichiers en format SGML constituent les systèmes SGML naturels tandis que ceux qui convertissent les fichiers en format SGML en un quelconque format propriétaire interne aux fins de traitement sont connus sous le nom de systèmes quasi-SGML. Les deux plus importants progiciels de traitement de texte, soit Microsoft Word et WordPerfect, appartiennent à cette dernière catégorie. Comme on pourrait s'y attendre, les conversions entre les étiquettes SGML et les styles de traitement de texte ne sont pas parfaites et certaines fonctionnalités SGML se perdent en cours de traitement. Cependant, il s'agit de la première génération de traitements de textes dotés de cette capacité et les entreprises visées entendent bien modifier les versions ultérieures de leur logiciel de façon à ce qu'elles acceptent totalement le format SGML.

Applications

La plupart des applications SGML des plus réussies se retrouvent dans les secteurs de l'édition et de la manipulation de l'information. On a eu notamment recours aux premières applications SGML dans le cadre du projet CALS, acronyme de Computer Aided Logistics Support (soutien logistique assisté par ordinateur), du U.S Department of Defense, soit le Département de la Défense américain. Le DOD et ses fournisseurs ont utilisé les documents en format SGML pour échanger des données, des soumissions et des spécifications techniques relatives aux contrats de systèmes d'armement. Le consortium Text Encoding Initiative (TEI), formé d'établissements d'enseignement supérieur, procure aux étudiants des versions électroniques de textes en format SGML dans les domaines des lettres et des sciences humaines. Grâce à sa participation à d'autres projets similaires, le groupe offre aujourd'hui tous les travaux connus en grec classique, toutes les oeuvres de Shakespeare et des poètes anglais d'avant 1900 ainsi qu'une quantité considérable de textes anglais en prose. Statistique Canada produit son Annuaire du Canada en format SGML et est à convertir la plupart de ses publications statistiques dans ce format. Depuis septembre 1994, ce ministère offre un accès en direct sur Internet à ses bases de données statistiques établies en langage SGML. On applique également la norme SGML dans d'autres secteurs : création de livres en braille et d'ouvrages en gros caractères à l'intention des handicapés visuels, accès à l'information de vol et aux données techniques pour l'industrie aéronautique et contrôle des émissions de gaz d'échappement en vue de vérifier le respect des normes de l'EPA dans l'industrie automobile. Le nombre toujours plus élevé de projets et de systèmes faisant appel au langage SGML dénote bien la faveur croissante que le codage de données génériques remporte par suite des avantages à long terme que présente son indépendance face aux plates-formes et aux applications utilisées à l'égard des précieuses ressources de données d'entreprises.

Derniers progrès : SGML et WWW (World Wide Web) Une étape-clé de l'histoire d'Internet a été annoncée au cours du congrès sur le SGML de 1994 qui a eu lieu au début de novembre à Washington, D.C. En effet, Yuri Rubinski, président de SoftQuad, un important fournisseur de logiciels SGML, et Joseph Hardin, du National Centre for Supercomputing Applications (NCSA), ont révélé qu'à partir de janvier 1995, il serait possible de créer, de visionner et de diffuser des documents entièrement conformes à la norme SGML sur Internet. On doit cette réalisation à la société SoftQuad qui a décidé d'offrir gratuitement son lecteur SGML, soit PANORAMA, avec le progiciel Mosaic du NCSA.

Le NCSA a fait office de chef de file dans les secteurs de la mise au point et de la diffusion de logiciels du domaine public sur Internet. Son client WWW, c'est-à-dire Mosaic, est probablement le client Web le plus utilisé aujourd'hui et est offert gratuitement par l'organisme. Les applications WWW ont actuellement recours au langage HTML (Hypertext Markup Language ou langage de balisage hypertexte), qui est une version d'ensemble d'étiquettes réduite de SGML, pour effectuer le codage des documents, et à un lecteur HTML fourni par le NCSA. L'avènement d'un lecteur SGML entièrement fonctionnel et complet comme PANORAMA favorisera l'utilisation d'applications conformes à la norme SGML sur Internet.

À court terme, cela signifie que tout document SGML pourra être diffusé et visionné sur Internet dans son format naturel. À plus long terme, il est probable que le langage SGML s'imposera comme norme de codage des documents sur WWW. SGML fournira également des documents plus riches et plus fonctionnels que HTML n'est en mesure de manipuler et, avec le temps, il offrira des possibilités encore insoupçonnées. Il aiguillonnera aussi les projets axés sur les dépôts et l'archivage des documents qu'il sera nécessaire de mettre de l'avant pour contrôler et gérer la quantité croissante de documents SGML sur WWW.

La définition du type de document (DTD) de HTML même ne disparaîtra pas. Le NCSA, créateur de la norme HTML, a indiqué qu'il modifiera la DTD de HTML afin de la rendre entièrement conforme à la DTD de SGML et lui permettre de prendre en charge les fonctionnalités supplémentaires offertes par PANORAMA. Par conséquent, l'ensemble d'étiquettes de la norme HTML actuelle augmentera considérablement et de nombreuses caractéristiques nouvelles de la norme SGML seront intégrées à la DTD de HTML. La nouvelle norme HTML sera évolutive, c'est-à-dire qu'elle reconnaîtra plusieurs niveaux de conformité à la norme SGML. Les documents actuellement codés en format HTML ne deviendront pas désuets. Vous pourrez quand même les visionner et les mettre à jour mais les nouveaux documents qui seront entièrement conformes à la norme SGML seront manipulés avec autant de facilité.

Renseignements relatifs à la norme SGML sur Internet
Newsgroup de Usenet COMP.TEXT.SGML (par l'intermédiaire du serveur Gopher de la BNC)

Archives FTP pour le groupe d'information susmentionné

Accessible par l'intermédiaire de World Wide Web (WWW)

Listes de discussion


La Bibliothèque nationale du Canada. (Révisé: 95-06-14)