Standard General Markup Language


Standard General Markup Language

Standard Generalized Markup Language

Standard Generalized Markup Language (langage normalisé de balisage généralisé - SGML) est un langage de description à balises, de norme ISO (ISO 8879:1986).

Sommaire

Historique

En 1969, Charles Goldfarb, qui est alors chef de projet chez IBM, fait lancer par cette compagnie un langage descriptif, ou Generalized Markup Language (Charles Goldfarb, Edward Mosher et Raymond Lorie), destiné à encapsuler l'ancien langage Script trop lié physiquement aux possibilités techniques des imprimantes. L'ensemble est commercialisé sous le nom de DCF (Document Composition Facility). Un fichier spécial nommé le profile, ainsi qu'une bibliothèque de macros, indiquent comment seront interprétées les marques.

Goldfarb, que ce langage rend vite célèbre, quitte alors cette compagnie pour développer un successeur de GML appelé SGML (Standard Generalized Markup Language), publié en 1986 comme norme ISO (ISO 8879:1986).

Les Communautés européennes s'associent à ce développement novateur dès 1984 et adoptent alors le SGML comme standard pour leurs très nombreuses publications officielles, dans le cadre du projet FORMEX (Formalized Exchange of Electronic Publications). Elles développent aussi Mark-It, le premier parser SGML qui ne souffre pas de restrictions par rapport aux spécifications les plus avancées du SGML.

L'un des principes fondamentaux sur lequel repose le SGML est la séparation complète entre la structure logique d'un document (titres, chapitres, paragraphes, illustrations,...), qui est identifiée par des balises insérées dans le document lui-même, de sa mise en page, qui dépend du support de présentation (livre, journal, écran, graphique même) et qui est définie en dehors du document dans une ou plusieurs feuilles de style (police, style, taille et couleur des caractères, alignement et espacement des paragraphes,...).

SGML rationalise les systèmes documentaires d'IBM, plus de 90% de la documentation est écrite en GML. Il a beaucoup facilité en France le travail des avionneurs, Airbus reprenant ainsi la documentation de la SNECMA aussitôt affichable sous ses propres normes, et récupérée à leur tour par ses propres clients qui les affichaient à leurs normes ; ou par des arsenaux livrant facilement à leurs clients (armée de l'air, marine et armée de terre, et parfois armées étrangères) des documentations à ces normes personnalisées sans surcoût aucun.

Ce langage devient notamment un standard de représentation au CERN, qui a besoin d'unifier de façon rigoureuse la présentation des documents de ses équipes mais sans pour autant les déconcentrer en leur imposant des détails techniques de typographie. L'INRIA réalisera un des premiers éditeurs SGML, appelé Grif, avec une interface voisine de celle de Word.

HTML, créé par Tim Berners-Lee pour le World Wide Web, est une application de SGML.

Normalisation

Depuis la mise en place de la norme ISO 8879 1986 SGML, lorsqu'on analyse un document, il apparait comme étant composé de 3 parties:

  • Sa structure qui sera traitée par des DTD
  • Sa présentation qui sera traitée par des feuilles de style
  • Ses données qui seront rédigées dans des instances (document balisés selon une DTD)

DTD

La DTD définira la structure du document.

  1. elle décrit les relations entre les éléments
  2. elle nomme chaque élément par rapport à la structure

Chaque DTD défini une classe de document à laquelle seront rattachés toutes les instances similaires.

Feuille de style

Une feuille de style décrira comment sera publié le document. Cela permet par exemple de décrire une feuille de style pour le papier (format A4) et une feuille de style pour les écrans (format 4/3). L'avantage étant de pouvoir par exemple créer une feuille de style pour les écrans (format 16/9) sans réécrire ni la structure ni les instances et bénéficier d'un niveau de réutilisation maximal. Les nouveaux supports matériels ne nécessitant plus que la création de la feuille de style correspondante.

Instance

Une instance est un document ou une partie de document balisée selon une DTD. Toutes les instances d'une même DTD appartiendront à la même classe de document.

Diverses informations

  • Un document SGML doit contenir une référence à une DTD.
  • XML, norme servant à décrire des documents structurés, a été créé à partir de SGML. Il s'agit en fait d'une version simplifiée de SGML (« profil » figé de la norme, DTD optionnelle, syntaxe particulière pour les éléments vides) et plus adaptée au Web (support natif des différents codages internationaux).
  • Il existe une application de SGML appelée HyTime qui permet de décrire des liens entre documents SGML.
  • Il existe en outre un langage d'écriture de feuilles de style pour des documents SGML appelé DSSSL.

