19
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique H 7 138 - 1 SGML par Luc SONKÉ Docteur en mathématiques Président de STSI-SA (Société des Technologies et Systèmes d’Information), Paris 1. Notions fondamentales .......................................................................... H 7 138 - 2 1.1 Origine de SGML ......................................................................................... 2 1.2 Quelques objectifs de SGML ...................................................................... 2 1.3 Concept de documentation structurée....................................................... 3 1.4 Balisage ........................................................................................................ 3 1.5 Langages de balisage .................................................................................. 4 2. Fondements conceptuels de SGML..................................................... 4 2.1 Rappel de quelques catégories conceptuelles .......................................... 4 2.2 Processus de modélisation ......................................................................... 5 2.3 SGML est un métalangage.......................................................................... 5 3. Aspects formels de SGML ..................................................................... 7 3.1 Notions de base ........................................................................................... 7 3.2 Codage des caractères ................................................................................ 11 3.3 Notion de conformité .................................................................................. 12 3.4 SGML et l’échange de documents ............................................................. 12 3.5 SGML sans DTD ........................................................................................... 12 3.6 Quelques grandes applications SGML....................................................... 13 4. Positionnement de SGML dans le contexte normatif.................... 14 4.1 HyTime .......................................................................................................... 14 4.2 SMDL ............................................................................................................ 14 4.3 DSSSL ........................................................................................................... 14 4.4 SPDL.............................................................................................................. 14 5. Évolutions dans les années à venir ..................................................... 14 5.1 Renforcement conceptuel ........................................................................... 14 5.2 Vers des profils spécialisés ......................................................................... 15 5.3 De nouvelles normes satellites ................................................................... 15 6. SGML et l’ingénierie documentaire .................................................... 15 6.1 Systèmes éditoriaux classiques ................................................................. 15 6.2 Ingénierie documentaire ............................................................................. 15 6.3 SGML et l’ingénierie documentaire ........................................................... 17 6.4 Classification des outils SGML ................................................................... 17 7. Conclusion ................................................................................................. 18 Pour en savoir plus ........................................................................................... Doc. H 7 138

H7138

Embed Size (px)

DESCRIPTION

hg

