Le web de Dominique Guebey – Bazar informatique

Page : http://www.dg77.net/tekno/xhtml/sgml.htm


   D o m i n i q u e   G u e b e y    J u n g l e      Bazar informatique

Pages Web en XHTML (suite)

SGML

Définitions

Standardized Generalized Markup Language, ou Standard International ISO 8879 de traîtement des informations.

SGML est une méthode pour la présentation des textes, indépendante des systêmes et matériels. « Markup » peut être traduit par marquage ou balisage. SGML est qualifié de métalangage, i.e. un cadre formel pour définir un langage. Le balisage identifie des parties du texte, il ne donne pas de procédure ou traîtement, ceux-ci dépendent du support, des logiciels ou du mode de sortie ou utilisation (par exemple une section composée d’un titre et de plusieurs paragraphes sera présentée différemment sur un écran ou sur papier, le titre pourra être lu séparément pour constituer une bibliographie ou un sommaire dans d’autres documents électroniques, etc.).

Exemples

Allons sur le site de l’université de Berkeley sur la page "EXAMPLES OF EBIND-ENCODED DOCUMENTS" http://sunsite.berkeley.edu/Ebind/ [http://sunsite.berkeley.edu/Ebind/] , et prenons au hasard une des références :

Joubert, Alfred
Les maitres de volupte
[SGML [http://sunsite.berkeley.edu/Ebind/samples/maitres.txt] ]  [Worksheet [http://sunsite.berkeley.edu/Ebind/samples/maitres.dat] ]  [Web Book [http://sunsite.berkeley.edu/cgi-bin/ebind2html/maitres] ]

L’Université de Berkeley dispose d’une très riche bibliothèque. EBIND avait pour but l’indexation des pages digitalisées. Sélectionner "worksheet" donne un simple fichier texte, "Web Book" permet d’afficher les informations en présentation Web (en HTML, donc).

Quant à l’affichage SGML, il se présente ainsi :

<!DOCTYPE EBIND PUBLIC "-//UC Berkeley//DTD ebind.dtd (Electronic 
Binding (Ebind))//EN" [
<!ENTITY % maitres PUBLIC "-//UC Berkeley//ENTITIES
Les maitres de volupte (Page Images)//EN">
%maitres;
]>
<ebind type="book">
  <ebindheader>
    <bibid systemid="GLADIS">279666H</bibid>
    <filedesc>
      <titlestmt>
        <titleproper>Les maitres de volupte</titleproper>
        <author>Joubert, Alfred</author>
      </titlestmt>
      <publicationstmt>
        <pubplace>Paris</pubplace>
        <publisher>Lemerre</publisher>
        <date>1904</date>
      </publicationstmt>
    </filedesc>
  </ebindheader>
  <front>
    <cover>
      <page><image entityref="maitr001" seqno="1"></page>
    </cover>
    <page><image entityref="maitr002" seqno="2"></page>
…

Déclaration DOCTYPE

Présentation

Cette déclaration sert à désigner la DTD à laquelle le document est censé se conformer.

Déclaration pour HTML 4.0
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN"> 

Cette ligne se décompose en plusieurs parties :

<!
Signifie qu’on commence une déclaration SGML…
DOCTYPE
…pour un type de document.
html
Nomme le premier élément qui apparaîtra.
PUBLIC "-//W3C//DTD HTML 4.0//EN"
Liste le Formal Public Identifier (FPI), l’identificateur de la DTD du document.
  • PUBLIC ne fait pas partie du FPI, mais indique comment procéder pour accéder à la DTD, par un système de catalogue propre à SGML.
  • Une alternative est de situer directement la DTD sur l’ordinateur local avec SYSTEM suivi de l’emplacement et du nom du fichier.
>
Fin de la déclaration.
Formal Public Identifier (FPIs)

Remarque : ce qui suit est facultatif mais permettra aux curieux de comprendre enfin de quoi il s’agit.

Un FPI (cf modèle supra "-//W3C//DTD HTML 4.0//EN") doit respecter la syntaxe suivante

"Propriétaire//Mot-clef  Descriptif//Langue"

Propriétaire

Si cette chaîne commence avec “ISO”, alors il s’agit d’un FPI de l’ISO

Exemple : "ISO 8879:1986//ENTITIES Greek Symbols//EN".

Sinon la chaîne sera du type -//Propriétaire ou +//Propriétaire. "-" indique un détenteur non-enregistré, et "+" signale l’inverse. Sur cet aspect, voir ISO 9070:1991.

Mot-clef

Parmi les plus courants : DTD, ELEMENT, ENTITIES, et TEXT.

DTD est réservé aux fichiers DTD, ELEMENT concerne habituellement des fragments de DTD contenant des entités ou autres déclarations. TEXT désigne du contenu SGML (texte et marquage).

Description

Intitulé laissé à la liberté de l’auteur.

Language

Code ISO pour indiquuer le langage utilisé dans le fichier. EN est utilisé pour l’anglais, FR pour le français.

Catalogues

Si on veut utiliser un processeur SGML pour traîter un fichier SGML utilisant la syntaxe DOCTYPE précédement décrite, un fichier catalog lui permettra de savoir où trouver la ou les DTD. Dans le cas où le fichier catalogue contient la ligne PUBLIC "-//W3C//DTD HTML 4.0//EN" "4.0/strict.dtd", le processeur ira lire le fichier strict.dtd dans le sous-répertoire 4.0 à l’emplacement du catalogue.

Alternatives aux FPI

Il est permis, plus simplement que par le mécanisme des FPI, d’indiquer directement le nom et l’emplacement du fichier DTD. La syntaxe est alors différente : <!DOCTYPE html SYSTEM "/chemin/vers_le/fichier.dtd">

Le mot-clef SYSTEM indique que le processeur doit utiliser l’implémentation système de localisation des fichiers.