Différences entre le GML ou HTML et une instance SGML bien formée

On notera et cela distinguera les avantages et inconvénients de chaque classe de document :

  1. que le premier élément ouvre et ferme automatiquement les balises et permet de réduire la taille du document par rapport au deuxième qui nécessite la fermeture systématique de chaque balise.
  2. que le premier élément ne pourra pas être extrait et réinclut dans une document de niveau hiérarchique différent sans de lourdes modifications alors que le deuxième le permet sans aucune intervention.

Dans le HTML et le GML il manque la dissociation complète entre les 3 parties: le contenu (instance), la présentation (feuille de style), et la structure (DTD).

Un exemple d'extrait de document GML ou HTML

 <H1>Titre A de niveau a 
     <P>Introduction
     <H2>Titre A de niveau b 
         <P>Description des éléments du titre A de niveau b
     <H2>Titre B de niveau b 
         <P>Description des éléments du titre B de niveau b

        <H3>Titre A de niveau c 
         <P>Description des éléments du titre A de niveau c
 <H1>Titre B de niveau a

Un exemple d'extrait d'instance SGML

 <H>Titre A de niveau a 
     <P>Introduction</P>
     <H>Titre A de niveau b 
         <P>Description des éléments du titre A de niveau b</P>
     </H>
     <H>Titre B de niveau b 
         <P>Description des éléments du titre B de niveau b</P>

        <H>Titre A de niveau c 
         <P>Description des éléments du titre A de niveau c</P>
        </H>
     </H>
 </H>
 <H>Titre B de niveau a
     <P>Conclusion</P>
 </H>

Voir aussi

Articles connexes

Liens externes

Références

Autres


  • Portail de l’informatique Portail de l’informatique
  • Portail de l’écriture Portail de l’écriture
Ce document provient de « Standard Generalized Markup Language ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Standard General Markup Language de Wikipédia en français (auteurs)

Regardez d'autres dictionnaires:

  • Standard Generalized Markup Language — Infobox file format name = Standard Generalized Markup Language icon = logo = extension = mime = application/sgml, text/sgml type code = uniform type = public.xml magic = owner = ISO genre = metalanguage container for = contained by = extended… …   Wikipedia

  • Markup language — Example of RecipeBook, a simple markup language based on XML for creating recipes. The markup can be converted to HTML, PDF and Rich Text Format using a programming language or XSL. A markup language is a modern system for annotating a text in a… …   Wikipedia

  • Security Assertion Markup Language — (SAML) is an XML based standard for exchanging authentication and authorization data between security domains, that is, between an identity provider (a producer of assertions) and a service provider (a consumer of assertions). SAML is a product… …   Wikipedia

  • Content syndication markup language — A Content syndication markup language is a markup language that allows for syndication of media across the internet (also known as web feeds). The majority of content syndication markup languages are based upon the XML standard, and are… …   Wikipedia

  • Predictive Model Markup Language — The Predictive Model Markup Language (PMML) is an XML based language developed by the Data Mining Group (DMG) which provides a way for applications to define statistical and data mining models and to share models between PMML compliant… …   Wikipedia

  • HyperText Markup Language — L’Hypertext Markup Language, généralement abrégé HTML, est le format de données conçu pour représenter les pages web. C’est un langage de balisage qui permet d’écrire de l’hypertexte, d’où son nom. HTML permet également de structurer… …   Wikipédia en Français

  • Hypertext markup language — L’Hypertext Markup Language, généralement abrégé HTML, est le format de données conçu pour représenter les pages web. C’est un langage de balisage qui permet d’écrire de l’hypertexte, d’où son nom. HTML permet également de structurer… …   Wikipédia en Français

  • Hypertext Markup Language — L’Hypertext Markup Language, généralement abrégé HTML, est le format de données conçu pour représenter les pages web. C’est un langage de balisage qui permet d’écrire de l’hypertexte, d’où son nom. HTML permet également de structurer… …   Wikipédia en Français

  • Emotion Markup Language — An Emotion Markup Language (EML) is defined by the W3C Emotion Incubator group [http://www.w3.org/2005/Incubator/emotion] as a general purpose emotion annotation and representation language, which should be usable in a large variety of… …   Wikipedia

  • HyperText Markup Language —    Abbreviated HTML. A standard document formatting language used to create Web pages and other hypertext documents. HTML is a subset of Standardized General Markup Language (SGML).    HTML defines the appearance and placement on the page of… …   Dictionary of networking