Citation preview

  • SGML

    par Luc SONKDocteur en mathmatiquesPrsident de STSI-SA (Socit des Technologies et Systmes dInformation), Paris

    1. Notions fondamentales .......................................................................... H 7 138 - 21.1 Origine de SGML ......................................................................................... 21.2 Quelques objectifs de SGML ...................................................................... 21.3 Concept de documentation structure....................................................... 31.4 Balisage ........................................................................................................ 31.5 Langages de balisage .................................................................................. 4

    2. Fondements conceptuels de SGML..................................................... 42.1 Rappel de quelques catgories conceptuelles .......................................... 42.2 Processus de modlisation ......................................................................... 52.3 SGML est un mtalangage.......................................................................... 5

    3. Aspects formels de SGML ..................................................................... 73.1 Notions de base ........................................................................................... 73.2 Codage des caractres ................................................................................ 113.3 Notion de conformit .................................................................................. 123.4 SGML et lchange de documents ............................................................. 123.5 SGML sans DTD ........................................................................................... 123.6 Quelques grandes applications SGML....................................................... 13

    4. Positionnement de SGML dans le contexte normatif.................... 144.1 HyTime.......................................................................................................... 144.2 SMDL ............................................................................................................ 144.3 DSSSL ........................................................................................................... 144.4 SPDL.............................................................................................................. 14

    5. volutions dans les annes venir ..................................................... 145.1 Renforcement conceptuel ........................................................................... 145.2 Vers des profils spcialiss ......................................................................... 155.3 De nouvelles normes satellites................................................................... 15

    6. SGML et lingnierie documentaire .................................................... 156.1 Systmes ditoriaux classiques ................................................................. 156.2 Ingnierie documentaire ............................................................................. 156.3 SGML et lingnierie documentaire ........................................................... 176.4 Classification des outils SGML ................................................................... 17

    7. Conclusion ................................................................................................. 18

    Pour en savoir plus ........................................................................................... Doc. H 7 138Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite. Techniques de lIngnieur, trait Informatique H 7 138 - 1

  • SGML ________________________________________________________________________________________________________________________________

    Toute reproduction sans autorisation du Centre franais dH 7 138 - 2 Techniques de lIngnie

    aru en 1986, SGML (Standard Generalized Markup Language), mtalangagede modlisation de documents structurs, suscite un grand intrt dans des

    univers professionnels aussi varis que ldition, la recherche, lindustrie delarmement et laronautique. 1988 marque, au plan international, ladoption deSGML comme standard dchange de documents textes, par l Initiative CALS(phase 1). En cette mme anne nat en France le projet SPEEDOC de la Marinenationale, premier projet de mise en uvre dune architecture documentairearticule autour de documents SGML. Depuis, lintrt des utilisateurs et desspcialistes na fait que crotre, pour une norme relativement complique. Lecot de lacquisition et de la mise jour de la documentation, son exploitationoptimale, les problmes lis aux changes de documents et la rcuprationintelligente de documents existants sont des raisons parmi dautres de cet essor.

    SGML permet en effet la mise en uvre intelligente et efficace du concept dedocumentation structure, la base de toute approche rationnelle des probl-mes documentaires. SGML gnralise le principe de balisage logique gnrique,en une mthodologie de gnration de langages de balisage, et donne lutili-sateur des outils conceptuels pour construire des langages de balisage adapts ses propres applications. Notion centrale de ces langages, la Dfinition duType de Document (DTD) est la grammaire formelle permettant de reprsenterles documents, en principe indpendamment de tout traitement qui pourrait leurtre appliqu, ainsi que des moyens utiliss pour ces traitements.

    Par-del ses nombreuses applications pratiques, SGML est dun grand intrtintellectuel en tant que mtalangage et travers le caractre inclassable desgrammaires quil permet de construire.

    Une rvision de SGML est en cours, qui intgrera au corps de la norme un cer-tain nombre de concepts, trs abstraits pour certains, issus des travaux mensdans le cadre de normes connexes, tels HyTime et DSSSL. mergent dans letemps, pousses en particulier par les besoins en applications documentairesprofessionnelles suscits par le Web-Intranet, des demandes pour une simplifi-cation de la norme. Ces demandes sont lorigine de langages drivs tels queXML.

    Ces deux tendances opposes permettent denvisager pour SGML dans lesannes venir, un accroissement de son audience dj large, allant de linter-naute au chercheur spcialiste de la modlisation.

    Nota : le terme Initiative caractrise, dans lchelle de ladministration amricaine, un projet (amricain) dela plus haute importance, gnralement denvergure internationale.

    P

    1. Notions fondamentales

    1.1 Origine de SGML

    SGML (Standard Generalized Markup Language) est n des tra-vaux de synthse de deux langages conus sur le concept de bali-sage logique : GML (Generalized Markup Language), dveloppchez IBM par C.F. Goldfarb et GENCODE dvelopp pour GCA (Gra-phic Communication Association) par W. Tunnicliffe.

    SGML a aussi beaucoup profit des recherches faites sur les docu-ments structurs, notamment dans les milieux acadmiques, et enparticulier, de langages comme Scribe de Brian Reid.

    SGML a officiellement t adopt comme norme ISO (Internatio-nal Organization for Standardization) en octobre 1986 sous la rf-rence ISO 8879.

    son poids sur certains choix techniques de la norme.

    SGML doit pouvoir modliser tous types de documents.exploitation du droit de copie est strictement interdite.ur, trait InformatiqueLe prsent article aborde succinctement tous les aspects deSGML. Il garde cependant, comme tout texte explicatif dune norme,un caractre plus ou moins exgtique, par rapport au texte de rf-rence qui demeure la norme elle-mme. Le lecteur peut galementconsulter sur le mme sujet Goldfarb [1], Bryan [2], van Herwijnen[3] et louvrage publi en France par la Dlgation Gnrale pourlArmement [4].

    1.2 Quelques objectifs de SGML

    Nous rappelons ci-aprs sans commentaire (pour ne pas alourdirlexpos), quelques principaux objectifs de SGML tels quils appa-raissent dans le texte de la norme. Cet extrait est choisi, en raison de

  • _______________________________________________________________________________________________________________________________ SGML

    Les documents SGML doivent pouvoir se prter tous les typesdexploitation possibles.

    SGML doit garantir la prennit et lchangeabilit des docu-ments, notamment au travers de lindpendance vis--vis desplates-formes matrielles et logicielles.

    SGML doit tre indpendant des jeux de caractres et des languesnationales.

    SGML doit pouvoir tre la fois humainement et automatique-ment interprtable.

    1.3 Concept de documentation structure

    Longtemps rduit la vision structurelle du document, par oppo-sition une autre vision qui serait du type prsentation , leconcept de documentation structure nest pas simple noncer. Lafrontire entre structure et prsentation nest en effet pas tanche.Certaines structurations sont conues en vue de prsentations parti-culires, cependant que certaines restitutions (prsentations) dundocument portent de grandes significations smantiques et structu-relles.

    Introduisons les dfinitions suivantes : nous entendons par approche oriente-document , une

    dmarche dorganisation du document en fonction de catgories etmodes courants de restitution ;

    de mme, une approche informative est une dmarchedorganisation du document porte par son contenu informatif,indpendamment des traitements applicables ce contenu.

    Un exemple de ces deux approches est donn dans le tableau 1.

    La prfrence signifie ici quil ny a pas dopposition systmatiqueentre les deux approches, lune pouvant complter lautre locca-sion.

    Ce concept est le rsultat dune succession de tentatives dorgani-sations structurelles du document, au moyen de diffrentes techni-ques de marquage encore appeles balisages.

    1.4 Balisage

    Le balisage consiste en linsertion de marques au sein dun docu-ment, ce marquage visant permettre et faciliter ultrieurementdivers traitements sur le document. Du balisage physique au bali-sage logique gnrique, ce principe de marquage sest affin pro-gressivement au gr des progrs de linformatique ditoriale. Cettevolution de la notion de balisage peut tre vue la fois comme unlargissement progressif du champ des traitements possibles sur undocument marqu, et comme la capacit accrue de marquer lesdocuments les plus singuliers.

    On peut enfin concevoir le balisage (en particulier le balisage logi-que gnrique) comme une mise en uvre du concept de documen-tation structure.

    1.4.1 Balisage physique

    Le balisage physique, encore appel balisage procdural, est navec les premiers formateurs intgrs aux grands systmes (main-frame) des annes soixante-dix. Il consiste insrer dans le docu-ment des balises propres au systme. Destines au formateurauquel elles indiquent toutes les fonctions excuter pour prsenterle document, ces balises ne font pas partie du contenu informatif dudocument. Elles ne sont pas ncessairement visibles par lutilisa-teur, ainsi que le montre lexemple ci-aprs dun balisage RTF (RichText Format) de Microsoft.

    Tableau 1 Cas dune documentation techniquede maintenance

    Organisation selon une approche oriente-document

    Organisation selon une approche informative

    l Introduction l Introduction

    l chapitre1 l Maintenance prventive

    Exemple : considrons la saisie sous un diteur Word du texte sui-vant.

    Ceci est un exemple destin illustrer le concept de balisage physi-que.

    Les donnes RTF gnres se prsentent sous la forme du balisagesuivant :

    {{ ...\lsl\adjustright\fs 20 Ceci est un exemple destin\e 9\e 0 {\b illus-Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite. Techniques de lIngnieur, trait Informatique H 7 138 - 3

    On peut prsent donner la dfinition suivante pour le concept dedocumentation structure :

    Dans cet exemple, outre le codage des caractres non ASCII,on note les squences {\b illustrer} et {\i balisage physique}, quisont des exemples typiques de balisage physiques, cest--direde marquages destins donner au logiciel des instructions dechoix de fonte. On trouve aussi des instructions de prsentationcomme\adjustright, mais on ne voit que difficilement les instruc-tions permettant de dire quil sagit dune liste numre.

    Les formateurs ont rapidement propos des systmes de balisageavec un nombre rduit de balises sous forme de macrocommandes.Cette volution ne change pas le caractre procdural de tels balisa-ges. Le contenu du concept volue sensiblement avec le balisagelogique.

    1.4.2 Balisage logique

    Le balisage logique peut tre dfini comme un mode de reprsen-tation des documents par marquage, qui consiste dcrire lescomposants des documents et les relations liant ces composants,indpendamment de la forme physique de prsentation et des sup-ports de restitution de ces documents.

    section1 (paragraphe1, ..., paragraphen) ... sectioni (paragraphe1, ..., paragraphek)

    Alimentation (circuit pri-maire, ..., fusibles) Cabine (tableaux alarmes, ..., commandes)

    l ... l ...

    l chapitrep section1 (paragraphe1, ..., paragraphem) ... sectionj (paragraphe1, ..., paragraphel)

    l Maintenance corrective Gnralit (paragraphe1, ..., paragraphek) ... Moteur (rotors, ..., tuyres)

    Dmarche dorganisation des donnes au sein dun docu-ment, mettant en uvre une approche informative de prf-rence une approche documentaire.

    trer} le concept de {\i balisage physique}.\par }}

  • SGML ________________________________________________________________________________________________________________________________

    Toute reproduction sans autorisation du Centre franais dH 7 138 - 4 Techniques de lIngnie

    Cette description mle, pour un document donn, les donnes decontenu dudit document avec les balises reprant sa structure logi-que spcifique. Ici une structure est dite logique en ce sens quelleest a priori indpendante des traitements de prsentation que lonpeut oprer sur le document.

    Utilisant la mme syntaxe, la squence \concept {balisage physi-que} introduit une conception du balisage non ncessairementoriente par la mise en forme physique du contenu balis. Ici,lexpression balisage physique est repre en tant que concept.Elle peut non seulement tre prsente de multiples manires selonles supports de restitution (par exemple en italique, souligne ou engras sur le papier, en vido inverse ou clignotant lcran), maisaussi indexe pour pouvoir tre recherche en tant que concept.

    1.4.3 Balisage logique gnrique

    Un pas supplmentaire est franchi dans la gnralisation duconcept de balisage, avec lapparition du balisage logique gnri-que.

    Un systme de balisage logique gnrique se dfinit comme unbalisage logique, tendu une classe de documents. Les caractris-tiques structurelles particulires dun ensemble de documents sontdcrites par un ensemble unique de balises gnriques.

    1.5 Langages de balisage

    Un langage de balisage est une expression formelle du conceptde balisage. Dans le cas du balisage physique, on parlera plus dunensemble de commandes destines un formateur que dun lan-gage au sens formel.

    Avec le balisage logique apparaissent les langages de balisagelogique. Citons par exemple GML et LATEX dj voqus.

    La notion de classe de documents existe en LATEX, cest--direque cette grammaire dfinit des variantes (en nombre limit) debalisages logiques permettant de dcrire des ensembles particuliersde documents.

    Nous verrons au paragraphe 2.3 que SGML se situe au-del de lanotion de langage de balisage. Il sagit en fait dun gnrateur delangages.

    2. Fondements conceptuels de SGML

    Ce paragraphe sattache montrer en quoi SGML peut tre consi-dr comme un mtalangage. Lexpos propose au lecteur desbases conceptuelles utiles pour une bonne comprhension thori-que de SGML.

    2.1 Rappel de quelques catgories conceptuelles

    On rappelle ici les trois principales catgories conceptuelles lies la dfinition et lusage dun modle au sens informatique.

    2.1.1 Modle

    Un modle est la description dun univers donn, en vue de saprise en compte automatique. Par prise en compte automatique, onentend ici la gnration ou linterprtation, sur ordinateur, de don-nes appartenant cet univers.

    Le modle peut, dans une phase initiale et ventuellement plu-sieurs phases intermdiaires, tre spcifi au moyen de langagesgraphiques tels que NIAM (Nijssen Information Analysis Method)ou IDEF0 (Integrated computer-aided manufacturing DEFinition lan-guage - Functional Modeling). Cependant, ayant en vue la prise encompte automatique des modles ( la diffrence des modlesmathmatiques, par exemple), on est orient vers la dfinition demodles formels dont lcriture en permet le traitement en machine.Des exemples de ces modles (en restant dans le domaine docu-mentaire) sont RTF, LATEX ou HTML [5].

    Cette remarque conduit galement inclure, dans la dfinitiondun modle, les critres de conformit des futures instances dumodle.

    2.1.2 Instance

    Une instance est un assemblage cohrent de donnes valide dansun univers donn, cest--dire conforme un modle donn. Elle estdrive du modle par valuation des diffrents paramtres et struc-tures prvus au sein de celui-ci. Il sagit dune donne passive, en cesens que, bien que valus, les paramtres quelle contient ne sontpas activs. Linstance peut tre gnre automatiquement ou non.

    Le modle dfinit une classe dont linstance est un reprsentant.Le nombre dinstances nest donc a priori pas limit.

    La conformit de linstance au modle doit se vrifier par une pro-cdure automatique. On parle alors de parsing indpendamment detout traitement possible sur cette instance. De ce point de vue, dansle domaine documentaire, la visualisation dune instance composene peut suffire pour prononcer la conformit de cette instance son

    Exemple : reprenant lexemple donne au paragraphe 1.4.1 et ensinspirant de la syntaxe du langage LATEX, on peut imaginer le bali-sage suivant :

    \begin {enumerate}Ceci est un exemple destin \gras {illustrer} le concept de\concept

    {balisage physique}.\item\end {enumerate}

    o lon retrouve le choix des fontes (\gras...) mais o les commandesde prsentation de Word sont remplaces par des commandes destructuration (enumerate, item).exploitation du droit de copie est strictement interdite.ur, trait Informatique

    modle.

    2.1.3 Occurrence

    La notion doccurrence dsigne le rsultat dune excution parti-culire dune instance. Dfinir la gnration dune occurrencecomme une excution dune instance revient dire quune occur-rence nest pas uniquement une transformation (rorganisationstructurelle, par exemple) dune instance donne. Par-del les ven-tuelles transformations, le processus de gnration dune occur-rence peut se caractriser de la manire suivante :

    les paramtres du modle valus linstanciation sont, cette fois,activs pour produire un rsultat attendu, humainement interprta-ble.

    Dans le domaine documentaire, la gnration dune occurrencepeut donc sapparenter lapplication de styles de prsentation.

    Ainsi, loccurrence se positionne vis--vis de linstance commelinstance elle-mme se positionne vis--vis du modle. Loccur-rence est en quelque sorte une instance (du modle) au secondordre. Il sagit cependant de la phase terminale du processus dins-tanciation. Dune occurrence, en effet, on ne peut driver quuneautre occurrence.

  • _______________________________________________________________________________________________________________________________ SGML

    Le nombre doccurrences que lon peut gnrer partir dune ins-tance donne est illimit.

    Sagissant des occurrences, la notion de conformit est moinssimple que dans le cas des instances. Il sagit dune conformit indi-recte, car la notion est ici attache non aux occurrences elles-mmes, mais aux outils (logiciels) produisant ces occurrences. La conformit des occurrences est indirectement garantie par lacertification des outils qui les gnrent. Un exemple de certificationen France est lattribution de la marque NF de lAFNOR.

    2.2 Processus de modlisation

    Ce paragraphe prsente brivement le processus de modlisa-tion.

    Dans une approche simplificatrice, deux tapes peuvent tre envi-sages au sein du processus de modlisation : la structurationconceptuelle et lapproche formelle.

    2.2.1 Structuration conceptuelle

    Cette tape consiste en la dfinition de larchitecture du modle.Elle inclut donc le recueil exhaustif des concepts caractrisant lessituations modliser, larticulation de ces concepts entre eux, etc.Ce travail relve essentiellement des comptences des acteurs dudomaine dactivit que lon se propose de modliser. Sagissant dudomaine de lingnierie documentaire, cette tche sera prise encharge par des diteurs, des documentalistes ou des spcialistes dela documentation technique, par exemple. Il peuvent tre assistsdans la mise en perspective (au moyen de langages graphiques, parexemple) de ce travail par des spcialistes.

    2.2.2 Approche formelle

    Cette tape consiste produire ce qui est habituellement appelformat ou modle neutre. Il sagit de la description dtaille delarchitecture issue de ltape prcdente, au moyen de langagesformels traitables en machine. Selon la nature des situations modliser, une approche spatio-temporelle peut tre adopte, o leparamtre temps est explicitement repr, avant toute gestion deschronologies et synchronisations gnralement traites loccur-

    domaine de lingnierie documentaire, lapproche SGML relve decette dmarche.

    Ainsi, une DTD (Dfinition du Type de Document) est une gram-maire particulire permettant la description dune classe particulirede documents.

    Llment fdrateur de la norme est, dans ce cas, constitu delensemble des ressources normalises permettant aux utilisateursde gnrer leurs grammaires. Les ressources incluent, outre les dfi-nitions de jeux de caractres, sparateurs et syntaxes, les rgles dedfinition des grammaires. La donne des ressources et des gram-maires particulires constituent les modles des diffrents utilisa-teurs.

    Dans le cas de la norme SGML, les ressources sont indiquesdans une partie appele SGML declaration (que nous appelleronspar la suite dclaration SGML). Un modle SGML est donc la don-ne dune dclaration SGML et dune DTD (en fait un prolog). Nousreviendrons sur laspect mtalangage SGML au paragraphe 2.3.

    Pour tre entirement conforme la dmarche ISO, le processusde modlisation est complet lorsque le modle (langage ou mta-langage) dfini est accompagn des lments ncessaires la vali-dation automatique des instances qui seront produites et lacertification (au sens o nous lavons envisag au paragraphe 2.1.3)des pr et postprocesseurs du modle.

    Nota :

    un prprocesseur est un logiciel susceptible dinstancier (gnrer des instances) lemodle ;

    un postprocesseur est un logiciel susceptible dinterprter les instances du modle,cest--dire de les traiter, au sens large (par exemple, pour les modifier ou produire desoccurrences).

    2.3 SGML est un mtalangage

    2.3.1 Introduction : approche intuitive

    Considrons lexemple donn aux paragraphes 1.4.1 et 1.4.2,comme fragment du document global, cest--dire un article consa-cr SGML. Une traduction SGML de ce fragment donne :

    SGML

    ...

    Ceci est un exemple destin illustrer le concept de balisage physique.Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite. Techniques de lIngnieur, trait Informatique H 7 138 - 5

    rence.

    Rappelons que la neutralit du modle signifie quil est lersultat dun consensus et est, de ce fait, susceptible de comprhen-sion et dusage par le plus grand nombre.

    La tendance habituelle consiste, dans un domaine donn, dfinirun modle formel dont lensemble des primitives prend en comptetous les concepts du domaine en question. Telle est par exemplelapproche suivie par la norme CGM [cf. Doc H 7 138], pour la mod-lisation des objets graphiques vectoriels en deux dimensions. Onatteint rapidement les limites dune telle approche, ds lors quelunivers dcrire nest pas relativement simple. Et mme dans descas assez simples, lintroduction de nouveaux concepts entrane ladfinition de nouvelles primitives dans le modle, et donc lamende-ment de celui-ci.

    Lorsque les situations modliser sont de grande complexit (parexemple, les situations dont la description exhaustive conduit envisager un nombre de cas conduisant vers une explosion combi-natoire), lusage de mtalangages savre indispensable. Cela signi-fie que les langages de modlisation utiliss sont en fait desgrammaires gnres par les utilisateurs (ou leurs mandataires quien ont la comptence), partir de ressources conceptuelles plusgnrales. Il sagit alors de grammaires compltement conuespour prendre en compte leurs situations spcifiques. Dans le

    ...

    Ce balisage fait apparatre le fragment considr comme unparagraphe (ce que signifie les balises et ) au seindun document de type article (ce que signifie les balises et ), donc le titre est SGML (ce que signifie lesbalises et ).

    Au sein du fragment, lexpression balisage physique est rep-re comme concept par les balises et . Un logi-ciel sachant interprter le balisage dfini pourra oprer la mise engras du mot illustrer , ds lors quil dtectera les balises et.

    Ces explications supposent que soit dfini quelque part unensemble de conventions donnant notamment :

    la liste et la syntaxe des balises dfinies pour marquer ledocument ;

    larticulation des balises au sein du document ; les rgles particulires dutilisation des balises.

    Ces rgles sont rassembles au sein de ce qui constitue le modledu document, la DTD. Ce concept SGML de DTD sera prcismentdfini au paragraphe 2.3.3.2, puis dvelopp au paragraphe 3.1.2.1.

  • SGML ________________________________________________________________________________________________________________________________

    Toute reproduction sans autorisation du Centre franais dH 7 138 - 6 Techniques de lIngnie

    Le balisage utilis dans lexemple qui prcde est donc dfini parune DTD. Un aspect au moins de cette DTD est trs rudimentaire. Ilsagit de la dfinition des balises et , conues pourindiquer, un logiciel de prsentation, la mise en gras dune partiedu texte. Inspire de la prsentation initiale du texte baliser, la dfi-nition de cette balise ne couvre cependant pas dautres traitementsqui, bien que diffrents de la mise en gras, relvent cependant de lamme notion.

    On peut ainsi dfinir une nouvelle DTD permettant, travers unemme balise, dindiquer, selon les logiciels et support de restitution,les traitements tels que la mise en gras, la mise en italique, le souli-gnement, la mise en vido inverse ou la mise en clignotant. Ces trai-tements relvent en effet tous de la notion de mise en vidence .

    Une nouvelle version SGML du fragment prsent plus haut seprsente comme suit :

    SGML

    ...

    Ceci est un exemple destin illustrer le concept de balisage physique .

    ...

    Dans ce nouvel exemple, la balise est remplace par labalise . Cette nouvelle balise per-met dindiquer le type de mise en vidence souhait, en affectantune valeur lattribut type (ici, la valeur est gras . Mais ellepourrait tre italique , clignotant , etc.). La notion dattributsera dfinie au paragraphe 3.1.2.1.3.

    En conclusion cette brve introduction, il apparat que : SGML permet de dfinir un modle de document (DTD) per-

    mettant le balisage dune classe de documents ; un mme document peut recevoir plusieurs modles de docu-

    ment au sens SGML.

    Aprs ces exemples, nous allons prsent entrer plus en dtaildans les ressorts SGML comme mtalangage.

    2.3.2 Du balisage logique la gnration de langages de balisage

    Comme rappel au paragraphe 1.4.2, le balisage logique dundocument est le processus consistant reprer, au moyen dunesrie de marques prdfinies, les composantes de ce document et dcrire les relations liant ces composantes, indpendamment de laforme physique de restitution de ce document pour exploitationhumaine. Cette description mle les donnes de contenu et les don-nes reprant la structure du document.

    Lensemble de ces marques prdfinies (ou encore balises)constitue un langage de balisage. Quelques exemples de langage debalisage ont t prsents au paragraphe 1.5. Chacun de ces langa-ges est dot dune syntaxe et dun systme propres de dsignationdes balises.

    Il peut cependant arriver que deux de ces langages soient quiva-lents, en ce sens quils sont conus pour reprsenter une mmeclasse de documents. Chaque langage nest alors quune vue struc-turelle particulire de la mme classe de documents. Dans cesconditions, imposer un langage de balisage un utilisateur apparatcomme une dmarche arbitraire.

    Do lide matresse des concepteurs de SGML :

    SGML gnralise le principe de balisage logique en ltendant enun concept plus gnral : la GNRATION de LANGAGES de BALI-SAGE. En cela, SGML est un mtalangage.

    2.3.3 Document au sens SGML

    En tant que mtalangage, SGML peut tre conu comme unensemble gnrique de rgles permettant de construire des langa-ges de balisage logique. Ces langages de balisage sont des mod-les, au sens des catgories conceptuelles rappeles au dbut duparagraphe 2. Selon ces catgories, SGML introduit donc un niveauconceptuel supplmentaire, en de du niveau modle, le niveaumtamodle.

    Un document au sens SGML est la donne, au sein dun mmedocument logique, des trois composantes :

    la dclaration SGML (mtamodle) ;

    le prolog (modle), que nous appellerons par la suiteprologue ;

    linstance.

    2.3.3.1 Dclaration SGML

    La dclaration SGML reprsente le niveau mtamodle. Cestlensemble des ressources permettant aux utilisateurs de gnrerleurs propres modles, cest--dire les types de document. En tho-rie, la dclaration SGML permet de dfinir tout dans le modle.

    Ainsi, par exemple, elle ne fige pas la syntaxe (les dlimiteurs, lesmots-cls, les symboles spciaux, etc.) dcriture des types de docu-ments. travers la dclaration par dfaut de la norme et sa syntaxeconcrte de rfrence, SGML offre les rgles de construction dessyntaxes concrtes particulires.

    Dans la pratique, selon le domaine dapplication, on fixera unesyntaxe concrte et lon choisira parmi les fonctionnalits propo-ses par la dclaration SGML celles dont on a besoin. Dfinir ainsiun modle revient btir une application de SGML.

    2.3.3.2 Prologue

    Au sens des catgories conceptuelles rappeles au paragraphe 2,le prologue se positionne au niveau modle. Il rassemble les dcla-

    Donner aux utilisateurs des outils conceptuels leur permettantde crer par eux-mmes des langages de balisage adapts leurs applications.exploitation du droit de copie est strictement interdite.ur, trait Informatique

    rations du type de document (DTD) et les dclarations de type delien (LPD - Link Process Declaration).

    De SGML, beaucoup dutilisateurs ne retiennent que cette partieprologue, plus particulirement la DTD. Cest quimplicitement ils selimitent aux ressources que propose la dclaration SGML pardfaut, ce qui pose parfois des problmes, lorsque, par exemple, lasyntaxe concrte de rfrence ne suffit pas pour prendre en comptetoutes les particularits dune classe de documents donne.

    2.3.3.3 Instance

    Linstance est le contenu informatif du document, marqu par lesbalises qui le structurent. Il sagit de la partie du document qui est laplus accessible lutilisateur, mais qui demeure incomprhensibleen labsence de la DTD.

    2.3.4 Par-del la gnration de grammaires

    Nous concluons cette partie, consacre aux ressorts conceptuelsde la norme, par une discussion au sujet de la nature des grammai-res que permet de gnrer SGML.

  • _______________________________________________________________________________________________________________________________ SGML

    Les expressions rgulires sont utilises dans la norme SGML 3. Aspects formels de SGML

    Tableau 2 Syntaxe concrte de rfrence

    Rubrique Syntaxe abstraite SignificationSyntaxe concrte

    de rfrence

    Balisage

    STAGO Ouverture dune balise de dbut

    PIO Ouverture dune instruction de traitement

  • SGML ________________________________________________________________________________________________________________________________

    Toute reproduction sans autorisation du Centre franais dH 7 138 - 8 Techniques de lIngnie

    la capacit mmoire ncessaire au traitement du document ; les champs dutilisation de la syntaxe concrte ; la syntaxe concrte elle-mme ; les fonctionnalits (choisies parmi celles proposes par la

    norme) utilises dans le document ; les informations concernant dventuelles applications spcifi-

    ques.

    Les six rubriques prcdentes apparaissent dans la dclarationSGML sous six clauses identifiables dans lordre par les nomsrservs : CHARSET, CAPACITY, SCOPE, SYNTAX, FEATURES etAPPINFO.

    Nous donnons sur la figure 1 un exemple de dclaration SGML.

    3.1.2 Prologue

    Comme nous lavons vu au paragraphe 2.3.3.2, le prologuecontient les dclarations des types de document (DTD), dont luneest la dclaration du type de document de base, et les dclarationsdes types de liens (LPD). Ce paragraphe est consacr la descriptionformelle des concepts de base de ces composantes du prologue.

    3.1.2.1 DTD

    La DTD dcrit, dans un langage spcifique (lensemble des motsrservs de SGML et la syntaxe concrte dfinie dans la dclarationSGML), la structure formelle du type de document que lon se pro-pose de modliser.

    Historiquement, la DTD comporte les quatre catgories de dcla-rations suivantes :

    les dclarations dlments ; les dclarations des listes dattributs ; les dclarations dentits ; les dclarations dappels abrgs.

    Lexpos ne traitera pas des appels abrgs, mcanismes assezcomplexes et dune mise en uvre dlicate, que la norme a aban-donns.

    Est dcrite ci-aprs, non pas au moyen de rgles de productionmais en utilisant la syntaxe concrte de rfrence, chacune de cesconstructions. Les mots reservs et les symboles de la syntaxeconcrte de rfrence sont indiqus en gras.

    Toute dclaration ou dfinition souvre par le symbole (MDC) :

    3.1.2.1.1 Le type de document

    La forme gnrale de dclaration dune DTD est la suivante :

    o :

    DOCTYPE est le mot rserv qui annonce la dclaration duntype de document ;

    nom_du_type_de_document est lidentificateur du type dedocument. Il ne peut apparatre comme identificateur dun autretype de lien, ni dun autre type de document, au sein du mmeprologue ;

    identificateur_externe pointe sur une entit rfrence quiconstitue, avec les dclarations, la dclaration du type dedocument ;

    entre les crochets [dclarations] sont dclares les diversesparties de la structure du document ainsi que les ventuelles abr-viations adoptes. Nous dtaillons ci-aprs quelques-unes de cesdclarations.

    3.1.2.1.2 Les lments

    La forme la plus gnrale de dclaration des lments est lasuivante :

    avec :

    ELEMENT mot rserv qui annonce la dclaration dun ou deplusieurs lments ; et le modle de contenu qui se dcomposecomme suit :

    (elm1, ..., elmk) est le groupe de modle, compos des knoms dlments que lon dfinit (il ny a pas de parenthses lors-que k = 1) ;

    O sont les indicateurs domission de balisage de dbut et defin dlment ;

    (el1, ..., elj) est le contenu commun aux lments dclars,compos des j lments el1, ..., elj ; et enfin les exceptions :

    (e1, e2, ..., ei) groupe dlments inclus ; (ex1, ex2, ..., exn) groupe dlments exclus.

    Inclusions et exclusions sont dfinies ci-aprs.

    n Exceptions

    l Inclusions :

    (ex1, ex2, ..., exn) Exclusion des lments ex1, ..., exn. Leur occur-rence est impossible dans chacun des lments elm1, ..., elmkmme si la dfinition des sous-lments el1, ..., elj autorise leurprsence.

    l Exclusions :

    +(e1, e2, ..., ei ) Inclusion des lments e1, ..., ei. Leur occurrenceest autorise dans les lments elm1, ..., elmk mme si leur dfini-tion nest pas explicite dans les sous-lments el1, ..., elj.

    Lexclusion dun lment rendu obligatoire par le groupe demodle est interdit.

    Lexclusion a la priorit sur linclusion. Autrement dit un lment la fois autoris par une inclusion et interdit par une exclusion estexclu tous les niveaux hirarchiquement infrieurs au niveau o alieu la dclaration.

    Ces deux rgles montrent quil est prfrable dindiquer lesexceptions au plus prs des lments concerns, cest--dire le plusbas possible dans la structure hirarchique.exploitation du droit de copie est strictement interdite.ur, trait Informatique

    n Groupe de modle

    SGML utilise les connecteurs , , & et | pour prciser lecontenu dun groupe de modle. Le groupe de modle dcrit donc lecontenu dun lment au moyen dune expression rgulirecompose didentifiants dlments. Les lments terminaux (don-nes textuelles) sont indiqus par le symbole #PCDATA.

    Les lments el1, el2, ..., elj peuvent ventuellement tre suivisdun symbole doccurrence, par exemple (el1, el2*, el3?, el4

    +, ..., elj).

    Groupe de modle Signification

    (el1, el2, ..., elj) Les j lments doivent obligatoirement tre prsents dans les lments dcrits, et dans lordre qui est indiqu.

    (el1& el2& ... &elj) Les j lments doivent obligatoirement tre prsents, mais dans nimporte quel ordre.

    (el1| el2| ... |elj) Un et un seul des j lments doit tre pr-sent dans les lments dcrits.

  • _______________________________________________________________________________________________________________________________ SGML

    128 128 UNUSEDCAPACITY PUBLIC "ISO 8879-1986//CAPACITY Reference//EN"SCOPE DOCUMENTSYNTAX PUBLIC "ISO 8879-1986//CAPACITY Reference//EN"SHUNCHAR CONTROLS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 2526 27 28 29 30 31 127 255BASESET "ISO 646-1983//CHARSET International Reference Version (IRV)//ESC 2/5 4/0"

    DESCSET 0 128 0FUNCTION RE 13

    RS 10SPACE 32TAB SEPCHAR 9

    NAMING LCNMSTRT ""UCNMSTRT ""LCNMCHAR "-"UCNMCHAR "-"NAMECASE GENERAL YESENTITY NO

    DELIM GENERAL SGMLREFSHORTREF SGMLREF

    NAMES SGMLREFQUANTITYSGMLREFFEATURESMINIMIZE DATATAG YES OMITTAG YES RANK YES SHORTTAG YESLINK SIMPLE YES 10 IMPLICIT YES EXPLICIT YES 10OTHER CONCUR YES 10 SUBDOC YES 10

    FORMAL NO

    APPINFO NONE>Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite. Techniques de lIngnieur, trait Informatique H 7 138 - 9

    n lments contenu dclar

    Le contenu dun lment contenu dclar peut prendre lune desvaleurs suivantes : CDATA, RCDATA, EMPTY, o :

    CDATA (Character Data) indique que toutes les chanes decaractres constituant le contenu de llment dclar, y compris les

    chanes de caractres interprtes comme des balises ou des appelsdentits, sont considrer (par un parseur) comme des donnestextuelles ;

    RCDATA (Replaceable Character Data) se distingue du contenuCDATA par le fait que les appels dentit sont ici pris en compte ;

    EMPTY indique un contenu vide.

    Pour les lments contenu dclar CDATA ou RCDATA, loptionde minimisation de balisage est ncessairement -- . Autrementdit, la prsence des balises de dbut et de fin de ces lments estobligatoire.

    La balise de fin est en revanche omise pour les lments contenu dclar EMPTY.

    Figure 1 Exemple de dclaration SGML

    Symbole Signification

    + lment obligatoire, ventuellement rpti-tif (1 ou plus)

    ? lment optionnel qui ne peut tre rptitif (0 ou 1)

    * lment optionnel, ventuellement rptitif (0 ou plus)

  • SGML ________________________________________________________________________________________________________________________________

    Toute reproduction sans autorisation du Centre franais dH 7 138 - 10 Techniques de lIngnie

    n Non-ambigut des modles de contenu

    Il sagit dune clause non exprimable par une grammaire formelle.Lnonc de la rgle est le suivant :

    Le modle de contenu suivant :

    est ambigu, car aprs loccurrence du a , on ne peut dterminerabsolument le groupe dappartenance de b . Lambigut peuttre leve par une dclaration intermdiaire, ainsi quil suit :

    3.1.2.1.3 Les attributsLa forme courante de dfinition dattribut est la suivante :

    attribut2 type2 valeur_par_dfaut2

    ...

    attribut_n type_n valeur_par_dfaut_n >

    o : ATTLIST est le mot rserv qui annonce la dclaration dune

    liste dattributs ; elem est le nom de llment dont on dfinit les attributs ; attribut_k est le nom du ke attribut dclar ; type_k est un mot-cl qui prcise la nature du contenu du ke

    attribut.

    On a :

    En outre, valeur_par_dfaut_k est une des valeurs autorises(entre quotes) pour le ke attribut, ou un des mots-cls suivants :

    3.1.2.1.4 Les entits

    Certaines donnes ou ensembles de caractres peuvent tre des-tins sinsrer dans le document (des donnes issues dautressources, par exemple), sans quil soit ncessaire de les saisir direc-tement. Ces ensembles sont alors rfrencs sous des noms symbo-liques. Ce sont les entits.

    Les entits SGML peuvent se classer en trois catgories : les enti-ts gnrales, les entits paramtres et les entits externes.

    n Les entits gnrales

    Rfrences dans une DTD ou un LPD, elles sont destines treutilises dans le document instance. La forme de leur dclaration estla suivante :

    o : ENTITY est le mot rserv qui annonce la dclaration dune

    entit ; nom_de_lentit est le nom de lentit dclare ; contenu_rfrenc est le contenu de lentit dclare, avec

    pour valeur possible : un paramtre littral, du texte entre crochets,des donnes textuelles, une spcification dentit externe.

    lintrieur du document, linsertion du contenu rfrenc seraindique par un appel didentit dont la syntaxe est donne par&nom_de_lentit ;

    n Les entits paramtres

    Elles sont utilises, dans les dclarations de balisage, pourregrouper des noms dlments jouant des rles analogues. Ladclaration et lappel dentit paramtre ont des syntaxes diffren-tes de celles des entits gnrales.

    o : nom_de_lentit est le nom de lentit dclare ; contenu-rfrenc est le contenu de lentit dclare, du texte

    entre crochets.

    Dans la DTD, lappel se fera par % nom_de_lentit.

    n Les entits externes

    toute occurrence dun lment dans le document instance,le parseur doit pouvoir dterminer son groupe de modledappartenance, sans lecture anticipe.

    Lexemple ci-aprs est extrait du texte de la norme.

    Mot-cl Nature du contenu de lattribut

    NUMBER(S) Nombre ou liste de nombres

    NUTOKEN Chane de caractres commenant nces-sairement par un chiffre

    NMTOKEN Chane de caractres ne commenant pasncessairement par une lettre

    ENTITY(IES) Un nom (ou des noms) dentit(s) gn-rale(s)

    CDATA Une chane de caractres quelconque

    ID Identificateur (un nom SGML) dun lment

    NAME(S) Un nom SGML

    Mot-cl Signification

    #REQUIRED La valeur de lattribut doit obligatoirement tre indique

    #IMPLIED Le systme dfinira une valeur pour lattri-but si aucune valeur nest indique

    #FIXED Lattribut a une valeur fixe qui est unique

    #CURRENT La dernire valeur indique sera utilise par dfaut si aucune valeur nest spcifie

    Exemple : on peut saisir &ISO ; dans le courant du document, aulieu de International Organization for Standardization. Dans la DTD, onaura alors la dclaration suivante :

    exploitation du droit de copie est strictement interdite.ur, trait Informatique

    Il sagit dentits paramtres ou gnrales, mais dont le contenurfrenc est externe. contenu_rfrenc est alors la rfrence (parexemple, un nom de fichier) au texte de lentit qui est stock parailleurs. Les entits externes ont lune des formes de dclaration sui-vantes.

    l Entit systme :

    o : SYSTEM est le mot rserv qui caractrise une entit systme ; identificateur_systme indique au systme la valeur de lentit

    dclare.l Entit public :

    o : PUBLIC est le mot rserv qui caractrise une entit publique ; identificateurpublic indique lidentit de lentit dclare, qui

    est indpendant du systme ; identificateur_systme indique la manire dont le systme

    accde localement lentit dclare.

  • _______________________________________________________________________________________________________________________________ SGML

    Lentit public est ncessairement formel lorsque loptionFORMAL est active dans la dclaration SGML. La dclaration esttype par lun des mots-cls du tableau suivant.

    l Notation :

    Elle permet dappeler des donnes externes qui ne contiennentpas du texte SGML. Deux formes de dclaration sont possibles :

    3.1.2.1.5 Les commentaires

    Au sein dune dclaration, tout texte encadr par deux doublestirets -- est considr comme un commentaire ; par exemple :

    SGML permet le contrle de la structure et de la syntaxe des l-ments dclars, mais pas leur smantique. Lusage efficace descommentaires peut aider apprhender la smantique des l-ments et autres contraintes qui leur sont attaches.

    Les commentaires sont dune grande utilit pour fournir informa-tions et contraintes non exprimables par le langage seul, notam-ment :

    des informations au sujet des lments (smantique, conseildutilisation, etc.) ;

    des informations au sujet de lobjectif, de la structure et du sta-tut (version, mise jour, etc.) de la DTD ;

    des informations au sujet de la signification des attributs ; des informations au sujet des outils spcifiques permettant

    lorganisation et la mise en uvre de lapplication.

    Les commentaires peuvent ventuellement tre exprims aumoyen de langages formels adapts (par exemple, un langage decontrle qui prcise le contenu smantique dun lment dclar

    dire que plusieurs occurrences de la balise portant lattribut IDREFsont possibles au sein du mme document instance.

    3.1.2.1.7 Les sections marquesIl sagit dune fonctionnalit de base de la norme, mme si cer-

    tains systmes ne les traitent pas tous. Elles dclarent certaines par-ties du document destines recevoir des traitements particuliers.

    La forme de la dclaration est la suivante :

    o contenu__traiter est le texte de la section marque ettype_de_traitement peut prendre lune des valeurs suivantes :

    IGNORE : contenu__traiter est ignor ; INCLUDE : contenu__traiter est inclus ; RCDATA : seuls les appels dentits sont traits dans

    contenu__traiter ; CDATA : les caractres spciaux SGML de contenu__traiter

    sont ignors ; TEMP : contenu__traiter est inclus, mais temporaire.

    3.1.2.2 LPD

    Les dfinitions de processus de liens (LPD - Link ProcessDefinition) ne sont voques ici qu titre historique, les objectifsviss par ces constructions tant dsormais repris intgralement parla norme DSSSL (cf. [Doc H 7 138]).

    Les LPD ont en effet t conus au dpart pour associer, un typede document donn (DTD), un autre type de document, dans un butde formatage. Il sagit dune transformation du type documentlogique fi document physique.

    Concrtement, le LPD regroupe au sein du prologue un ensemblede dclarations dattributs. Ces attributs spcifiques sont associs(mis en correspondance) avec les lments dune DTD donne, sansmodification de cette dernire.

    3.1.3 Instance

    Linstance SGML correspond bien la dfinition gnrale quenous avons donne de la notion dinstance au paragraphe 2.1.2. Ilsagit du document balis conformment son modle, la DTD.

    Les divers lments dclar dans la DTD reoivent ici leurs conte-nus sous forme de texte ou didentifiant des adresses de leurscontenus ; les attributs sont valus, les liens sont rsolus. Linstance

    Mot-cl Signification

    SUBDOC Lentit contient un sous-document

    CDATA Lentit contient des donnes textuelles

    SDATA Lentit contient des donnes spcifiques au systme

    NDATA Lentit contient des donnes qui ne sont pas des donnes SGMLToute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite. Techniques de lIngnieur, trait Informatique H 7 138 - 11

    on parle alors de contenu typ). Des parseurs volus peuventalors prolonger lanalyse structurelle et syntaxique des documentspar lanalyse smantique de leur contenu. De tels parseurs existentdans le commerce, gnralement bass sur des grammairesdexpressions rgulires.

    3.1.2.1.6 Les rfrences croises ID fi IDREF

    Ce mcanisme permet dattacher un lment (comme attribut)de la DTD un identificateur unique ID. Llment peut ainsi tre par-tout rfrenc par un autre lment, lui-mme muni dun autre iden-tificateur IDREF.

    ID et IDREF sont bijectivement associs lun lautre. Dans uneinstance cependant, la relation ID fi IDREF est multivoque, cest--

    peut contenir des sections marques et des sous-documents.

    Linstance est donc le document apte recevoir (presque) tous lestraitements de gestion et dexploitation mis en place par les utilisa-teurs dans le cadre dapplications particulires ; par exemple :

    la migration de composants du document vers une base dedonnes de gestion de fragments ;

    lchange de fragments ; la composition selon divers styles.

    3.1.3.1 Instructions de traitement

    Parce que lis des systmes particuliers, certains traitementseffectus sur une instance peuvent exploiter, outre le balisage dudocument conformment sa DTD, des instructions spcifiquesinsres dans le corps du document. Il sagit des Processing Instruc-tion (PI).

    Les PI peuvent apparatre nimporte quel endroit au sein dudocument. Leur syntaxe est la suivante :

  • SGML ________________________________________________________________________________________________________________________________

    Toute reproduction sans autorisation du Centre franais dH 7 138 - 12 Techniques de lIngnie

    instruction_de_traitement une instruction destine au systmede traitement du document.

    Lors de lanalyse du document, le parseur ignore les PI, cest--dire quil suspend lanalyse partir de la dtection du PIO (

  • _______________________________________________________________________________________________________________________________ SGML

    Nous donnons ci-aprs un aperu de leurs philosophies. Leursnotions de bases ne prsentent pas de difficults particulires pourles personnes familires de SGML. Elles sont mme dun niveauconceptuel moindre. Leur expos nentre cependant pas dans lecadre restreint du prsent article. Les lecteurs intresss pourrontconsulter les documents cits en [Doc H 7 138].

    3.5.1 HTML

    HTML est conu sur le principe du balisage procdural, ceci prsque le balisage est pens non pour permettre le formatage desdocuments, mais essentiellement orient par la navigation hyper-textuelle (ce qui dune certaine faon revient au mme, tantlexploitation lectronique de linformation) sur le rseau Internet,depuis un poste client quelconque.

    On peut classer les balises HTML en trois catgories : les balises daffichage des documents, qui organisent linfor-

    mation selon la logique documentaire ; les balises servant aux renvois intradocumentaires ou aux

    appels dobjets externes ; les balises de localisation des serveurs dinformation.

    Toutes ces balises font abondamment appel au mcanisme SGMLdes attributs, pour grer la localisation de linformation, ou pourindiquer les caractristiques de laffichage de linformation (tailledes caractres, mise en vidence, etc.).

    Les experts SGML ont par la suite entrepris lcriture dune DTDHTML, considrant que lensemble des balises de ce langage ad hocpouvaient sarticuler au sein dune grammaire cohrente qui,moyennant la spcification dune dclaration SGML adapte, pou-vait sinterprter comme un modle de document sens SGML.

    Cette DTD na cependant pour unique intrt que le fait de rangerHTML au nombre des applications SGML. Conu en effet dans leseul but dtre accessible en consultation, le document HTML ne sesoucie pas dtre valide au sens SGML. La visualisation du docu-ment depuis un poste client quip dun navigateur HTML tient lieude parsing. La DTD est donc condamne demeurer implicite, dumoins dans loptique actuelle du Web.

    HTML est donc considr dsormais comme un profil applicationSGML destin la normalisation des applications Web. La version4.0 de cette spcification est en cours de dfinition et devrait conte-nir des mcanismes normaliss de localisation incluant URL, requ-tes SQL et noms de fichiers.

    En dehors de quelques particularits telles que la syntaxe pour la balise de fin des lments dclars EMPTY, lessentiel desnotions XML sont des clauses restrictives partir des conceptsSGML ; tel est le cas par exemple de linterdiction par XML delomission de balisage.

    XML spcifie des mcanismes hypertextes pour les applicationsWeb, en prenant appui sur les mcanismes dadressage HyTime,permettant notamment la dfinition de liens typs et de liens cibles multiples.

    Lvolution de XML prvoit la spcification de feuilles de style nor-malises bases sur la norme DSSSL.

    Signalons, pour terminer, que le jeu de caractres de rfrencepour les documents XML est UNICODE.

    3.5.2.2 Document bien form au sens XML

    Le document bien form est la seule notion XML que nous pr-sentons ici. Nous renvoyons la lecture du document [6] dit par leW3C, pour plus de dtail sur le contenu de la spcification. Pour uneprsentation introductive, voir larticle de F. Chahuneau [7].

    La notion XML de document bien form ne sapparente que deloin la notion de validit au sens SGML (conformit un modle),la prsence de la DTD ntant plus requise pour les documents XML.

    La dfinition ci-aprs est une interprtation de la dfinition for-melle du document officiel de la spcification XML. La dfinitionexacte nous conduirait un expos dtaill des notions XML soumi-ses aux contraintes WFC (well-formedness constraint), ce qui esthors du propos du prsent article.

    La notion de fermeture implique une forte exhaustivit locale dudocument (suppression des rfrences externes).

    Cette dfinition implique la notion dhritage, mais aussi unniveau de dterminisme lev quant au contenu des instances dunetelle DTD, do la suppression de nombreuses possibilits de SGML,au nombre desquelles :

    les inclusions et les exclusions ;

    Un document texte est dit bien form au sens XML si la struc-ture reconstituable partir de son balisage est complte et fer-me, et peut tre mise en bijection avec lensemble des nudsdun arbre hirarchique.Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite. Techniques de lIngnieur, trait Informatique H 7 138 - 13

    3.5.2 XML

    3.5.2.1 Objet de XML

    Projet du W3C, XML (eXtensible Markup Language) vise la diffu-sion, travers le Web, de vritables instances SGML. La spcifica-tion peut donc sentendre (comme le suggre ce nom) comme uneextension de HTML permettant lutilisateur de dfinir ses propresbalises. Comme nous lavons indiqu en introduction, XML est enfait une restriction particulire des possibilits de SGML, ce qui estla dfinition mme dun profil dapplication.

    On peut donc schmatiquement situer XML entre SGML et HTML.Sa naissance a t suscite par les limites rencontres dans lutilisa-tion de ces deux dernires normes, pour la ralisation dapplicationsWeb professionnelles.

    Ces limites peuvent se rsumer dans les deux points qui suivent : la structuration insuffisante et labsence de smantique dans

    lapproche HTML (et donc le trop peu de possibilits dindexationdes documents) ;

    la lourdeur de mise en uvre dans lapproche SGML, due pourlessentiel la prsence obligatoire du modle de document (DTD),ce qui exige la prsence doutils danalyse de conformit toutes lestapes le long dune chane documentaire SGML.

    les dfinitions rcursives ; les rfrences externes pour le contenu des attributs ; les valeurs par dfaut CURRENT et CONREF.

    La notion de document bien form fait de XML un profil SGMLrductible des grammaires assez simples et compltement expri-mables au moyen dexpressions rgulires. Il sensuit qu la diff-rence de SGML le dveloppement doutils danalyse et la mise enuvre dapplications XML sont relativement simples et rapides.

    3.5.2.3 Conclusion

    XML allie les capacits de structuration de SGML la souplessede HTML, en permettant dune part la dfinition de structures nou-velles (balises) par lutilisateur, dautre part le balisage, le traitementet lchange de documents avec la possibilit domettre la DTD.Dans loptique de la ralisation dapplications Web-Intranet, XMLcumule en quelque sorte les avantages de SGML et HTML.

    Il y a fort parier que le champ dutilisation de XML ne se limiterapas aux applications Web-Intranet. Dans de nombreuses autresapplications en effet, les utilisateurs souhaitent un allgement de SGML, tant il est vrai que cette norme leur apparat comme uneaffaire de spcialistes.

  • SGML ________________________________________________________________________________________________________________________________

    Toute reproduction sans autorisation du Centre franais dH 7 138 - 14 Techniques de lIngnie

    3.6 Quelques grandes applications SGML

    De nombreux projets et applications SGML ont vu le jour traversle monde, depuis la parution de la norme. SGML est progressive-ment entr dans la culture des entreprises. Nous citons ci-aprsquelques applications denvergure, illustrations de ce dynamismede SGML.

    n CALS (Continuous Acquisition and Life-cycle Support) est une Ini-tiative bien connue du ministre amricain de la Dfense (DoD -Department of Defense), que lon ne saurait limiter SGML. Au seindu corpus des normes adoptes par CALS, SGML a un rle central,en tant que norme dintgration de donnes documentaires htro-gnes. Lenvergure de CALS et son impact tant sur lindustrie amri-caine que sur les partenaires des tats-Unis ont contribu aurayonnement de SGML, ds les annes qui ont suivi la parution dela norme.

    n Lassociation des diteurs amricains (AAP - Association of Ame-rican Publishers) a conu des DTD pour ses documents courants(livres, articles, etc.).

    n Le syndicat de ldition a conduit un travail similaire en France,avec dailleurs plus de rigueur dans lcriture formelle.

    n Oxford University Press a bti une application SGML pour leOxford English Dictionary.

    n AECMA (Association Europenne des Constructeurs de MatrielArospatial) a conu des DTD pour les modules dinformation (datamodules) tels que dfinis dans sa spcification AECMA 1000D. Lessystmes documentaires des avions Rafale et Eurofither sont basssur cette spcification.

    n SPEEDOC (Systme de Production et dExploitation lectroniquede la Documentation) est le programme lanc en France en 1988 parla Direction des Constructions Navales, pour linformatisation de ladocumentation des SNLE/NG (Sous-marin Nuclaire LanceurdEngins/Nouvelle Gnration). Il sagit historiquement du tout pre-mier projet franais mettant en uvre une architecture documen-taire entirement conue autour de SGML.

    n TEI (Text Encoding Initiative) est trs utilise dans les milieux dela recherche en sciences humaines pour le codage des documentsanciens [8].

    4. Positionnement de SGML dans le contexte normatif

    Il sagit ici de situer SGML non dans le contexte normatif gnral,mais par rapport au corpus de ses normes satellites , cest--dire :

    les normes drives de SGML (HyTime, SMDL) ; les normes associes des processus mettant en uvre des

    donnes SGML (DSSSL, SPDL).

    4.1 HyTime

    HyTime (Hypermedia Time-based structuring language), exten-sion-application de SGML, est parue en 1992, sous la rfrenceISO/IEC 10744 (cf. [Doc H 7 138]). HyTime est une modlisationspatio-temporelle tendant aux hyperdocuments les principes dedescriptions gnriques dfinis par SGML.

    Un hyperdocument est une structure dinformations mlant desdonnes htrognes (textes, graphiques, sons, squences ani-mes, etc.) ventuellement rparties sur des mdias diffrents, etrestitues lutilisateur final suivant un scnario prdfini.

    La notion centrale de HyTime est la forme architecturale, dont lesdiffrents constituants dune DTD (lments, liens, etc.) peuvent treconsidrs comme des instances, au sens des catgories dfinies auparagraphe 2. HyTime dfinit un langage de requte pour laccsaux constituants de lhyperdocument.

    Unique standard permettant la modlisation des hyperdocu-ments, HyTime, assure la prennit des donnes manipules ind-pendamment des moyens matriels et logiciels utiliss, et assureainsi lindpendance des utilisateurs vis--vis des applications clsen mains .

    4.2 SMDL

    SMDL (Standard Music Description Language ISO/IEC 10743)(cf. [Doc H 7 138]) est une application-extension SGML pour ladescription et lchange lectronique de documents musicaux.SMDL est lorigine de lapproche temporelle de la modlisa-tion utilisant la syntaxe SGML, ide reprise par la suite parHyTime. On pourrait interprter SMDL comme une structurationSGML du temps.

    4.3 DSSSL

    Longtemps attendu par tous les acteurs du monde ditorial,DSSSL (Document Style Semantics and Specification LanguageISO/IEC 10179) (cf. [Doc H 7 138]) est la dernire norme conue parle mme comit international ayant travaill il y a quelques annes la dfinition de la norme SGML.

    DSSSL vient complter la modlisation des donnes (SGML,HyTime) par la modlisation des traitements ralisables sur ses don-nes, le formatage en particulier.

    Elle dfinit cet effet un langage permettant lexpression formelleet rigoureuse :

    des spcifications de prsentation et autres traitements auto-matiques dinstances SGML (textes baliss) ;

    des traitements raliss par une gamme de formateurs la plusexploitation du droit de copie est strictement interdite.ur, trait Informatique

    large possible, des outils natifs aux composeurs actuels, laide detraducteurs spcifiques.

    Imagine au dpart pour standardiser la manire dindiquer lesstyles et actions de composition associs un texte balis selon uneDTD SGML, cette spcification sest en fait gnralise en vritablelangage de manipulation dinstances SGML, la composition appa-raissant comme un cas particulier de telles manipulations.

    DSSSL est bas sur une vue base de donnes dune instanceSGML. Le fichier (en entre dun processeur DSSSL) nest donc pasparcouru squentiellement. Cest ainsi que la spcification a intro-duit un langage de requte permettant laccs direct une partiedonne du document (instance SGML).

    4.4 SPDL

    SPDL (Standard Page Description Language ISO/IEC 10180)(cf. [Doc H 7 138]) est un langage de description de page stan-dardisant ( travers des notions telles que celle de pav) dundocument compos, cest--dire le format de sortie dun com-poseur. Lobjectif vis est la garantie de lchangeabilit du

  • _______________________________________________________________________________________________________________________________ SGML

    document format, permettant ainsi limpression papier ouquivalent lectronique (consultation lcran en mode page)par les outils capables dinterprter SPDL.

    Lessentiel des experts ayant contribu llaboration du standardsont des professionnels du secteur de ldition classique, plus parti-culirement de la composition. Les standards de fait tels que Post-cript dAdobe System Inc visent des objectifs que SPDL essaiedatteindre dans un cadre consensuel.

    5. volutions dans les annes venir

    lexamen des travaux en cours autour de SGML, deux tendan-ces opposes se dgagent : lune dans le sens du renforcement descapacits conceptuelles de la norme, lautre dans le sens dune sim-plification visant une mise en uvre facile.

    5.1 Renforcement conceptuel

    Cette tendance est celle des experts au sein du JTC 1/SC 18/WG 8de lISO/IEC. Elle sinscrit dans la dmarche qui a donn naissance SGML : dcrire le plus prcisment possible les documents, en fai-sant abstraction des ides de traitement qui leur sont applicables. Lamise en uvre des applications est laffaire des utilisateurs et lechamp naturel de la comptition entre prestataires divers : consul-tants, fournisseurs de logiciels spcialiss, intgrateurs, etc.

    La rvision de SGML est ici envisage comme une dmarchedunification de la norme et des parties purement descriptives deses deux principales normes satellites, savoir DSSSL et HyTime.

    Le corps de la norme pourrait ainsi notamment hriter :

    de la notion abstraite de grove introduite par DSSSL ; des mcanismes dadressage et de liens issu de HyTime.

    Seraient alors laisses dans les normes satellites les notionsconsacres aux traitements des documents (ou, plus prcisment,des structures dinformations) dcrits par la nouvelle version deSGML. Ainsi, par exemple, resteraient dans DSSSL les notionslies aux styles et la transformation dinstances, mais aussi le

    cours) au standard ISO 8879 (SGML), permettant la prise en comptedes aspects propres XML.

    5.3 De nouvelles normes satellites

    Pour clore cette partie consacre aux perspectives, nous vo-quons brivement deux projets consacrs des aspects particuliersdexploitation de structures dinformations SGML.

    n SMSL

    SMSL (Standard Multimedia/hypermedia Scripting Language) estun projet men conjointement par deux groupes de travail du JTC 1/ISO/IEC : le SC 18/WG 8-SGML et le SC 29/WG 12-MHEG. Ce travailvise le dveloppement dun standard assurant la compatibilit et laportabilit, entre plates-formes htrognes, de scripts interactifspour le multimdia. Le projet est pour linstant en veilleuse.

    n Topic Navigation Map

    Conduit par le JTC 1/SC 18/WG 8 de lISO/IEC, ce projet vise la for-malisation de lenrichissement smantique de documents SGMLexistants. En dautres termes, il sagit de dcrire la manire dtablirdes rapprochements, dajouter de linformation et de la pertinence des documents existants, sans modifier leur contenu initial ni inter-frer sur leur cycle de vie. Un rseau de liens est cr par-dessus les documents.

    6. SGML et lingnierie documentaire

    Aprs une dfinition de lingnierie documentaire, nous allonsmontrer en quoi SGML se prsente comme lun des meilleurs outilsconceptuels, pivots dans la conception et la mise en uvre darchi-tectures fonctionnelles dingnierie documentaire.Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite. Techniques de lIngnieur, trait Informatique H 7 138 - 15

    langage de requte (qui par ailleurs unifie les approches HyTime etDSSSL).

    Fondamentalement, SGML garderait son originalit comme mta-langage, mais gagnerait en pouvoir de conceptualisation et, corol-laire naturel, en complexit de mise en uvre.

    5.2 Vers des profils spcialiss

    Les utilisateurs sont lorigine de cette tendance, mme si les tra-vaux qui en sont issus restent laffaire de spcialistes au sein degroupes dintrts tels que le W3C.

    Il ne sagit plus ici de standardiser quelques grandes DTD applica-tives, mais de modifier la norme elle-mme, pour en obtenir des ver-sions allges rpondant au besoin dune mise en uvre simplifie.XML voqu au paragraphe 3.5.2 procde dune telle dmarche.

    Ces langages drivs gnrent parfois des concepts propres oudes singularits syntaxiques qui crent des divergences avec lecorps de la norme. Ainsi , par exemple, la compatibi l i tXML fi SGML sera obtenue au prix dun correctif technique (en

    6.1 Systmes ditoriaux classiques

    La vue document peut tre lexpression caractrisant ladmarche des systmes ditoriaux classiques. Lensemble desmoyens organisationnels et techniques dune telle dmarche estorient vers la production du document, le document tant ici unproduit fini ddition, cest--dire des informations organises et for-mates selon lide classique du livre, quels que soient par ailleursleurs supports de diffusion.

    Polariss par la production du document, les moyens conceptuelsmis en uvre par le systme ditorial classique le sont aussi. Ainsi,par exemple, la modlisation du document sera naturellementoriente par les problmes de formatage de document, en prioritsur dautres problmes documentaires.

    Le rle de plus en plus important de linformatique dans lesmtiers de ldition est essentiel dans lvolution que connat depuisprs dune dcennie le systme ditorial classique, vers lingnieriedocumentaire.

  • SGML ________________________________________________________________________________________________________________________________

    Toute reproduction sans autorisation du Centre franais dH 7 138 - 16 Techniques de lIngnie

    6.2 Ingnierie documentaire

    La notion de systme dinformation sentend ici au sens globaldun ensemble de processus lmentaires. Il sagit dun ensemblede processus associs aux traitements (gnration, gestion ou inter-prtation) de donnes documentaires htrognes. En somme, lesdonnes sont considres sur leur cycle de vie, de leur acquisition leur diffusion sous forme de produits ddition, en passant par leurmise jour et la prise en compte des retours dutilisation.

    La vue systme dinformation documentaire marque ici la dif-frence essentielle avec les systmes ditoriaux classiques. Lapportde linformatique dans ce domaine sest accompagn dune dmar-che mthodologique dont nous donnons ci-aprs la substance sousforme de quelques principes.

    Les principes noncs ici ne sont pas exhaustifs. Ils ont histori-quement guid la mise en uvre de lingnierie documentaire dansle cadre de linitiative CALS.

    n Principesl Prennit des donnes vhicules travers lensemble des pro-

    cessus du systme dinformation documentaire.l Suppression des lots dinformation (un systme est fait

    dlots, ds lors quune de ses composantes se trouve dconnectedu reste du systme. La pertinence des donnes nest plus alorsassure).

    l Indpendance du systme dinformation vis--vis des plates-formes logiciels et matriels.

    l Minimisation du Cot Global de Possession (LCC Live-CycleCost dans la terminologie CALS).

    Ces principes impliquent : la continuit smantique, travers le flux de donnes, dun

    processus aux processus connexes ; le bouclage et litration possible des processus (ce qui impli-

    que en particulier la remonte, vers les processus amont, des don-nes en retour dutilisation) ;

    la notion de systme dinformation intgr.

    Les processus au sein dune architecture dingnierie documen-taire peuvent se rpartir en trois grandes activits primaires :lacquisition des donnes, le stockage et la gestion des donnes, ladiffusion et lexploitation des donnes. Le rappel de larchitectureglobale et une brve description de chacune de ces activits nouspermettront de positionner SGML au sein de larchitecture fonction-nelle dun systme dinformation documentaire, mais aussi de don-ner une classification des outils SGML.

    n Architecture globale

    En utilisant la mthode IDEF0, larchitecture globale peut se dcli-ner comme sur la figure 2.

    Par affinement progressif, les trois principales activits represpeuvent elles-mmes tre dclines en sous-activits jusquau plusbas niveau, selon la mme syntaxe de reprsentation IDEF0.

    n Acquisition

    Lacquisition des donnes met en uvre deux types de processus,lis lorigine des donnes. Elle sopre par saisie directe ou partranscodage, selon que les informations sont gnres ex nihilo ourcupres de sources existantes, lectroniques ou mme papier.

    n Gestion : bases dinformation modulaires

    Nous sommes ici au cur de larchitecture globale.

    Lactivit de gestion des donnes sappuie sur la notion de basede donnes, en tant quensemble structur de donnes accessiblespar lordinateur pour satisfaire simultanment plusieurs utilisateursen un temps opportun. Pour mmoire, un Systme de Gestion deBase de Donnes (SGBD) est le logiciel qui permet dinteragir avecune base de donnes.

    Dans le domaine spcifique de lingnierie documentaire, leconcept de Bases dInformations Modulaires est apparu, ces derni-res annes, pour faire face la gestion dinformations lmentaires,susceptibles dtre utilises dans des documents plus complexes.

    Lide initiale des Bases dInformation Modulaires est la constitu-tion, pour un domaine donn (bibliothque, entreprise, avionique,etc.), dune base de primitives documentaires, partir de laquellepourront tre gnrs automatiquement tous les documents relatifsau domaine, lobjectif tant la rutilisabilit de ces primitivesdocumentaires, dans un souci de cohrence et de non-redondance.

    Ces dfinitions signifient que la pertinence smantique de la pri-mitive documentaire est complte ds lors que lon a connaissancede son contenu, ce contenu tant exhaustif, en ce sens que toutesles informations ncessaires la pertinence smantique sont physi-quement prsentes ou rfrences avec possibilit daccs dynami-que au contenu des donnes.

    Plusieurs primitives documentaires peuvent ainsi partager desdonnes communes comme une illustration ou une rfrencebibliographique.

    On peut prsent donner la dfinition suivante.

    Lactivit de gestion des donnes au sein des architectures ding-nierie documentaire sappuie sur des bases dinformation modulai-res.

    Lingnierie documentaire peut se dfinir comme lensembledes activits de conception, de mise en uvre et de maintien encondition oprationnelle dun systme dinformation documen-taire.

    Dfinitions

    Une primitive documentaire (ou module, ou granule dinfor-mation) est une unit dinformation autosuffisante.

    Une unit dinformation est dite autosuffisante lorsque soncontenu est signifiant en soi.

    Une base dinformation modulaire est caractrise par unmodle de SGBD mettant en uvre des primitives documentai-res dans un domaine donn.exploitation du droit de copie est strictement interdite.ur, trait Informatique

    Rappelons pour finir que, quelle que soit la mthode suivie pourconstituer lensemble des modules dinformation, elle doit obir deux principes :

    lexhaustivit (la base dinformation doit contenir toutes lesinformations permettant de rpondre toute demande documen-taire dun domaine donn) ;

    la non-redondance ( travers le partage de linformation, labase dinformation doit viter autant que possible la duplication desdonnes).

    Cest en cela quune base dinformation modulaire dans undomaine donn est considre comme une base documentaireorthonorme pour le domaine en question.

    n Diffusion

    Trois types de diffusion des donnes sont aujourdhui considrscomme classiques :

    la diffusion de type documentaire (lorganisation et la diffusionde linformation sous forme de documents, au sens classique), sursupport papier ou non ;

    la diffusion lectronique dextraits de la base dinformationsous forme de lots de primitives documentaires ;

    la diffusion en ligne des deux catgories prcdentes.

  • _______________________________________________________________________________________________________________________________ SGML

    Dans chacun de ces cas, un processus de composition est nces-saire pour formater les donnes de manire les rendre humaine-ment exploitables par destinataires.

    On peut complter ses modes de diffusion par la diffusion/exploi-tation interactive qui a donn lieu quelques travaux importants cesdernires annes [9] [10] [11] [12].

    6.3 SGML et lingnierie documentaire

    Aprs lexpos du paragraphe prcdent, SGML et ses normessatellites apparaissent comme lensemble cohrent de modles, for-mats et mthodes susceptibles de faciliter lapproche de lingnieriedocumentaire selon les principes rappels au paragraphe 6.2.

    Reprenant la figure 1 et en prenant quelques liberts avec IDEF0,on obtient le schma de la figure 3.

    Le principe du systme dinformation intgr est presque naturel

    smantiques. Le critre de choix sera essentiellement le niveau decontrle et de validation que lutilisateur souhaite obtenir pour lesdocuments en entre ou en sortie de son application.

    n Outils dacquisition des donnesl Les diteurs SGML (saisie directe des donnes)

    Les quelques critres prendre en compte sont : les dlais dintroduction dune nouvelle DTD (paramtrage) ; la possibilit de saisie contextuelle guide et contrle ; la prsence doutil de validation intgr ; les capacits ergonomiques (approche WYSIWYG, reprsenta-

    tion arborescente, etc.).l Les transcodeurs (rcupration)

    Les quelques critres prendre en compte sont : les dlais dintroduction dune nouvelle DTD (paramtrage) ; les types de formats dentre accepts.

    Figure 2 Architecture globaleselon la mthode IDEF0

    Contrle global Contrles spcifiques

    Diffuser

    Formatage / compositionSGBDTranscodage,saisie directe

    Donnesbrutes

    Donnesstructures

    Donnesconsultables

    Acqurir

    Contrle local

    Modulesd'informationStocker / GrerToute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite. Techniques de lIngnieur, trait Informatique H 7 138 - 17

    ici, les processus est les formats des donnes tant normaliss parSGML et ses normes satellites. La notion de SGML repository estlapproche SGML des bases dinformation modulaires.

    6.4 Classification des outils SGML

    Nous ne dressons pas ici une typologie des outils SGML du mar-ch, par souci de neutralit vis--vis des fournisseurs. Il sagit pluttdtablir quelques critres de choix des outils, selon leur positionne-ment au sein dune architecture globale dingnierie documentaire.

    n Parseur

    Les parseurs sont les outils danalyse et de validation des docu-ments SGML. Ils peuvent tre intgrs divers outils de la chanedocumentaire, ou utiliss seuls pour valider les documents avantleur transmission un partenaire ou la rception par un destina-taire. Ils peuvent aussi tre utiliss seuls, pour gnrer la formecanonique des documents SGML.

    Le march offre un choix doutils, allant des parseurs simplesbass sur des gnrateurs danalyseurs syntaxiques comme YACC,aux parseurs puissants capables deffectuer certaines analyses

    n Stockage et gestion des donnes

    Des gestionnaires de fichiers aux bases de donnes documentai-res, en passant par les bases de donnes relationnelles et les basesde donnes objets, aucune des technologies disponibles nest utili-sable en ltat, pour la mise en uvre du concept de SGML reposi-tory telle que nous lavons prsente. Cela est d au caractremtalangage de SGML. Le choix des outils est ici dtermin par leurdimensionnement aux applications mettre en place.

    n Restitution des donnes

    Les outils considrs ici mettent en uvre des transformations etdes traitements sur des documents SGML. Un des critres impor-tants considrer sera donc la possibilit de raliser ces traitementsconformment aux normes satellites de SGML conues cet effet.

    l Les composeurs (formatage)

    Les quelques critres prendre en compte sont : lacceptation de DSSSL et les dlais dintroduction dune nou-

    velle feuille de styles ; les capacits de validation SGML et DSSSL ; les capacits gnrer des donnes consultables au format

    SPDL ; le mode opratoire et lefficacit : travail en batch ou la

    vole ?

  • SGML ________________________________________________________________________________________________________________________________

    Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.H 7 138 - 18 Techniques de lIngnieur, trait Informatique

    l Les navigateurs (consultation)

    Les quelques critres prendre en compte sont : les capacits dinterprtation des donnes consultables au for-

    mat SPDL ; les capacits de validation SPDL.

    7. Conclusion

    Aprs une dcennie dexistence et en dpit de son caractre demtalangage qui en fait un modle pas simple a priori, SGML peuttre considr comme un succs, ainsi que le tmoignent ses nom-breuses applications.

    Ces applications se retrouvent aujourdhui dans tous les secteursdactivit aux prises avec des problmes de conception et de miseen uvre de documentations structures.

    Les ressorts conceptuels de la norme se sont affins, en particu-lier sous limpulsion des travaux mens dans le cadre des normessatellites. Il en rsulte un abandon de certaines notions dont lutilitntait pas manifeste, telles que les rfrences abrges. Il se des-sine une volution de la norme vers un corps de concepts de baseassez abstraits, toujours sous-tendus par la puissance conceptuellede lapproche mtalangage.

    Dans le mme temps apparaissent des profils dapplications quivisent une plus grande facilit de mise en uvre et un plus grandnombre dutilisateurs. Ces diffrents profils ne sont pas ncessaire-ment des candidats la marginalisation de la norme elle-mme. Ilssignifient peut-tre simplement que SGML reste dun accs difficilepour un grand nombre dutilisateurs. Laccroissement de laudiencede SGML passe alors (du moins pour linstant) par quelques simpli-fications, la tendance commune toutes ces simplifications tant unrenoncement lapproche mtalangage.

    Tant pour son intrt thorique que pour ses possibilits dappli-cation, on peut prvoir pour SGML un nombre dutilisateurs en aug-mentation dans les annes venir.

    Figure 3 Architecture globaledans le contexte SGML

    Parsing global DSSSL

    Donnesbrutes

    InstancesSGML

    DonnesSPDL

    Parsing local

    FragmentsSGML

    Saisie /Transcodage

    Formatage /Diffusion

    SGMLrepository

  • POUR

    EN

    SAVOIR

    PLUS

    SGML

    par Luc SONKDocteur en mathmatiquesPrsident de STSI-SA (Socit des Technologies et Systmes dInformation), Paris

    Bibliographie[1] GOLDFARB (C.F). The SGML Handbook.

    Oxford University Press (1991).

    [2] BRYAN (M.). SGML an authors guide to TheStandard Generalized Markup Language.Addison-Wesley Publishing Company (1988).

    [3] Van HERWIJNEN (E.). Practical SGML.Kluwer Academic Publishers second printing(1991).

    [4] DGA/SLM/D6-9102. Guide dutilisation deSGML. Ministre de la Dfense - Dlgationgnrale pour lArmement (sept. 1991).

    [5] Hypertext Markup Language (HTML) V 3.2.Wold Wide Web Consortium (mars 1997).

    [6] The eXtensible Markup Language (XML),Draft version no 2. Wold Wide Web Consor-tium (avr. 1997).

    [7] CHAHUNEAU (F.). SGML sans DTD. Docu-ment numrique vol 1 n 1, Herms (fv.1997).

    [8] ROLE (F.). DTD/TEI H 7 143 Techniques delIngnieur, trait Informatique vol. H4 (1998) paratre.

    [9] MIL-M-87268. Interactive Electronic Techni-cal Manuals (IETM) : General Content, Style,Format, and User-Interactive Requirements.DoD (oct. 1992).

    [10] MIL-D-87269. Data Base, Revisable : Inte-ractive Electronic Technical Manuals, for thesupport of. DoD (oct. 1992).

    [11] MIL-Q-87270. Quality Assurance Program :Interactive Electronic Technical Manuals andAssociated Technical Informations ; Require-ments for. DoD (oct. 1992).

    [12] Metafile for Interactive Documents (MID),Specification for the Encoding of InteractiveDocuments. US Navy (nov. 1994).

    Ouvrage

    TRAVIS et WALDT. The SGML implementationguide. Springer Verlag (1995).

    NormalisationSGML a officiellement t adopt comme norme ISO (International Organi-

    zation for Standardization) en octobre 1986 sous la rfrence ISO 8879.LAFNOR a, quant elle, adopt la norme en 1990, sous la rfrence NFEN 28879. La norme a reu en 1988 un amendement (Amendement 1) qui estincorpor au texte de rfrence. Conformment aux procdures de lISO, unepremire rvision de la norme a eu lieu en 1991 et une deuxime en 1996.Aucune de ces rvisions na pour linstant donn lieu la diffusion dune nou-velle version de la norme. Un rectificatif technique a cependant t publien 1996.

    ISO 8879 1986 Information processing - Text and office systems - TheStandard Generalized Markup Language (SGML).

    ISO/IEC 10646-1 1993 Information technology - Universal Multiple-OctetCoded Character Set (UCS) - Part 1 : Architecture andBasic Multilingual Plane. (Technologies de linforma-tion - Jeu universel de caractres cods plusieursoctets - Partie 1 : Architecture et table numrique) (enanglais seulement). Rectificatif technique 1 : 1996.Nombreux Amendements.

    ISO 9069 1988 Information processing - SGML support facilities -SGML Document Interchange Format (SDIF). [Traite-ment de linformation - Facilit de support SGML - For-Toute reproduction sans autorisation du Centre franais dexploitation du droit de copieest strictement interdite. - Techniques de lIngnieur, trait Informatique Doc. H 7 138 - 1

    [Traitement de linformation - Systmes bureautiques- langage normalis de balisage gnralis (SGML)]Incorpore lAmendement 1-1988. Rectificatif technique1-1996. Technical Corringendum to The StandardGeneralized Markup Language (SGML) (en anglaisseulement).

    ISO 8632-1 1992 Computer Graphic Metafile (CGM) for the storage andtransfer of picture description information (Technolo-gie de linformation - Infographie - Metalfichier destockage et de transfert des informations de descrip-tion - Partie 1 : Description fonctionnelle). Amende-ment 1-1994 - Rgles pour profils (en anglaisseulement).

    ISO/IEC 10179 1996 Information processing - Document Style Semanticsand Specification Language (DSSSL). (Technologie delinformation - Langages de traitement - Smantiquede prsentation de documents et langage spcifique(DSSSL) (en anglais seulement).

    mat dchange de documents SGML (SDIF)].

    ISO/IEC 10744 1997 Information processing - Hypermedia/Time-basedStructuring Language (Hytime). [Technologies delinformation - Langage de structuration temporelle/hypermdia (HyTime)] (en anglais seulement).

    ISO/IEC 10743 1994 Information processing - SGML support facilities -Standard Music Description Language (SMDL).

    ISO/IEC 10180 1995 Information processing - Text composition - StandardPage Description Language (SPDL). [Technologies delinformation - Langage de traitement - Langage dedescription de page normalise (SPDL)] (en anglaisseulement).

    Pour consulter ces normes, on pourra faire appel aux adresses suivantes :

    http://www.ornl.gov/sgml/wg4http://www.ornl.gov/sgml/wg8/wg8home.htmhttp://www.hightext.com/tnm

    SGML1. Notions fondamentales1.1 Origine de SGML1.2 Quelques objectifs de SGML1.3 Concept de documentation structure1.4 Balisage1.4.1 Balisage physique1.4.2 Balisage logique1.4.3 Balisage logique gnrique

    1.5 Langages de balisage

    2. Fondements conceptuels de SGML2.1 Rappel de quelques catgories conceptuelles2.1.1 Modle2.1.2 Instance2.1.3 Occurrence

    2.2 Processus de modlisation2.2.1 Structuration conceptuelle2.2.2 Approche formelle

    2.3 SGML est un mtalangage2.3.1 Introduction: approche intuitive2.3.2 Du balisage logique la gnration de langa...2.3.3 Document au sens SGML2.3.3.1 Dclaration SGML2.3.3.2 Prologue2.3.3.3 Instance

    2.3.4 Par-del la gnration de grammaires

    3. Aspects formels de SGML3.1 Notions de base3.1.1 Dclaration SGML3.1.2 Prologue3.1.2.1 DTD3.1.2.1.1 Le type de document3.1.2.1.2 Les lmentsExceptionsInclusions:Exclusions:

    Groupe de modlelments contenu dclarNon-ambigut des modles de contenu

    3.1.2.1.3 Les attributs3.1.2.1.4 Les entitsLes entits gnralesLes entits paramtresLes entits externesEntit systme:Entit public:Notation:

    3.1.2.1.5 Les commentaires3.1.2.1.6 Les rfrences croises IDIDREF3.1.2.1.7 Les sections marques

    3.1.2.2 LPD

    3.1.3 Instance3.1.3.1 Instructions de traitement3.1.3.2 Forme canonique

    3.2 Codage des caractres3.3 Notion de conformitDocument SGML de baseDocument SGML minimalAutres documents SGML

    3.4 SGML et lchange de documents3.5 SGML3.5.1 HTML3.5.2 XML3.5.2.1 Objet de XML3.5.2.2 Document bien form au sens XML3.5.2.3 Conclusion

    3.6 Quelques grandes applications

    4. Positionnement de SGML dans le contexte normati...4.1 HyTime4.2 SMDL4.3 DSSSL4.4 SPDL

    5. volutions dans les annes venir5.1 Renforcement conceptuel5.2 Vers des profils spcialiss5.3 De nouvelles normes satellitesSMSLTopic Navigation Map

    6. SGML6.1 Systmes ditoriaux classiques6.2 Ingnierie documentairePrincipesArchitecture globaleAcquisitionGestion: bases dinformation modulairesDiffusion

    6.3 SGML et lingnierie documentaire6.4 Classification des outilsParseurOutils dacquisition des donnesLes diteurs SGMLLes transcodeurs

    Stockage et gestion des donnesRestitution des donnesLes composeursLes navigateurs

    7. Conclusionh7138doc.pdfSGMLBibliographieOuvrage

    Normalisation