Systèmes de communication

SGML, un aperçu (1)

SGML (Standardized Generalized Markup Language) est une norme de description de description de documents (ISO 8879, AFNOR NF EN 28879) qui permet de définir des descriptions logiques de documents. Elle fait partie de la suite de normes ISO: Information processing, Text and Office Systems. HTML est à SGML ce que le langage PASCAL est aux BNF.

Un document SGML est principalement constitué de deux parties, d'un DTD (Data Type Description) et du texte marqué proprement dit. Un DTD peut être contenu dans un fichier à part et "inclu" dans le document.

DTD donnant la description d'une carte (postale)

Ce DTD fait l'objet du fichier carte.dtd.

<!-- element      min contenu -- >
<!ELEMENT CARTE   - - ((BONJOUR, CORPS, SALUT) & (IMAGE)) >
<!ELEMENT BONJOUR - - (#PCDATA) >
<!ELEMENT CORPS   - - (DIVERS, TEMPS?) >
<!ELEMENT DIVERS  - - (PARA)* >
<!ELEMENT TEMPS   - - (#PCDATA) >
<!ELEMENT PARA    - o (#PCDATA) >
<!ELEMENT SALUT   - - (#PCDATA) >
<!ELEMENT IMAGE   - o EMPTY >

<!-- Attributs -->
<!ATTLIST IMAGE SRC NAME #REQUIRED >

Remarques:

Document utilisant la description contenue dans le fichier "carte.dtd"

<!DOCTYPE CARTE SYSTEM "carte.dtd">
<CARTE>
<IMAGE SRC = "le_port.gif">
<BONJOUR>Mon tres cher ami,</BONJOUR>
<CORPS><DIVERS>
<PARA>Les vacances ont commence. </PARA> <!-- cette balise peut etre omise -->
<PARA>Les cailloux sont en fleur. </PARA>
</DIVERS>
<TEMPS>Le soleil transpire a grosses gouttes.</TEMPS>
</CORPS>
<SALUT>Bonjour chez vous.</SALUT>
</CARTE>


Quelques détails sur SGML

Place de SGML parmi les nouvelles architectures documentaires : un article intéressant de Yves Marcoux.

Références: