56
XML, l'eXtensible Markup Language Stéphane Crozat Contributions : Bruno Bachimont, Erik Gebers Ingénierie Documentaire http://doc.crzt.fr 14 septembre 2016

XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

  • Upload
    others

  • View
    3

  • Download
    1

Embed Size (px)

Citation preview

Page 1: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

XML leXtensible Markup Language

Steacutephane Crozat

Contributions Bruno Bachimont Erik Gebers

Ingeacutenierie Documentairehttpdoccrztfr

14 septembre 2016

Table des matiegraveres

I - Introduction agrave XML 5

1 Preacuteambule XML selon le W3C 5

2 Deacutefinition du XML 6

3 XML un langage agrave balise 7

4 XML un meacuteta-langage 7

5 Exemple Un document XML 8

6 Historique de SGML agrave XML 8

7 Discussion HTML et XML 9

II - Langages XML 11

1 Langages standard et langages locaux 11

2 Langages XML orienteacutes donneacutees 11

3 Documents structureacutes et documents formateacutes 12

4 Langages XML orienteacutes documents 15

5 Caracteacuteristiques rechercheacutees pour un format XML 16

6 Outillage XML 16

III - Syntaxe de base XML 19

1 Document bien formeacute 19

2 Balise 19

3 Eacuteleacutement 20

4 Attribut 21

5 Structure geacuteneacuterale dun fichier XML 22

6 Exemple de fichier XML - Le courriel 22

7 La syntaxe XML en reacutesumeacute 23

IV - Syntaxe avanceacutee XML 25

1 Commentaires 25

2 Namespace 25

3 Syntaxe XML et espaces 26

4 Encodage des caractegraveres 27

V - Introduction aux scheacutemas XML 28

1 Notion de document valide 28

2 Document Type Definition 29

3 W3C XML Schema 29

4 Regular Language for XML Next Generation 30

VI - Quelques bonnes questions sur XML 32

VII - Bibliographie 35

VIII - Compleacutements 36

1 Balises et poigneacutees de calcul 36

2 La structuration logique 36

3 Exemple de structuration logique 37

4 Deacutefinition des chaicircnes eacuteditoriales XML 38

5 Deacutefinition de Scenari 39

6 Un langage pour publier les documents XML 40

7 Deacutefinition de XSL-XSLT 40

IX - Exercices 41

1 Exercices Culture XML 42

11 Exercice 4212 Exercice Galaxie XML 4313 Exercice Historique XML 4314 Exercice 43

2 Exercices Syntaxe XML 44

21 Exercice 4422 Exercice 4523 Exercice 45

Questions de synthegravese 46

Solutions des exercices 48

Glossaire 52

Abreacuteviations 53

Bibliographie 54

Webographie 55

Index 56

Introduction agrave XML

5

1 Preacuteambule XML selon le W3C

est un standard du XML W3C Extensible Markup Language (XML) 10 (Fifth Edition)

Les deacutefinitions suivantes sont directement copieacutees du site du (novembre 2009)W3C

The Extensible Markup Language (XML) is a for representing simple text-based format structured documents data configuration books transactions invoices and much more It was information

derived from an older standard format called (ISO 8879) in order to be more suitable for SGMLWeb use

XML is one of the most widely-used formats today between for sharing structured informationprograms between people between computers and people both locally and across networks

12   3    =4      Essuie-glace5      Lessuie-glace retire automatiquement la pluie du = pare-brise

lorsquelle tombe dessus Il possegravede une = lame caoutchouteacuteeltvoirAussigt ltvoirAussi ref 1977gt ltvoirAussigt qui peut ecirctre changeacutee seacutepareacutement en cas de besoinltdescriptiongt

6   7    =8      Lame caoutchouteacutee9     

10   11   12

Introduction agrave XMLI

Deacutefinition What is XML

Deacutefinition What is XML Used For

Exemple Extrait dun lexique

ltlexiquegt     =ltentree id 1976gt     Essuie-glaceltmotgt ltmotgt     Lessuie-glace retire automatiquement la pluie du = pare-briseltdescriptiongt ltvoirAussi ref 1965gt

lorsquelle tombe dessus Il possegravede une = lame caoutchouteacuteeltvoirAussigt ltvoirAussi ref 1977gt ltvoirAussigt qui peut ecirctre changeacutee seacutepareacutement en cas de besoinltdescriptiongt  ltentreegt   =ltentree id 1977gt     Lame caoutchouteacuteeltmotgt ltmotgt      ltentreegt  ltlexiquegt

XML un langage agrave balise

6

--

2 Deacutefinition du XML

LeXtensible Markup Language est un permettant de deacutefinir des langages agrave XML meacuteta-langagebalises

Il standardiseacute comme une recommandation par le depuis W3C 1998

LaTeX et HTML sont des langages agrave balises (mais ce ne sont pas des langages XML)XHTML est un langage XML

En tant que meacuteta-langage XML sert agrave deacutefinir des informatiques cest agrave dire des faccedilons de formatsrepreacutesenter de linformation

Les bonnes caracteacuteristiques dXML - - en font un tregraves bon non-ambiguiumlteacute lisibiliteacute passiviteacutecandidat pour de tregraves nombreux usages il est donc utiliseacute dans des secteurs tregraves varieacutes de linformatique

On distingue geacuteneacuteralement deux grandes cateacutegories dutilisation les langages orienteacutes donneacutees et les langages orienteacutes documents

La version historique de XML est la version 10 qui reste aujourdhui la plus largement utiliseacutee

Il existe eacutegalement une version 11 de XML qui propose des diffeacuterences mineures et neacutecessaires uniquement dans des contextes particuliers Cette nouvelle version a eacuteteacute neacutecessaire pour des raisons de compatibiliteacute des outils existants Les eacutevolutions principales de XML 11 sont de nouveaux caractegraveres permis pour les noms deacuteleacutements (pour suivre leacutevolution dUnicode depuis 1998) de nouvelles conventions pour les caractegraveres de fin de ligne (pour la compatibiliteacute avec des ordinateurs

) et de nouveaux caractegraveres de controcircle dans le contenumain frame

XML Un langage agrave balise (cf p7)

XML un meacuteta-langage (cf p7)

Langages XML orienteacutes donneacutees (cf p11)

Langages XML orienteacutes documents (cf p15)

Caracteacuteristiques rechercheacutees pour un format XML (cf p16)

Deacutefinition XML

Exemple

Fondamental

Compleacutement Versions de XML

Compleacutement Voir aussi

XML un meacuteta-langage

7

--

3 XML un langage agrave balise

Une balise est un descripteur ajouteacute au contenu en vue dun traitement informatique

Un langage agrave balises est un langage permettant dassocier agrave un contenu (geacuteneacuteralement du texte) des balises explicites (par exemple pour rendre compte de la structure du texte)

12   3      This is an example4   5

Ici le texte est This is an example il est baliseacute afin dajouter les informations suivantes cest est un paragraphe (balise ) du corps (balise ) dun document Lambda (balise )p body lambda

Balises et poigneacutees de calcul (cf p36)

4 XML un meacuteta-langage

Un meacuteta-langage est un langage permettant de deacutefinir dautres langages les langages ainsi deacutefinis permettent agrave leur tour la description dinformations respectant ces langages

Si lon deacutesire deacutefinir informatiquement un langage Lambda en disant quil peut contenir un eacuteleacutement de type qui lui mecircme contient des eacuteleacutements de type il faut speacutecifier les contraintes de ce body p

langage gracircce agrave un meacuteta-langage permettant donc de deacutefinir

Le vocabulaire lambda body p

La grammaire contient exactement un qui contient un ou plusieurs lambda body p

XML en tant que meacuteta-langage ne contient pas les mots du langage Lambda en revanche il dispose des meacutecaniques permettant de les deacutefinir

La deacutefinition dun langage XML particulier se fait gracircce agrave un scheacutema qui permet de lister les mots du langage (vocabulaire) et de deacutefinir leur utilisation (grammaire)

On parle eacutegalement de format

Deacutefinition Langage agrave balises

Exemple Balises Lambda

Compleacutement Voir aussi

Deacutefinition Meacuteta-langage

Exemple Langage Lambda

Deacutefinition Notion de scheacutema

ltlambdagt  ltbodygt     This is an exampleltpgt ltpgt  ltbodygtltlambdagt

Exemple Un document XML

8

--

-

---

-

1 ( ) gt2 ( +) gt3 p ( ) gt

Ce code exprime formellement (avec la syntaxe DTD) le langage ou format Lambda

5 Exemple Un document XML

1 23   stephanecrozatutcfr4   fabriceissacutcfr5   Demande dinformation6   01-03-20017  8    Bonjour Fabrice9    Peux tu mexpliquer ce quest le langage XML

10    Il me faudrait en effet ton avis eacuteclaireacute sur le sujet11    Jattends ta reacuteponse agrave bientocirct12  13

6 Historique de SGML agrave XML

XML heacuterite historiquement (et fonctionnellement) du meacuteta-langage SGML deacuteveloppeacute au deacutebut des anneacutees 1980 et largement utiliseacute dans le cadre des systegravemes documentaires notamment dans les industries de hautes technologies pour lesquelles la fiabiliteacute de la documentation est cruciale SGML restait un formalisme insuffisamment explicite et trop complexe ce qui rendait difficile la programmation dapplications SGML dans des cadres plus larges SGML laissait notamment des ambiguiumlteacutes en terme dinterpreacutetation du balisage XML est un langage respectant la syntaxe SGML mais en y ajoutant des contraintes suppleacutementaires afin den lever les ambiguiumlteacutes

A lorigine SGML

norme ISO (1986) creacuteeacute pour la repreacutesentation de documents structureacutesbien adapteacute aux systegravemes documentaires massifsexemple de langage SGML HTML

Un formalisme pas assez explicite

rend difficile la programmation dapplications SGML (navigateurs etc)XML (98) heacuterite de SGML en contraignant la syntaxe

Exemple Scheacutema Lambda

Exemple Un mail

SGML

( ) gtltELEMENT lambda body ( +) gtltELEMENT body p p ( ) gtltELEMENT PCDATA

ltxml version=10 encoding=iso-8859-1gtltmailgt  stephanecrozatutcfrltdegt ltdegt  fabriceissacutcfrltagt ltagt  Demande dinformationltobjetgt ltobjetgt  01-03-2001ltdategt ltdategt ltcorpsgt   Bonjour Fabriceltparagraphegt ltparagraphegt   Peux tu mexpliquer ce quest le langage XML ltparagraphegt ltparagraphegt   Il me faudrait en effet ton avis eacuteclaireacute sur le sujetltparagraphegt ltparagraphegt   Jattends ta reacuteponse agrave bientocirctltparagraphegt ltparagraphegt ltcorpsgtltmailgt

Discussion HTML et XML

9

--

--

En SGML une balise ouvrante nest pas obligatoirement fermeacutee par une balise fermante (sa fermeture pouvant rester implicite) tandis quen XML toute balise ouvrante est obligatoirement fermeacutee

Le code SGML est ambigu car on ne sait pas sil faut linterpreacuteter comme ltAgtltBgtltBgt

oultAgtltAgtltBgtltBgt

ltAgtltBgtltBgtltAgt

En XML seule lune des deux formulations non ambigueumls est autoriseacutee

HTML est un langage SGMLDocBook est agrave lorigine un langage SGML porteacute depuis en XML

XML heacuterite de SGML en contraignant la syntaxe tout document XML est donc un document SGML

Documents structureacutes et documents formateacutes (cf p12)

7 Discussion HTML et XML

XML est un meacuteta-langage et HTML est un langage XML et HTML ne sont donc pas directement comparables En particulier XHTML est un langage XML cest donc du XML

Une question pertinente est en revanche de se demander pourquoi HTML ou XHTML ne suffisent pas pour les usages Web et donc pourquoi XML est utile en dehors de son instanciation via XHTML

La reacuteponse est que si HTML et XHTML fournissent une solution de publication efficiente a fortioriils noffrent pas le mecircme potentiel en terme d XML possegravede donc un ingeacutenierie documentairepotentiel de plus important (par exemple pour le multi-supports la reacuteeacuteditorialisation manipulation)

Le langage de reacutefeacuterence du web qui a su simposer par sa simpliciteacute deacutecriture possegravede HTML

eacutegalement des inconveacutenients qui ont motiveacute les recherches du sur le W3C XML

Exemple Ambiguiumlteacute en SGML

Exemple

Fondamental

Compleacutement Voir aussi

Fondamental XML et HTML ne sont pas au mecircme niveau

XML et le Web

Exemple Exemple de limites du HTML

Discussion HTML et XML

10

-

-

- HTML est un langage les balises sont deacutefinies il est Jeu de balises restreint a prioriimpossible de deacutefinir ses propres balises et de creacuteer un vocabulaire propre agrave un domaine speacutecifique Ce manque d le rend mal approprieacute pour lindexation de documents extensibiliteacutevarieacutes le multimeacutedia

Les balises HTML fournissent des informations Meacutelange des descripteurs physiques et logiquesrelatives agrave la typographie ou la mise en page dun texte ( ) mais eacutegalement CENTER B

relatives agrave son rocircle dans le document ( ) Cette non seacuteparation stricte entre contenu H1 H2

et preacutesentation nuit agrave la publication multi-supports et la reacuteeacuteditorialisation par exemple En HTML les liens sont geacuteneacuteralement des pointeurs directs vers une autre ressource (Liens A

) Cette mise en œuvre limite fortement les possibiliteacutes de reacuteutilisation notamment par le risque de lien casseacute

Documents structureacutes et documents formateacutes (cf p12)

Compleacutement Voir aussi

Langages XML

11

1 Langages standard et langages locaux

On appelle langage (ou format) standard un langage dont le scheacutema est deacutefini par une organisation reconnue et multipartite (W3C ISO OASIS ) pour les besoins geacuteneacuteriques dune large communauteacute en geacuteneacuteral internationale

On appelle standard de fait les langages imposeacutes par une organisation unique mais agrave une telle eacutechelle que leur usage est incontournable Cest typiquement lexemple des formats de la suite bureautique Microsoft Office (doc xls ppt )

On appelle langage (ou format) local - par opposition au format standard - un langage deacutefini par une organisation seule ou une communauteacute restreinte pour ses besoins propres (un service une entreprise voire un reacuteseau dorganisations dans un pays )

Un format est dit ouvert lorsquil est public et que nimporte qui peut lutiliser sans contrainte Il est au contraire fermeacute si son accegraves est proteacutegeacute payant ou soumis agrave dautres contraintes

On parle de format proprieacutetaire pour deacutesigner un format agrave la fois local et fermeacute

2 Langages XML orienteacutes donneacutees

Ils permettent denregistrer et de transporter des donneacutees informatiques structureacutees (comme par exemple des donneacutees geacutereacutees par des bases de donneacutees) selon des formats ouvert (cest agrave dire dont on connaicirct la syntaxe) et facile agrave manipuler (les structures arborescentes XML eacutetant plus riches que des fichiers agrave plat par exemple)

Les langages XML orienteacutees donneacutees servent surtout agrave leacutechange ou la des donneacutees des seacuterialisation

programmes informatiques

Langages XMLII

Deacutefinition Format standard

Remarque Standard de fait

Deacutefinition Format local

Deacutefinition Format ouvert ou fermeacute

Remarque Format proprieacutetaire

Deacutefinition

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 2: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Table des matiegraveres

I - Introduction agrave XML 5

1 Preacuteambule XML selon le W3C 5

2 Deacutefinition du XML 6

3 XML un langage agrave balise 7

4 XML un meacuteta-langage 7

5 Exemple Un document XML 8

6 Historique de SGML agrave XML 8

7 Discussion HTML et XML 9

II - Langages XML 11

1 Langages standard et langages locaux 11

2 Langages XML orienteacutes donneacutees 11

3 Documents structureacutes et documents formateacutes 12

4 Langages XML orienteacutes documents 15

5 Caracteacuteristiques rechercheacutees pour un format XML 16

6 Outillage XML 16

III - Syntaxe de base XML 19

1 Document bien formeacute 19

2 Balise 19

3 Eacuteleacutement 20

4 Attribut 21

5 Structure geacuteneacuterale dun fichier XML 22

6 Exemple de fichier XML - Le courriel 22

7 La syntaxe XML en reacutesumeacute 23

IV - Syntaxe avanceacutee XML 25

1 Commentaires 25

2 Namespace 25

3 Syntaxe XML et espaces 26

4 Encodage des caractegraveres 27

V - Introduction aux scheacutemas XML 28

1 Notion de document valide 28

2 Document Type Definition 29

3 W3C XML Schema 29

4 Regular Language for XML Next Generation 30

VI - Quelques bonnes questions sur XML 32

VII - Bibliographie 35

VIII - Compleacutements 36

1 Balises et poigneacutees de calcul 36

2 La structuration logique 36

3 Exemple de structuration logique 37

4 Deacutefinition des chaicircnes eacuteditoriales XML 38

5 Deacutefinition de Scenari 39

6 Un langage pour publier les documents XML 40

7 Deacutefinition de XSL-XSLT 40

IX - Exercices 41

1 Exercices Culture XML 42

11 Exercice 4212 Exercice Galaxie XML 4313 Exercice Historique XML 4314 Exercice 43

2 Exercices Syntaxe XML 44

21 Exercice 4422 Exercice 4523 Exercice 45

Questions de synthegravese 46

Solutions des exercices 48

Glossaire 52

Abreacuteviations 53

Bibliographie 54

Webographie 55

Index 56

Introduction agrave XML

5

1 Preacuteambule XML selon le W3C

est un standard du XML W3C Extensible Markup Language (XML) 10 (Fifth Edition)

Les deacutefinitions suivantes sont directement copieacutees du site du (novembre 2009)W3C

The Extensible Markup Language (XML) is a for representing simple text-based format structured documents data configuration books transactions invoices and much more It was information

derived from an older standard format called (ISO 8879) in order to be more suitable for SGMLWeb use

XML is one of the most widely-used formats today between for sharing structured informationprograms between people between computers and people both locally and across networks

12   3    =4      Essuie-glace5      Lessuie-glace retire automatiquement la pluie du = pare-brise

lorsquelle tombe dessus Il possegravede une = lame caoutchouteacuteeltvoirAussigt ltvoirAussi ref 1977gt ltvoirAussigt qui peut ecirctre changeacutee seacutepareacutement en cas de besoinltdescriptiongt

6   7    =8      Lame caoutchouteacutee9     

10   11   12

Introduction agrave XMLI

Deacutefinition What is XML

Deacutefinition What is XML Used For

Exemple Extrait dun lexique

ltlexiquegt     =ltentree id 1976gt     Essuie-glaceltmotgt ltmotgt     Lessuie-glace retire automatiquement la pluie du = pare-briseltdescriptiongt ltvoirAussi ref 1965gt

lorsquelle tombe dessus Il possegravede une = lame caoutchouteacuteeltvoirAussigt ltvoirAussi ref 1977gt ltvoirAussigt qui peut ecirctre changeacutee seacutepareacutement en cas de besoinltdescriptiongt  ltentreegt   =ltentree id 1977gt     Lame caoutchouteacuteeltmotgt ltmotgt      ltentreegt  ltlexiquegt

XML un langage agrave balise

6

--

2 Deacutefinition du XML

LeXtensible Markup Language est un permettant de deacutefinir des langages agrave XML meacuteta-langagebalises

Il standardiseacute comme une recommandation par le depuis W3C 1998

LaTeX et HTML sont des langages agrave balises (mais ce ne sont pas des langages XML)XHTML est un langage XML

En tant que meacuteta-langage XML sert agrave deacutefinir des informatiques cest agrave dire des faccedilons de formatsrepreacutesenter de linformation

Les bonnes caracteacuteristiques dXML - - en font un tregraves bon non-ambiguiumlteacute lisibiliteacute passiviteacutecandidat pour de tregraves nombreux usages il est donc utiliseacute dans des secteurs tregraves varieacutes de linformatique

On distingue geacuteneacuteralement deux grandes cateacutegories dutilisation les langages orienteacutes donneacutees et les langages orienteacutes documents

La version historique de XML est la version 10 qui reste aujourdhui la plus largement utiliseacutee

Il existe eacutegalement une version 11 de XML qui propose des diffeacuterences mineures et neacutecessaires uniquement dans des contextes particuliers Cette nouvelle version a eacuteteacute neacutecessaire pour des raisons de compatibiliteacute des outils existants Les eacutevolutions principales de XML 11 sont de nouveaux caractegraveres permis pour les noms deacuteleacutements (pour suivre leacutevolution dUnicode depuis 1998) de nouvelles conventions pour les caractegraveres de fin de ligne (pour la compatibiliteacute avec des ordinateurs

) et de nouveaux caractegraveres de controcircle dans le contenumain frame

XML Un langage agrave balise (cf p7)

XML un meacuteta-langage (cf p7)

Langages XML orienteacutes donneacutees (cf p11)

Langages XML orienteacutes documents (cf p15)

Caracteacuteristiques rechercheacutees pour un format XML (cf p16)

Deacutefinition XML

Exemple

Fondamental

Compleacutement Versions de XML

Compleacutement Voir aussi

XML un meacuteta-langage

7

--

3 XML un langage agrave balise

Une balise est un descripteur ajouteacute au contenu en vue dun traitement informatique

Un langage agrave balises est un langage permettant dassocier agrave un contenu (geacuteneacuteralement du texte) des balises explicites (par exemple pour rendre compte de la structure du texte)

12   3      This is an example4   5

Ici le texte est This is an example il est baliseacute afin dajouter les informations suivantes cest est un paragraphe (balise ) du corps (balise ) dun document Lambda (balise )p body lambda

Balises et poigneacutees de calcul (cf p36)

4 XML un meacuteta-langage

Un meacuteta-langage est un langage permettant de deacutefinir dautres langages les langages ainsi deacutefinis permettent agrave leur tour la description dinformations respectant ces langages

Si lon deacutesire deacutefinir informatiquement un langage Lambda en disant quil peut contenir un eacuteleacutement de type qui lui mecircme contient des eacuteleacutements de type il faut speacutecifier les contraintes de ce body p

langage gracircce agrave un meacuteta-langage permettant donc de deacutefinir

Le vocabulaire lambda body p

La grammaire contient exactement un qui contient un ou plusieurs lambda body p

XML en tant que meacuteta-langage ne contient pas les mots du langage Lambda en revanche il dispose des meacutecaniques permettant de les deacutefinir

La deacutefinition dun langage XML particulier se fait gracircce agrave un scheacutema qui permet de lister les mots du langage (vocabulaire) et de deacutefinir leur utilisation (grammaire)

On parle eacutegalement de format

Deacutefinition Langage agrave balises

Exemple Balises Lambda

Compleacutement Voir aussi

Deacutefinition Meacuteta-langage

Exemple Langage Lambda

Deacutefinition Notion de scheacutema

ltlambdagt  ltbodygt     This is an exampleltpgt ltpgt  ltbodygtltlambdagt

Exemple Un document XML

8

--

-

---

-

1 ( ) gt2 ( +) gt3 p ( ) gt

Ce code exprime formellement (avec la syntaxe DTD) le langage ou format Lambda

5 Exemple Un document XML

1 23   stephanecrozatutcfr4   fabriceissacutcfr5   Demande dinformation6   01-03-20017  8    Bonjour Fabrice9    Peux tu mexpliquer ce quest le langage XML

10    Il me faudrait en effet ton avis eacuteclaireacute sur le sujet11    Jattends ta reacuteponse agrave bientocirct12  13

6 Historique de SGML agrave XML

XML heacuterite historiquement (et fonctionnellement) du meacuteta-langage SGML deacuteveloppeacute au deacutebut des anneacutees 1980 et largement utiliseacute dans le cadre des systegravemes documentaires notamment dans les industries de hautes technologies pour lesquelles la fiabiliteacute de la documentation est cruciale SGML restait un formalisme insuffisamment explicite et trop complexe ce qui rendait difficile la programmation dapplications SGML dans des cadres plus larges SGML laissait notamment des ambiguiumlteacutes en terme dinterpreacutetation du balisage XML est un langage respectant la syntaxe SGML mais en y ajoutant des contraintes suppleacutementaires afin den lever les ambiguiumlteacutes

A lorigine SGML

norme ISO (1986) creacuteeacute pour la repreacutesentation de documents structureacutesbien adapteacute aux systegravemes documentaires massifsexemple de langage SGML HTML

Un formalisme pas assez explicite

rend difficile la programmation dapplications SGML (navigateurs etc)XML (98) heacuterite de SGML en contraignant la syntaxe

Exemple Scheacutema Lambda

Exemple Un mail

SGML

( ) gtltELEMENT lambda body ( +) gtltELEMENT body p p ( ) gtltELEMENT PCDATA

ltxml version=10 encoding=iso-8859-1gtltmailgt  stephanecrozatutcfrltdegt ltdegt  fabriceissacutcfrltagt ltagt  Demande dinformationltobjetgt ltobjetgt  01-03-2001ltdategt ltdategt ltcorpsgt   Bonjour Fabriceltparagraphegt ltparagraphegt   Peux tu mexpliquer ce quest le langage XML ltparagraphegt ltparagraphegt   Il me faudrait en effet ton avis eacuteclaireacute sur le sujetltparagraphegt ltparagraphegt   Jattends ta reacuteponse agrave bientocirctltparagraphegt ltparagraphegt ltcorpsgtltmailgt

Discussion HTML et XML

9

--

--

En SGML une balise ouvrante nest pas obligatoirement fermeacutee par une balise fermante (sa fermeture pouvant rester implicite) tandis quen XML toute balise ouvrante est obligatoirement fermeacutee

Le code SGML est ambigu car on ne sait pas sil faut linterpreacuteter comme ltAgtltBgtltBgt

oultAgtltAgtltBgtltBgt

ltAgtltBgtltBgtltAgt

En XML seule lune des deux formulations non ambigueumls est autoriseacutee

HTML est un langage SGMLDocBook est agrave lorigine un langage SGML porteacute depuis en XML

XML heacuterite de SGML en contraignant la syntaxe tout document XML est donc un document SGML

Documents structureacutes et documents formateacutes (cf p12)

7 Discussion HTML et XML

XML est un meacuteta-langage et HTML est un langage XML et HTML ne sont donc pas directement comparables En particulier XHTML est un langage XML cest donc du XML

Une question pertinente est en revanche de se demander pourquoi HTML ou XHTML ne suffisent pas pour les usages Web et donc pourquoi XML est utile en dehors de son instanciation via XHTML

La reacuteponse est que si HTML et XHTML fournissent une solution de publication efficiente a fortioriils noffrent pas le mecircme potentiel en terme d XML possegravede donc un ingeacutenierie documentairepotentiel de plus important (par exemple pour le multi-supports la reacuteeacuteditorialisation manipulation)

Le langage de reacutefeacuterence du web qui a su simposer par sa simpliciteacute deacutecriture possegravede HTML

eacutegalement des inconveacutenients qui ont motiveacute les recherches du sur le W3C XML

Exemple Ambiguiumlteacute en SGML

Exemple

Fondamental

Compleacutement Voir aussi

Fondamental XML et HTML ne sont pas au mecircme niveau

XML et le Web

Exemple Exemple de limites du HTML

Discussion HTML et XML

10

-

-

- HTML est un langage les balises sont deacutefinies il est Jeu de balises restreint a prioriimpossible de deacutefinir ses propres balises et de creacuteer un vocabulaire propre agrave un domaine speacutecifique Ce manque d le rend mal approprieacute pour lindexation de documents extensibiliteacutevarieacutes le multimeacutedia

Les balises HTML fournissent des informations Meacutelange des descripteurs physiques et logiquesrelatives agrave la typographie ou la mise en page dun texte ( ) mais eacutegalement CENTER B

relatives agrave son rocircle dans le document ( ) Cette non seacuteparation stricte entre contenu H1 H2

et preacutesentation nuit agrave la publication multi-supports et la reacuteeacuteditorialisation par exemple En HTML les liens sont geacuteneacuteralement des pointeurs directs vers une autre ressource (Liens A

) Cette mise en œuvre limite fortement les possibiliteacutes de reacuteutilisation notamment par le risque de lien casseacute

Documents structureacutes et documents formateacutes (cf p12)

Compleacutement Voir aussi

Langages XML

11

1 Langages standard et langages locaux

On appelle langage (ou format) standard un langage dont le scheacutema est deacutefini par une organisation reconnue et multipartite (W3C ISO OASIS ) pour les besoins geacuteneacuteriques dune large communauteacute en geacuteneacuteral internationale

On appelle standard de fait les langages imposeacutes par une organisation unique mais agrave une telle eacutechelle que leur usage est incontournable Cest typiquement lexemple des formats de la suite bureautique Microsoft Office (doc xls ppt )

On appelle langage (ou format) local - par opposition au format standard - un langage deacutefini par une organisation seule ou une communauteacute restreinte pour ses besoins propres (un service une entreprise voire un reacuteseau dorganisations dans un pays )

Un format est dit ouvert lorsquil est public et que nimporte qui peut lutiliser sans contrainte Il est au contraire fermeacute si son accegraves est proteacutegeacute payant ou soumis agrave dautres contraintes

On parle de format proprieacutetaire pour deacutesigner un format agrave la fois local et fermeacute

2 Langages XML orienteacutes donneacutees

Ils permettent denregistrer et de transporter des donneacutees informatiques structureacutees (comme par exemple des donneacutees geacutereacutees par des bases de donneacutees) selon des formats ouvert (cest agrave dire dont on connaicirct la syntaxe) et facile agrave manipuler (les structures arborescentes XML eacutetant plus riches que des fichiers agrave plat par exemple)

Les langages XML orienteacutees donneacutees servent surtout agrave leacutechange ou la des donneacutees des seacuterialisation

programmes informatiques

Langages XMLII

Deacutefinition Format standard

Remarque Standard de fait

Deacutefinition Format local

Deacutefinition Format ouvert ou fermeacute

Remarque Format proprieacutetaire

Deacutefinition

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 3: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

1 Commentaires 25

2 Namespace 25

3 Syntaxe XML et espaces 26

4 Encodage des caractegraveres 27

V - Introduction aux scheacutemas XML 28

1 Notion de document valide 28

2 Document Type Definition 29

3 W3C XML Schema 29

4 Regular Language for XML Next Generation 30

VI - Quelques bonnes questions sur XML 32

VII - Bibliographie 35

VIII - Compleacutements 36

1 Balises et poigneacutees de calcul 36

2 La structuration logique 36

3 Exemple de structuration logique 37

4 Deacutefinition des chaicircnes eacuteditoriales XML 38

5 Deacutefinition de Scenari 39

6 Un langage pour publier les documents XML 40

7 Deacutefinition de XSL-XSLT 40

IX - Exercices 41

1 Exercices Culture XML 42

11 Exercice 4212 Exercice Galaxie XML 4313 Exercice Historique XML 4314 Exercice 43

2 Exercices Syntaxe XML 44

21 Exercice 4422 Exercice 4523 Exercice 45

Questions de synthegravese 46

Solutions des exercices 48

Glossaire 52

Abreacuteviations 53

Bibliographie 54

Webographie 55

Index 56

Introduction agrave XML

5

1 Preacuteambule XML selon le W3C

est un standard du XML W3C Extensible Markup Language (XML) 10 (Fifth Edition)

Les deacutefinitions suivantes sont directement copieacutees du site du (novembre 2009)W3C

The Extensible Markup Language (XML) is a for representing simple text-based format structured documents data configuration books transactions invoices and much more It was information

derived from an older standard format called (ISO 8879) in order to be more suitable for SGMLWeb use

XML is one of the most widely-used formats today between for sharing structured informationprograms between people between computers and people both locally and across networks

12   3    =4      Essuie-glace5      Lessuie-glace retire automatiquement la pluie du = pare-brise

lorsquelle tombe dessus Il possegravede une = lame caoutchouteacuteeltvoirAussigt ltvoirAussi ref 1977gt ltvoirAussigt qui peut ecirctre changeacutee seacutepareacutement en cas de besoinltdescriptiongt

6   7    =8      Lame caoutchouteacutee9     

10   11   12

Introduction agrave XMLI

Deacutefinition What is XML

Deacutefinition What is XML Used For

Exemple Extrait dun lexique

ltlexiquegt     =ltentree id 1976gt     Essuie-glaceltmotgt ltmotgt     Lessuie-glace retire automatiquement la pluie du = pare-briseltdescriptiongt ltvoirAussi ref 1965gt

lorsquelle tombe dessus Il possegravede une = lame caoutchouteacuteeltvoirAussigt ltvoirAussi ref 1977gt ltvoirAussigt qui peut ecirctre changeacutee seacutepareacutement en cas de besoinltdescriptiongt  ltentreegt   =ltentree id 1977gt     Lame caoutchouteacuteeltmotgt ltmotgt      ltentreegt  ltlexiquegt

XML un langage agrave balise

6

--

2 Deacutefinition du XML

LeXtensible Markup Language est un permettant de deacutefinir des langages agrave XML meacuteta-langagebalises

Il standardiseacute comme une recommandation par le depuis W3C 1998

LaTeX et HTML sont des langages agrave balises (mais ce ne sont pas des langages XML)XHTML est un langage XML

En tant que meacuteta-langage XML sert agrave deacutefinir des informatiques cest agrave dire des faccedilons de formatsrepreacutesenter de linformation

Les bonnes caracteacuteristiques dXML - - en font un tregraves bon non-ambiguiumlteacute lisibiliteacute passiviteacutecandidat pour de tregraves nombreux usages il est donc utiliseacute dans des secteurs tregraves varieacutes de linformatique

On distingue geacuteneacuteralement deux grandes cateacutegories dutilisation les langages orienteacutes donneacutees et les langages orienteacutes documents

La version historique de XML est la version 10 qui reste aujourdhui la plus largement utiliseacutee

Il existe eacutegalement une version 11 de XML qui propose des diffeacuterences mineures et neacutecessaires uniquement dans des contextes particuliers Cette nouvelle version a eacuteteacute neacutecessaire pour des raisons de compatibiliteacute des outils existants Les eacutevolutions principales de XML 11 sont de nouveaux caractegraveres permis pour les noms deacuteleacutements (pour suivre leacutevolution dUnicode depuis 1998) de nouvelles conventions pour les caractegraveres de fin de ligne (pour la compatibiliteacute avec des ordinateurs

) et de nouveaux caractegraveres de controcircle dans le contenumain frame

XML Un langage agrave balise (cf p7)

XML un meacuteta-langage (cf p7)

Langages XML orienteacutes donneacutees (cf p11)

Langages XML orienteacutes documents (cf p15)

Caracteacuteristiques rechercheacutees pour un format XML (cf p16)

Deacutefinition XML

Exemple

Fondamental

Compleacutement Versions de XML

Compleacutement Voir aussi

XML un meacuteta-langage

7

--

3 XML un langage agrave balise

Une balise est un descripteur ajouteacute au contenu en vue dun traitement informatique

Un langage agrave balises est un langage permettant dassocier agrave un contenu (geacuteneacuteralement du texte) des balises explicites (par exemple pour rendre compte de la structure du texte)

12   3      This is an example4   5

Ici le texte est This is an example il est baliseacute afin dajouter les informations suivantes cest est un paragraphe (balise ) du corps (balise ) dun document Lambda (balise )p body lambda

Balises et poigneacutees de calcul (cf p36)

4 XML un meacuteta-langage

Un meacuteta-langage est un langage permettant de deacutefinir dautres langages les langages ainsi deacutefinis permettent agrave leur tour la description dinformations respectant ces langages

Si lon deacutesire deacutefinir informatiquement un langage Lambda en disant quil peut contenir un eacuteleacutement de type qui lui mecircme contient des eacuteleacutements de type il faut speacutecifier les contraintes de ce body p

langage gracircce agrave un meacuteta-langage permettant donc de deacutefinir

Le vocabulaire lambda body p

La grammaire contient exactement un qui contient un ou plusieurs lambda body p

XML en tant que meacuteta-langage ne contient pas les mots du langage Lambda en revanche il dispose des meacutecaniques permettant de les deacutefinir

La deacutefinition dun langage XML particulier se fait gracircce agrave un scheacutema qui permet de lister les mots du langage (vocabulaire) et de deacutefinir leur utilisation (grammaire)

On parle eacutegalement de format

Deacutefinition Langage agrave balises

Exemple Balises Lambda

Compleacutement Voir aussi

Deacutefinition Meacuteta-langage

Exemple Langage Lambda

Deacutefinition Notion de scheacutema

ltlambdagt  ltbodygt     This is an exampleltpgt ltpgt  ltbodygtltlambdagt

Exemple Un document XML

8

--

-

---

-

1 ( ) gt2 ( +) gt3 p ( ) gt

Ce code exprime formellement (avec la syntaxe DTD) le langage ou format Lambda

5 Exemple Un document XML

1 23   stephanecrozatutcfr4   fabriceissacutcfr5   Demande dinformation6   01-03-20017  8    Bonjour Fabrice9    Peux tu mexpliquer ce quest le langage XML

10    Il me faudrait en effet ton avis eacuteclaireacute sur le sujet11    Jattends ta reacuteponse agrave bientocirct12  13

6 Historique de SGML agrave XML

XML heacuterite historiquement (et fonctionnellement) du meacuteta-langage SGML deacuteveloppeacute au deacutebut des anneacutees 1980 et largement utiliseacute dans le cadre des systegravemes documentaires notamment dans les industries de hautes technologies pour lesquelles la fiabiliteacute de la documentation est cruciale SGML restait un formalisme insuffisamment explicite et trop complexe ce qui rendait difficile la programmation dapplications SGML dans des cadres plus larges SGML laissait notamment des ambiguiumlteacutes en terme dinterpreacutetation du balisage XML est un langage respectant la syntaxe SGML mais en y ajoutant des contraintes suppleacutementaires afin den lever les ambiguiumlteacutes

A lorigine SGML

norme ISO (1986) creacuteeacute pour la repreacutesentation de documents structureacutesbien adapteacute aux systegravemes documentaires massifsexemple de langage SGML HTML

Un formalisme pas assez explicite

rend difficile la programmation dapplications SGML (navigateurs etc)XML (98) heacuterite de SGML en contraignant la syntaxe

Exemple Scheacutema Lambda

Exemple Un mail

SGML

( ) gtltELEMENT lambda body ( +) gtltELEMENT body p p ( ) gtltELEMENT PCDATA

ltxml version=10 encoding=iso-8859-1gtltmailgt  stephanecrozatutcfrltdegt ltdegt  fabriceissacutcfrltagt ltagt  Demande dinformationltobjetgt ltobjetgt  01-03-2001ltdategt ltdategt ltcorpsgt   Bonjour Fabriceltparagraphegt ltparagraphegt   Peux tu mexpliquer ce quest le langage XML ltparagraphegt ltparagraphegt   Il me faudrait en effet ton avis eacuteclaireacute sur le sujetltparagraphegt ltparagraphegt   Jattends ta reacuteponse agrave bientocirctltparagraphegt ltparagraphegt ltcorpsgtltmailgt

Discussion HTML et XML

9

--

--

En SGML une balise ouvrante nest pas obligatoirement fermeacutee par une balise fermante (sa fermeture pouvant rester implicite) tandis quen XML toute balise ouvrante est obligatoirement fermeacutee

Le code SGML est ambigu car on ne sait pas sil faut linterpreacuteter comme ltAgtltBgtltBgt

oultAgtltAgtltBgtltBgt

ltAgtltBgtltBgtltAgt

En XML seule lune des deux formulations non ambigueumls est autoriseacutee

HTML est un langage SGMLDocBook est agrave lorigine un langage SGML porteacute depuis en XML

XML heacuterite de SGML en contraignant la syntaxe tout document XML est donc un document SGML

Documents structureacutes et documents formateacutes (cf p12)

7 Discussion HTML et XML

XML est un meacuteta-langage et HTML est un langage XML et HTML ne sont donc pas directement comparables En particulier XHTML est un langage XML cest donc du XML

Une question pertinente est en revanche de se demander pourquoi HTML ou XHTML ne suffisent pas pour les usages Web et donc pourquoi XML est utile en dehors de son instanciation via XHTML

La reacuteponse est que si HTML et XHTML fournissent une solution de publication efficiente a fortioriils noffrent pas le mecircme potentiel en terme d XML possegravede donc un ingeacutenierie documentairepotentiel de plus important (par exemple pour le multi-supports la reacuteeacuteditorialisation manipulation)

Le langage de reacutefeacuterence du web qui a su simposer par sa simpliciteacute deacutecriture possegravede HTML

eacutegalement des inconveacutenients qui ont motiveacute les recherches du sur le W3C XML

Exemple Ambiguiumlteacute en SGML

Exemple

Fondamental

Compleacutement Voir aussi

Fondamental XML et HTML ne sont pas au mecircme niveau

XML et le Web

Exemple Exemple de limites du HTML

Discussion HTML et XML

10

-

-

- HTML est un langage les balises sont deacutefinies il est Jeu de balises restreint a prioriimpossible de deacutefinir ses propres balises et de creacuteer un vocabulaire propre agrave un domaine speacutecifique Ce manque d le rend mal approprieacute pour lindexation de documents extensibiliteacutevarieacutes le multimeacutedia

Les balises HTML fournissent des informations Meacutelange des descripteurs physiques et logiquesrelatives agrave la typographie ou la mise en page dun texte ( ) mais eacutegalement CENTER B

relatives agrave son rocircle dans le document ( ) Cette non seacuteparation stricte entre contenu H1 H2

et preacutesentation nuit agrave la publication multi-supports et la reacuteeacuteditorialisation par exemple En HTML les liens sont geacuteneacuteralement des pointeurs directs vers une autre ressource (Liens A

) Cette mise en œuvre limite fortement les possibiliteacutes de reacuteutilisation notamment par le risque de lien casseacute

Documents structureacutes et documents formateacutes (cf p12)

Compleacutement Voir aussi

Langages XML

11

1 Langages standard et langages locaux

On appelle langage (ou format) standard un langage dont le scheacutema est deacutefini par une organisation reconnue et multipartite (W3C ISO OASIS ) pour les besoins geacuteneacuteriques dune large communauteacute en geacuteneacuteral internationale

On appelle standard de fait les langages imposeacutes par une organisation unique mais agrave une telle eacutechelle que leur usage est incontournable Cest typiquement lexemple des formats de la suite bureautique Microsoft Office (doc xls ppt )

On appelle langage (ou format) local - par opposition au format standard - un langage deacutefini par une organisation seule ou une communauteacute restreinte pour ses besoins propres (un service une entreprise voire un reacuteseau dorganisations dans un pays )

Un format est dit ouvert lorsquil est public et que nimporte qui peut lutiliser sans contrainte Il est au contraire fermeacute si son accegraves est proteacutegeacute payant ou soumis agrave dautres contraintes

On parle de format proprieacutetaire pour deacutesigner un format agrave la fois local et fermeacute

2 Langages XML orienteacutes donneacutees

Ils permettent denregistrer et de transporter des donneacutees informatiques structureacutees (comme par exemple des donneacutees geacutereacutees par des bases de donneacutees) selon des formats ouvert (cest agrave dire dont on connaicirct la syntaxe) et facile agrave manipuler (les structures arborescentes XML eacutetant plus riches que des fichiers agrave plat par exemple)

Les langages XML orienteacutees donneacutees servent surtout agrave leacutechange ou la des donneacutees des seacuterialisation

programmes informatiques

Langages XMLII

Deacutefinition Format standard

Remarque Standard de fait

Deacutefinition Format local

Deacutefinition Format ouvert ou fermeacute

Remarque Format proprieacutetaire

Deacutefinition

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 4: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Abreacuteviations 53

Bibliographie 54

Webographie 55

Index 56

Introduction agrave XML

5

1 Preacuteambule XML selon le W3C

est un standard du XML W3C Extensible Markup Language (XML) 10 (Fifth Edition)

Les deacutefinitions suivantes sont directement copieacutees du site du (novembre 2009)W3C

The Extensible Markup Language (XML) is a for representing simple text-based format structured documents data configuration books transactions invoices and much more It was information

derived from an older standard format called (ISO 8879) in order to be more suitable for SGMLWeb use

XML is one of the most widely-used formats today between for sharing structured informationprograms between people between computers and people both locally and across networks

12   3    =4      Essuie-glace5      Lessuie-glace retire automatiquement la pluie du = pare-brise

lorsquelle tombe dessus Il possegravede une = lame caoutchouteacuteeltvoirAussigt ltvoirAussi ref 1977gt ltvoirAussigt qui peut ecirctre changeacutee seacutepareacutement en cas de besoinltdescriptiongt

6   7    =8      Lame caoutchouteacutee9     

10   11   12

Introduction agrave XMLI

Deacutefinition What is XML

Deacutefinition What is XML Used For

Exemple Extrait dun lexique

ltlexiquegt     =ltentree id 1976gt     Essuie-glaceltmotgt ltmotgt     Lessuie-glace retire automatiquement la pluie du = pare-briseltdescriptiongt ltvoirAussi ref 1965gt

lorsquelle tombe dessus Il possegravede une = lame caoutchouteacuteeltvoirAussigt ltvoirAussi ref 1977gt ltvoirAussigt qui peut ecirctre changeacutee seacutepareacutement en cas de besoinltdescriptiongt  ltentreegt   =ltentree id 1977gt     Lame caoutchouteacuteeltmotgt ltmotgt      ltentreegt  ltlexiquegt

XML un langage agrave balise

6

--

2 Deacutefinition du XML

LeXtensible Markup Language est un permettant de deacutefinir des langages agrave XML meacuteta-langagebalises

Il standardiseacute comme une recommandation par le depuis W3C 1998

LaTeX et HTML sont des langages agrave balises (mais ce ne sont pas des langages XML)XHTML est un langage XML

En tant que meacuteta-langage XML sert agrave deacutefinir des informatiques cest agrave dire des faccedilons de formatsrepreacutesenter de linformation

Les bonnes caracteacuteristiques dXML - - en font un tregraves bon non-ambiguiumlteacute lisibiliteacute passiviteacutecandidat pour de tregraves nombreux usages il est donc utiliseacute dans des secteurs tregraves varieacutes de linformatique

On distingue geacuteneacuteralement deux grandes cateacutegories dutilisation les langages orienteacutes donneacutees et les langages orienteacutes documents

La version historique de XML est la version 10 qui reste aujourdhui la plus largement utiliseacutee

Il existe eacutegalement une version 11 de XML qui propose des diffeacuterences mineures et neacutecessaires uniquement dans des contextes particuliers Cette nouvelle version a eacuteteacute neacutecessaire pour des raisons de compatibiliteacute des outils existants Les eacutevolutions principales de XML 11 sont de nouveaux caractegraveres permis pour les noms deacuteleacutements (pour suivre leacutevolution dUnicode depuis 1998) de nouvelles conventions pour les caractegraveres de fin de ligne (pour la compatibiliteacute avec des ordinateurs

) et de nouveaux caractegraveres de controcircle dans le contenumain frame

XML Un langage agrave balise (cf p7)

XML un meacuteta-langage (cf p7)

Langages XML orienteacutes donneacutees (cf p11)

Langages XML orienteacutes documents (cf p15)

Caracteacuteristiques rechercheacutees pour un format XML (cf p16)

Deacutefinition XML

Exemple

Fondamental

Compleacutement Versions de XML

Compleacutement Voir aussi

XML un meacuteta-langage

7

--

3 XML un langage agrave balise

Une balise est un descripteur ajouteacute au contenu en vue dun traitement informatique

Un langage agrave balises est un langage permettant dassocier agrave un contenu (geacuteneacuteralement du texte) des balises explicites (par exemple pour rendre compte de la structure du texte)

12   3      This is an example4   5

Ici le texte est This is an example il est baliseacute afin dajouter les informations suivantes cest est un paragraphe (balise ) du corps (balise ) dun document Lambda (balise )p body lambda

Balises et poigneacutees de calcul (cf p36)

4 XML un meacuteta-langage

Un meacuteta-langage est un langage permettant de deacutefinir dautres langages les langages ainsi deacutefinis permettent agrave leur tour la description dinformations respectant ces langages

Si lon deacutesire deacutefinir informatiquement un langage Lambda en disant quil peut contenir un eacuteleacutement de type qui lui mecircme contient des eacuteleacutements de type il faut speacutecifier les contraintes de ce body p

langage gracircce agrave un meacuteta-langage permettant donc de deacutefinir

Le vocabulaire lambda body p

La grammaire contient exactement un qui contient un ou plusieurs lambda body p

XML en tant que meacuteta-langage ne contient pas les mots du langage Lambda en revanche il dispose des meacutecaniques permettant de les deacutefinir

La deacutefinition dun langage XML particulier se fait gracircce agrave un scheacutema qui permet de lister les mots du langage (vocabulaire) et de deacutefinir leur utilisation (grammaire)

On parle eacutegalement de format

Deacutefinition Langage agrave balises

Exemple Balises Lambda

Compleacutement Voir aussi

Deacutefinition Meacuteta-langage

Exemple Langage Lambda

Deacutefinition Notion de scheacutema

ltlambdagt  ltbodygt     This is an exampleltpgt ltpgt  ltbodygtltlambdagt

Exemple Un document XML

8

--

-

---

-

1 ( ) gt2 ( +) gt3 p ( ) gt

Ce code exprime formellement (avec la syntaxe DTD) le langage ou format Lambda

5 Exemple Un document XML

1 23   stephanecrozatutcfr4   fabriceissacutcfr5   Demande dinformation6   01-03-20017  8    Bonjour Fabrice9    Peux tu mexpliquer ce quest le langage XML

10    Il me faudrait en effet ton avis eacuteclaireacute sur le sujet11    Jattends ta reacuteponse agrave bientocirct12  13

6 Historique de SGML agrave XML

XML heacuterite historiquement (et fonctionnellement) du meacuteta-langage SGML deacuteveloppeacute au deacutebut des anneacutees 1980 et largement utiliseacute dans le cadre des systegravemes documentaires notamment dans les industries de hautes technologies pour lesquelles la fiabiliteacute de la documentation est cruciale SGML restait un formalisme insuffisamment explicite et trop complexe ce qui rendait difficile la programmation dapplications SGML dans des cadres plus larges SGML laissait notamment des ambiguiumlteacutes en terme dinterpreacutetation du balisage XML est un langage respectant la syntaxe SGML mais en y ajoutant des contraintes suppleacutementaires afin den lever les ambiguiumlteacutes

A lorigine SGML

norme ISO (1986) creacuteeacute pour la repreacutesentation de documents structureacutesbien adapteacute aux systegravemes documentaires massifsexemple de langage SGML HTML

Un formalisme pas assez explicite

rend difficile la programmation dapplications SGML (navigateurs etc)XML (98) heacuterite de SGML en contraignant la syntaxe

Exemple Scheacutema Lambda

Exemple Un mail

SGML

( ) gtltELEMENT lambda body ( +) gtltELEMENT body p p ( ) gtltELEMENT PCDATA

ltxml version=10 encoding=iso-8859-1gtltmailgt  stephanecrozatutcfrltdegt ltdegt  fabriceissacutcfrltagt ltagt  Demande dinformationltobjetgt ltobjetgt  01-03-2001ltdategt ltdategt ltcorpsgt   Bonjour Fabriceltparagraphegt ltparagraphegt   Peux tu mexpliquer ce quest le langage XML ltparagraphegt ltparagraphegt   Il me faudrait en effet ton avis eacuteclaireacute sur le sujetltparagraphegt ltparagraphegt   Jattends ta reacuteponse agrave bientocirctltparagraphegt ltparagraphegt ltcorpsgtltmailgt

Discussion HTML et XML

9

--

--

En SGML une balise ouvrante nest pas obligatoirement fermeacutee par une balise fermante (sa fermeture pouvant rester implicite) tandis quen XML toute balise ouvrante est obligatoirement fermeacutee

Le code SGML est ambigu car on ne sait pas sil faut linterpreacuteter comme ltAgtltBgtltBgt

oultAgtltAgtltBgtltBgt

ltAgtltBgtltBgtltAgt

En XML seule lune des deux formulations non ambigueumls est autoriseacutee

HTML est un langage SGMLDocBook est agrave lorigine un langage SGML porteacute depuis en XML

XML heacuterite de SGML en contraignant la syntaxe tout document XML est donc un document SGML

Documents structureacutes et documents formateacutes (cf p12)

7 Discussion HTML et XML

XML est un meacuteta-langage et HTML est un langage XML et HTML ne sont donc pas directement comparables En particulier XHTML est un langage XML cest donc du XML

Une question pertinente est en revanche de se demander pourquoi HTML ou XHTML ne suffisent pas pour les usages Web et donc pourquoi XML est utile en dehors de son instanciation via XHTML

La reacuteponse est que si HTML et XHTML fournissent une solution de publication efficiente a fortioriils noffrent pas le mecircme potentiel en terme d XML possegravede donc un ingeacutenierie documentairepotentiel de plus important (par exemple pour le multi-supports la reacuteeacuteditorialisation manipulation)

Le langage de reacutefeacuterence du web qui a su simposer par sa simpliciteacute deacutecriture possegravede HTML

eacutegalement des inconveacutenients qui ont motiveacute les recherches du sur le W3C XML

Exemple Ambiguiumlteacute en SGML

Exemple

Fondamental

Compleacutement Voir aussi

Fondamental XML et HTML ne sont pas au mecircme niveau

XML et le Web

Exemple Exemple de limites du HTML

Discussion HTML et XML

10

-

-

- HTML est un langage les balises sont deacutefinies il est Jeu de balises restreint a prioriimpossible de deacutefinir ses propres balises et de creacuteer un vocabulaire propre agrave un domaine speacutecifique Ce manque d le rend mal approprieacute pour lindexation de documents extensibiliteacutevarieacutes le multimeacutedia

Les balises HTML fournissent des informations Meacutelange des descripteurs physiques et logiquesrelatives agrave la typographie ou la mise en page dun texte ( ) mais eacutegalement CENTER B

relatives agrave son rocircle dans le document ( ) Cette non seacuteparation stricte entre contenu H1 H2

et preacutesentation nuit agrave la publication multi-supports et la reacuteeacuteditorialisation par exemple En HTML les liens sont geacuteneacuteralement des pointeurs directs vers une autre ressource (Liens A

) Cette mise en œuvre limite fortement les possibiliteacutes de reacuteutilisation notamment par le risque de lien casseacute

Documents structureacutes et documents formateacutes (cf p12)

Compleacutement Voir aussi

Langages XML

11

1 Langages standard et langages locaux

On appelle langage (ou format) standard un langage dont le scheacutema est deacutefini par une organisation reconnue et multipartite (W3C ISO OASIS ) pour les besoins geacuteneacuteriques dune large communauteacute en geacuteneacuteral internationale

On appelle standard de fait les langages imposeacutes par une organisation unique mais agrave une telle eacutechelle que leur usage est incontournable Cest typiquement lexemple des formats de la suite bureautique Microsoft Office (doc xls ppt )

On appelle langage (ou format) local - par opposition au format standard - un langage deacutefini par une organisation seule ou une communauteacute restreinte pour ses besoins propres (un service une entreprise voire un reacuteseau dorganisations dans un pays )

Un format est dit ouvert lorsquil est public et que nimporte qui peut lutiliser sans contrainte Il est au contraire fermeacute si son accegraves est proteacutegeacute payant ou soumis agrave dautres contraintes

On parle de format proprieacutetaire pour deacutesigner un format agrave la fois local et fermeacute

2 Langages XML orienteacutes donneacutees

Ils permettent denregistrer et de transporter des donneacutees informatiques structureacutees (comme par exemple des donneacutees geacutereacutees par des bases de donneacutees) selon des formats ouvert (cest agrave dire dont on connaicirct la syntaxe) et facile agrave manipuler (les structures arborescentes XML eacutetant plus riches que des fichiers agrave plat par exemple)

Les langages XML orienteacutees donneacutees servent surtout agrave leacutechange ou la des donneacutees des seacuterialisation

programmes informatiques

Langages XMLII

Deacutefinition Format standard

Remarque Standard de fait

Deacutefinition Format local

Deacutefinition Format ouvert ou fermeacute

Remarque Format proprieacutetaire

Deacutefinition

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 5: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Introduction agrave XML

5

1 Preacuteambule XML selon le W3C

est un standard du XML W3C Extensible Markup Language (XML) 10 (Fifth Edition)

Les deacutefinitions suivantes sont directement copieacutees du site du (novembre 2009)W3C

The Extensible Markup Language (XML) is a for representing simple text-based format structured documents data configuration books transactions invoices and much more It was information

derived from an older standard format called (ISO 8879) in order to be more suitable for SGMLWeb use

XML is one of the most widely-used formats today between for sharing structured informationprograms between people between computers and people both locally and across networks

12   3    =4      Essuie-glace5      Lessuie-glace retire automatiquement la pluie du = pare-brise

lorsquelle tombe dessus Il possegravede une = lame caoutchouteacuteeltvoirAussigt ltvoirAussi ref 1977gt ltvoirAussigt qui peut ecirctre changeacutee seacutepareacutement en cas de besoinltdescriptiongt

6   7    =8      Lame caoutchouteacutee9     

10   11   12

Introduction agrave XMLI

Deacutefinition What is XML

Deacutefinition What is XML Used For

Exemple Extrait dun lexique

ltlexiquegt     =ltentree id 1976gt     Essuie-glaceltmotgt ltmotgt     Lessuie-glace retire automatiquement la pluie du = pare-briseltdescriptiongt ltvoirAussi ref 1965gt

lorsquelle tombe dessus Il possegravede une = lame caoutchouteacuteeltvoirAussigt ltvoirAussi ref 1977gt ltvoirAussigt qui peut ecirctre changeacutee seacutepareacutement en cas de besoinltdescriptiongt  ltentreegt   =ltentree id 1977gt     Lame caoutchouteacuteeltmotgt ltmotgt      ltentreegt  ltlexiquegt

XML un langage agrave balise

6

--

2 Deacutefinition du XML

LeXtensible Markup Language est un permettant de deacutefinir des langages agrave XML meacuteta-langagebalises

Il standardiseacute comme une recommandation par le depuis W3C 1998

LaTeX et HTML sont des langages agrave balises (mais ce ne sont pas des langages XML)XHTML est un langage XML

En tant que meacuteta-langage XML sert agrave deacutefinir des informatiques cest agrave dire des faccedilons de formatsrepreacutesenter de linformation

Les bonnes caracteacuteristiques dXML - - en font un tregraves bon non-ambiguiumlteacute lisibiliteacute passiviteacutecandidat pour de tregraves nombreux usages il est donc utiliseacute dans des secteurs tregraves varieacutes de linformatique

On distingue geacuteneacuteralement deux grandes cateacutegories dutilisation les langages orienteacutes donneacutees et les langages orienteacutes documents

La version historique de XML est la version 10 qui reste aujourdhui la plus largement utiliseacutee

Il existe eacutegalement une version 11 de XML qui propose des diffeacuterences mineures et neacutecessaires uniquement dans des contextes particuliers Cette nouvelle version a eacuteteacute neacutecessaire pour des raisons de compatibiliteacute des outils existants Les eacutevolutions principales de XML 11 sont de nouveaux caractegraveres permis pour les noms deacuteleacutements (pour suivre leacutevolution dUnicode depuis 1998) de nouvelles conventions pour les caractegraveres de fin de ligne (pour la compatibiliteacute avec des ordinateurs

) et de nouveaux caractegraveres de controcircle dans le contenumain frame

XML Un langage agrave balise (cf p7)

XML un meacuteta-langage (cf p7)

Langages XML orienteacutes donneacutees (cf p11)

Langages XML orienteacutes documents (cf p15)

Caracteacuteristiques rechercheacutees pour un format XML (cf p16)

Deacutefinition XML

Exemple

Fondamental

Compleacutement Versions de XML

Compleacutement Voir aussi

XML un meacuteta-langage

7

--

3 XML un langage agrave balise

Une balise est un descripteur ajouteacute au contenu en vue dun traitement informatique

Un langage agrave balises est un langage permettant dassocier agrave un contenu (geacuteneacuteralement du texte) des balises explicites (par exemple pour rendre compte de la structure du texte)

12   3      This is an example4   5

Ici le texte est This is an example il est baliseacute afin dajouter les informations suivantes cest est un paragraphe (balise ) du corps (balise ) dun document Lambda (balise )p body lambda

Balises et poigneacutees de calcul (cf p36)

4 XML un meacuteta-langage

Un meacuteta-langage est un langage permettant de deacutefinir dautres langages les langages ainsi deacutefinis permettent agrave leur tour la description dinformations respectant ces langages

Si lon deacutesire deacutefinir informatiquement un langage Lambda en disant quil peut contenir un eacuteleacutement de type qui lui mecircme contient des eacuteleacutements de type il faut speacutecifier les contraintes de ce body p

langage gracircce agrave un meacuteta-langage permettant donc de deacutefinir

Le vocabulaire lambda body p

La grammaire contient exactement un qui contient un ou plusieurs lambda body p

XML en tant que meacuteta-langage ne contient pas les mots du langage Lambda en revanche il dispose des meacutecaniques permettant de les deacutefinir

La deacutefinition dun langage XML particulier se fait gracircce agrave un scheacutema qui permet de lister les mots du langage (vocabulaire) et de deacutefinir leur utilisation (grammaire)

On parle eacutegalement de format

Deacutefinition Langage agrave balises

Exemple Balises Lambda

Compleacutement Voir aussi

Deacutefinition Meacuteta-langage

Exemple Langage Lambda

Deacutefinition Notion de scheacutema

ltlambdagt  ltbodygt     This is an exampleltpgt ltpgt  ltbodygtltlambdagt

Exemple Un document XML

8

--

-

---

-

1 ( ) gt2 ( +) gt3 p ( ) gt

Ce code exprime formellement (avec la syntaxe DTD) le langage ou format Lambda

5 Exemple Un document XML

1 23   stephanecrozatutcfr4   fabriceissacutcfr5   Demande dinformation6   01-03-20017  8    Bonjour Fabrice9    Peux tu mexpliquer ce quest le langage XML

10    Il me faudrait en effet ton avis eacuteclaireacute sur le sujet11    Jattends ta reacuteponse agrave bientocirct12  13

6 Historique de SGML agrave XML

XML heacuterite historiquement (et fonctionnellement) du meacuteta-langage SGML deacuteveloppeacute au deacutebut des anneacutees 1980 et largement utiliseacute dans le cadre des systegravemes documentaires notamment dans les industries de hautes technologies pour lesquelles la fiabiliteacute de la documentation est cruciale SGML restait un formalisme insuffisamment explicite et trop complexe ce qui rendait difficile la programmation dapplications SGML dans des cadres plus larges SGML laissait notamment des ambiguiumlteacutes en terme dinterpreacutetation du balisage XML est un langage respectant la syntaxe SGML mais en y ajoutant des contraintes suppleacutementaires afin den lever les ambiguiumlteacutes

A lorigine SGML

norme ISO (1986) creacuteeacute pour la repreacutesentation de documents structureacutesbien adapteacute aux systegravemes documentaires massifsexemple de langage SGML HTML

Un formalisme pas assez explicite

rend difficile la programmation dapplications SGML (navigateurs etc)XML (98) heacuterite de SGML en contraignant la syntaxe

Exemple Scheacutema Lambda

Exemple Un mail

SGML

( ) gtltELEMENT lambda body ( +) gtltELEMENT body p p ( ) gtltELEMENT PCDATA

ltxml version=10 encoding=iso-8859-1gtltmailgt  stephanecrozatutcfrltdegt ltdegt  fabriceissacutcfrltagt ltagt  Demande dinformationltobjetgt ltobjetgt  01-03-2001ltdategt ltdategt ltcorpsgt   Bonjour Fabriceltparagraphegt ltparagraphegt   Peux tu mexpliquer ce quest le langage XML ltparagraphegt ltparagraphegt   Il me faudrait en effet ton avis eacuteclaireacute sur le sujetltparagraphegt ltparagraphegt   Jattends ta reacuteponse agrave bientocirctltparagraphegt ltparagraphegt ltcorpsgtltmailgt

Discussion HTML et XML

9

--

--

En SGML une balise ouvrante nest pas obligatoirement fermeacutee par une balise fermante (sa fermeture pouvant rester implicite) tandis quen XML toute balise ouvrante est obligatoirement fermeacutee

Le code SGML est ambigu car on ne sait pas sil faut linterpreacuteter comme ltAgtltBgtltBgt

oultAgtltAgtltBgtltBgt

ltAgtltBgtltBgtltAgt

En XML seule lune des deux formulations non ambigueumls est autoriseacutee

HTML est un langage SGMLDocBook est agrave lorigine un langage SGML porteacute depuis en XML

XML heacuterite de SGML en contraignant la syntaxe tout document XML est donc un document SGML

Documents structureacutes et documents formateacutes (cf p12)

7 Discussion HTML et XML

XML est un meacuteta-langage et HTML est un langage XML et HTML ne sont donc pas directement comparables En particulier XHTML est un langage XML cest donc du XML

Une question pertinente est en revanche de se demander pourquoi HTML ou XHTML ne suffisent pas pour les usages Web et donc pourquoi XML est utile en dehors de son instanciation via XHTML

La reacuteponse est que si HTML et XHTML fournissent une solution de publication efficiente a fortioriils noffrent pas le mecircme potentiel en terme d XML possegravede donc un ingeacutenierie documentairepotentiel de plus important (par exemple pour le multi-supports la reacuteeacuteditorialisation manipulation)

Le langage de reacutefeacuterence du web qui a su simposer par sa simpliciteacute deacutecriture possegravede HTML

eacutegalement des inconveacutenients qui ont motiveacute les recherches du sur le W3C XML

Exemple Ambiguiumlteacute en SGML

Exemple

Fondamental

Compleacutement Voir aussi

Fondamental XML et HTML ne sont pas au mecircme niveau

XML et le Web

Exemple Exemple de limites du HTML

Discussion HTML et XML

10

-

-

- HTML est un langage les balises sont deacutefinies il est Jeu de balises restreint a prioriimpossible de deacutefinir ses propres balises et de creacuteer un vocabulaire propre agrave un domaine speacutecifique Ce manque d le rend mal approprieacute pour lindexation de documents extensibiliteacutevarieacutes le multimeacutedia

Les balises HTML fournissent des informations Meacutelange des descripteurs physiques et logiquesrelatives agrave la typographie ou la mise en page dun texte ( ) mais eacutegalement CENTER B

relatives agrave son rocircle dans le document ( ) Cette non seacuteparation stricte entre contenu H1 H2

et preacutesentation nuit agrave la publication multi-supports et la reacuteeacuteditorialisation par exemple En HTML les liens sont geacuteneacuteralement des pointeurs directs vers une autre ressource (Liens A

) Cette mise en œuvre limite fortement les possibiliteacutes de reacuteutilisation notamment par le risque de lien casseacute

Documents structureacutes et documents formateacutes (cf p12)

Compleacutement Voir aussi

Langages XML

11

1 Langages standard et langages locaux

On appelle langage (ou format) standard un langage dont le scheacutema est deacutefini par une organisation reconnue et multipartite (W3C ISO OASIS ) pour les besoins geacuteneacuteriques dune large communauteacute en geacuteneacuteral internationale

On appelle standard de fait les langages imposeacutes par une organisation unique mais agrave une telle eacutechelle que leur usage est incontournable Cest typiquement lexemple des formats de la suite bureautique Microsoft Office (doc xls ppt )

On appelle langage (ou format) local - par opposition au format standard - un langage deacutefini par une organisation seule ou une communauteacute restreinte pour ses besoins propres (un service une entreprise voire un reacuteseau dorganisations dans un pays )

Un format est dit ouvert lorsquil est public et que nimporte qui peut lutiliser sans contrainte Il est au contraire fermeacute si son accegraves est proteacutegeacute payant ou soumis agrave dautres contraintes

On parle de format proprieacutetaire pour deacutesigner un format agrave la fois local et fermeacute

2 Langages XML orienteacutes donneacutees

Ils permettent denregistrer et de transporter des donneacutees informatiques structureacutees (comme par exemple des donneacutees geacutereacutees par des bases de donneacutees) selon des formats ouvert (cest agrave dire dont on connaicirct la syntaxe) et facile agrave manipuler (les structures arborescentes XML eacutetant plus riches que des fichiers agrave plat par exemple)

Les langages XML orienteacutees donneacutees servent surtout agrave leacutechange ou la des donneacutees des seacuterialisation

programmes informatiques

Langages XMLII

Deacutefinition Format standard

Remarque Standard de fait

Deacutefinition Format local

Deacutefinition Format ouvert ou fermeacute

Remarque Format proprieacutetaire

Deacutefinition

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 6: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

XML un langage agrave balise

6

--

2 Deacutefinition du XML

LeXtensible Markup Language est un permettant de deacutefinir des langages agrave XML meacuteta-langagebalises

Il standardiseacute comme une recommandation par le depuis W3C 1998

LaTeX et HTML sont des langages agrave balises (mais ce ne sont pas des langages XML)XHTML est un langage XML

En tant que meacuteta-langage XML sert agrave deacutefinir des informatiques cest agrave dire des faccedilons de formatsrepreacutesenter de linformation

Les bonnes caracteacuteristiques dXML - - en font un tregraves bon non-ambiguiumlteacute lisibiliteacute passiviteacutecandidat pour de tregraves nombreux usages il est donc utiliseacute dans des secteurs tregraves varieacutes de linformatique

On distingue geacuteneacuteralement deux grandes cateacutegories dutilisation les langages orienteacutes donneacutees et les langages orienteacutes documents

La version historique de XML est la version 10 qui reste aujourdhui la plus largement utiliseacutee

Il existe eacutegalement une version 11 de XML qui propose des diffeacuterences mineures et neacutecessaires uniquement dans des contextes particuliers Cette nouvelle version a eacuteteacute neacutecessaire pour des raisons de compatibiliteacute des outils existants Les eacutevolutions principales de XML 11 sont de nouveaux caractegraveres permis pour les noms deacuteleacutements (pour suivre leacutevolution dUnicode depuis 1998) de nouvelles conventions pour les caractegraveres de fin de ligne (pour la compatibiliteacute avec des ordinateurs

) et de nouveaux caractegraveres de controcircle dans le contenumain frame

XML Un langage agrave balise (cf p7)

XML un meacuteta-langage (cf p7)

Langages XML orienteacutes donneacutees (cf p11)

Langages XML orienteacutes documents (cf p15)

Caracteacuteristiques rechercheacutees pour un format XML (cf p16)

Deacutefinition XML

Exemple

Fondamental

Compleacutement Versions de XML

Compleacutement Voir aussi

XML un meacuteta-langage

7

--

3 XML un langage agrave balise

Une balise est un descripteur ajouteacute au contenu en vue dun traitement informatique

Un langage agrave balises est un langage permettant dassocier agrave un contenu (geacuteneacuteralement du texte) des balises explicites (par exemple pour rendre compte de la structure du texte)

12   3      This is an example4   5

Ici le texte est This is an example il est baliseacute afin dajouter les informations suivantes cest est un paragraphe (balise ) du corps (balise ) dun document Lambda (balise )p body lambda

Balises et poigneacutees de calcul (cf p36)

4 XML un meacuteta-langage

Un meacuteta-langage est un langage permettant de deacutefinir dautres langages les langages ainsi deacutefinis permettent agrave leur tour la description dinformations respectant ces langages

Si lon deacutesire deacutefinir informatiquement un langage Lambda en disant quil peut contenir un eacuteleacutement de type qui lui mecircme contient des eacuteleacutements de type il faut speacutecifier les contraintes de ce body p

langage gracircce agrave un meacuteta-langage permettant donc de deacutefinir

Le vocabulaire lambda body p

La grammaire contient exactement un qui contient un ou plusieurs lambda body p

XML en tant que meacuteta-langage ne contient pas les mots du langage Lambda en revanche il dispose des meacutecaniques permettant de les deacutefinir

La deacutefinition dun langage XML particulier se fait gracircce agrave un scheacutema qui permet de lister les mots du langage (vocabulaire) et de deacutefinir leur utilisation (grammaire)

On parle eacutegalement de format

Deacutefinition Langage agrave balises

Exemple Balises Lambda

Compleacutement Voir aussi

Deacutefinition Meacuteta-langage

Exemple Langage Lambda

Deacutefinition Notion de scheacutema

ltlambdagt  ltbodygt     This is an exampleltpgt ltpgt  ltbodygtltlambdagt

Exemple Un document XML

8

--

-

---

-

1 ( ) gt2 ( +) gt3 p ( ) gt

Ce code exprime formellement (avec la syntaxe DTD) le langage ou format Lambda

5 Exemple Un document XML

1 23   stephanecrozatutcfr4   fabriceissacutcfr5   Demande dinformation6   01-03-20017  8    Bonjour Fabrice9    Peux tu mexpliquer ce quest le langage XML

10    Il me faudrait en effet ton avis eacuteclaireacute sur le sujet11    Jattends ta reacuteponse agrave bientocirct12  13

6 Historique de SGML agrave XML

XML heacuterite historiquement (et fonctionnellement) du meacuteta-langage SGML deacuteveloppeacute au deacutebut des anneacutees 1980 et largement utiliseacute dans le cadre des systegravemes documentaires notamment dans les industries de hautes technologies pour lesquelles la fiabiliteacute de la documentation est cruciale SGML restait un formalisme insuffisamment explicite et trop complexe ce qui rendait difficile la programmation dapplications SGML dans des cadres plus larges SGML laissait notamment des ambiguiumlteacutes en terme dinterpreacutetation du balisage XML est un langage respectant la syntaxe SGML mais en y ajoutant des contraintes suppleacutementaires afin den lever les ambiguiumlteacutes

A lorigine SGML

norme ISO (1986) creacuteeacute pour la repreacutesentation de documents structureacutesbien adapteacute aux systegravemes documentaires massifsexemple de langage SGML HTML

Un formalisme pas assez explicite

rend difficile la programmation dapplications SGML (navigateurs etc)XML (98) heacuterite de SGML en contraignant la syntaxe

Exemple Scheacutema Lambda

Exemple Un mail

SGML

( ) gtltELEMENT lambda body ( +) gtltELEMENT body p p ( ) gtltELEMENT PCDATA

ltxml version=10 encoding=iso-8859-1gtltmailgt  stephanecrozatutcfrltdegt ltdegt  fabriceissacutcfrltagt ltagt  Demande dinformationltobjetgt ltobjetgt  01-03-2001ltdategt ltdategt ltcorpsgt   Bonjour Fabriceltparagraphegt ltparagraphegt   Peux tu mexpliquer ce quest le langage XML ltparagraphegt ltparagraphegt   Il me faudrait en effet ton avis eacuteclaireacute sur le sujetltparagraphegt ltparagraphegt   Jattends ta reacuteponse agrave bientocirctltparagraphegt ltparagraphegt ltcorpsgtltmailgt

Discussion HTML et XML

9

--

--

En SGML une balise ouvrante nest pas obligatoirement fermeacutee par une balise fermante (sa fermeture pouvant rester implicite) tandis quen XML toute balise ouvrante est obligatoirement fermeacutee

Le code SGML est ambigu car on ne sait pas sil faut linterpreacuteter comme ltAgtltBgtltBgt

oultAgtltAgtltBgtltBgt

ltAgtltBgtltBgtltAgt

En XML seule lune des deux formulations non ambigueumls est autoriseacutee

HTML est un langage SGMLDocBook est agrave lorigine un langage SGML porteacute depuis en XML

XML heacuterite de SGML en contraignant la syntaxe tout document XML est donc un document SGML

Documents structureacutes et documents formateacutes (cf p12)

7 Discussion HTML et XML

XML est un meacuteta-langage et HTML est un langage XML et HTML ne sont donc pas directement comparables En particulier XHTML est un langage XML cest donc du XML

Une question pertinente est en revanche de se demander pourquoi HTML ou XHTML ne suffisent pas pour les usages Web et donc pourquoi XML est utile en dehors de son instanciation via XHTML

La reacuteponse est que si HTML et XHTML fournissent une solution de publication efficiente a fortioriils noffrent pas le mecircme potentiel en terme d XML possegravede donc un ingeacutenierie documentairepotentiel de plus important (par exemple pour le multi-supports la reacuteeacuteditorialisation manipulation)

Le langage de reacutefeacuterence du web qui a su simposer par sa simpliciteacute deacutecriture possegravede HTML

eacutegalement des inconveacutenients qui ont motiveacute les recherches du sur le W3C XML

Exemple Ambiguiumlteacute en SGML

Exemple

Fondamental

Compleacutement Voir aussi

Fondamental XML et HTML ne sont pas au mecircme niveau

XML et le Web

Exemple Exemple de limites du HTML

Discussion HTML et XML

10

-

-

- HTML est un langage les balises sont deacutefinies il est Jeu de balises restreint a prioriimpossible de deacutefinir ses propres balises et de creacuteer un vocabulaire propre agrave un domaine speacutecifique Ce manque d le rend mal approprieacute pour lindexation de documents extensibiliteacutevarieacutes le multimeacutedia

Les balises HTML fournissent des informations Meacutelange des descripteurs physiques et logiquesrelatives agrave la typographie ou la mise en page dun texte ( ) mais eacutegalement CENTER B

relatives agrave son rocircle dans le document ( ) Cette non seacuteparation stricte entre contenu H1 H2

et preacutesentation nuit agrave la publication multi-supports et la reacuteeacuteditorialisation par exemple En HTML les liens sont geacuteneacuteralement des pointeurs directs vers une autre ressource (Liens A

) Cette mise en œuvre limite fortement les possibiliteacutes de reacuteutilisation notamment par le risque de lien casseacute

Documents structureacutes et documents formateacutes (cf p12)

Compleacutement Voir aussi

Langages XML

11

1 Langages standard et langages locaux

On appelle langage (ou format) standard un langage dont le scheacutema est deacutefini par une organisation reconnue et multipartite (W3C ISO OASIS ) pour les besoins geacuteneacuteriques dune large communauteacute en geacuteneacuteral internationale

On appelle standard de fait les langages imposeacutes par une organisation unique mais agrave une telle eacutechelle que leur usage est incontournable Cest typiquement lexemple des formats de la suite bureautique Microsoft Office (doc xls ppt )

On appelle langage (ou format) local - par opposition au format standard - un langage deacutefini par une organisation seule ou une communauteacute restreinte pour ses besoins propres (un service une entreprise voire un reacuteseau dorganisations dans un pays )

Un format est dit ouvert lorsquil est public et que nimporte qui peut lutiliser sans contrainte Il est au contraire fermeacute si son accegraves est proteacutegeacute payant ou soumis agrave dautres contraintes

On parle de format proprieacutetaire pour deacutesigner un format agrave la fois local et fermeacute

2 Langages XML orienteacutes donneacutees

Ils permettent denregistrer et de transporter des donneacutees informatiques structureacutees (comme par exemple des donneacutees geacutereacutees par des bases de donneacutees) selon des formats ouvert (cest agrave dire dont on connaicirct la syntaxe) et facile agrave manipuler (les structures arborescentes XML eacutetant plus riches que des fichiers agrave plat par exemple)

Les langages XML orienteacutees donneacutees servent surtout agrave leacutechange ou la des donneacutees des seacuterialisation

programmes informatiques

Langages XMLII

Deacutefinition Format standard

Remarque Standard de fait

Deacutefinition Format local

Deacutefinition Format ouvert ou fermeacute

Remarque Format proprieacutetaire

Deacutefinition

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 7: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

XML un meacuteta-langage

7

--

3 XML un langage agrave balise

Une balise est un descripteur ajouteacute au contenu en vue dun traitement informatique

Un langage agrave balises est un langage permettant dassocier agrave un contenu (geacuteneacuteralement du texte) des balises explicites (par exemple pour rendre compte de la structure du texte)

12   3      This is an example4   5

Ici le texte est This is an example il est baliseacute afin dajouter les informations suivantes cest est un paragraphe (balise ) du corps (balise ) dun document Lambda (balise )p body lambda

Balises et poigneacutees de calcul (cf p36)

4 XML un meacuteta-langage

Un meacuteta-langage est un langage permettant de deacutefinir dautres langages les langages ainsi deacutefinis permettent agrave leur tour la description dinformations respectant ces langages

Si lon deacutesire deacutefinir informatiquement un langage Lambda en disant quil peut contenir un eacuteleacutement de type qui lui mecircme contient des eacuteleacutements de type il faut speacutecifier les contraintes de ce body p

langage gracircce agrave un meacuteta-langage permettant donc de deacutefinir

Le vocabulaire lambda body p

La grammaire contient exactement un qui contient un ou plusieurs lambda body p

XML en tant que meacuteta-langage ne contient pas les mots du langage Lambda en revanche il dispose des meacutecaniques permettant de les deacutefinir

La deacutefinition dun langage XML particulier se fait gracircce agrave un scheacutema qui permet de lister les mots du langage (vocabulaire) et de deacutefinir leur utilisation (grammaire)

On parle eacutegalement de format

Deacutefinition Langage agrave balises

Exemple Balises Lambda

Compleacutement Voir aussi

Deacutefinition Meacuteta-langage

Exemple Langage Lambda

Deacutefinition Notion de scheacutema

ltlambdagt  ltbodygt     This is an exampleltpgt ltpgt  ltbodygtltlambdagt

Exemple Un document XML

8

--

-

---

-

1 ( ) gt2 ( +) gt3 p ( ) gt

Ce code exprime formellement (avec la syntaxe DTD) le langage ou format Lambda

5 Exemple Un document XML

1 23   stephanecrozatutcfr4   fabriceissacutcfr5   Demande dinformation6   01-03-20017  8    Bonjour Fabrice9    Peux tu mexpliquer ce quest le langage XML

10    Il me faudrait en effet ton avis eacuteclaireacute sur le sujet11    Jattends ta reacuteponse agrave bientocirct12  13

6 Historique de SGML agrave XML

XML heacuterite historiquement (et fonctionnellement) du meacuteta-langage SGML deacuteveloppeacute au deacutebut des anneacutees 1980 et largement utiliseacute dans le cadre des systegravemes documentaires notamment dans les industries de hautes technologies pour lesquelles la fiabiliteacute de la documentation est cruciale SGML restait un formalisme insuffisamment explicite et trop complexe ce qui rendait difficile la programmation dapplications SGML dans des cadres plus larges SGML laissait notamment des ambiguiumlteacutes en terme dinterpreacutetation du balisage XML est un langage respectant la syntaxe SGML mais en y ajoutant des contraintes suppleacutementaires afin den lever les ambiguiumlteacutes

A lorigine SGML

norme ISO (1986) creacuteeacute pour la repreacutesentation de documents structureacutesbien adapteacute aux systegravemes documentaires massifsexemple de langage SGML HTML

Un formalisme pas assez explicite

rend difficile la programmation dapplications SGML (navigateurs etc)XML (98) heacuterite de SGML en contraignant la syntaxe

Exemple Scheacutema Lambda

Exemple Un mail

SGML

( ) gtltELEMENT lambda body ( +) gtltELEMENT body p p ( ) gtltELEMENT PCDATA

ltxml version=10 encoding=iso-8859-1gtltmailgt  stephanecrozatutcfrltdegt ltdegt  fabriceissacutcfrltagt ltagt  Demande dinformationltobjetgt ltobjetgt  01-03-2001ltdategt ltdategt ltcorpsgt   Bonjour Fabriceltparagraphegt ltparagraphegt   Peux tu mexpliquer ce quest le langage XML ltparagraphegt ltparagraphegt   Il me faudrait en effet ton avis eacuteclaireacute sur le sujetltparagraphegt ltparagraphegt   Jattends ta reacuteponse agrave bientocirctltparagraphegt ltparagraphegt ltcorpsgtltmailgt

Discussion HTML et XML

9

--

--

En SGML une balise ouvrante nest pas obligatoirement fermeacutee par une balise fermante (sa fermeture pouvant rester implicite) tandis quen XML toute balise ouvrante est obligatoirement fermeacutee

Le code SGML est ambigu car on ne sait pas sil faut linterpreacuteter comme ltAgtltBgtltBgt

oultAgtltAgtltBgtltBgt

ltAgtltBgtltBgtltAgt

En XML seule lune des deux formulations non ambigueumls est autoriseacutee

HTML est un langage SGMLDocBook est agrave lorigine un langage SGML porteacute depuis en XML

XML heacuterite de SGML en contraignant la syntaxe tout document XML est donc un document SGML

Documents structureacutes et documents formateacutes (cf p12)

7 Discussion HTML et XML

XML est un meacuteta-langage et HTML est un langage XML et HTML ne sont donc pas directement comparables En particulier XHTML est un langage XML cest donc du XML

Une question pertinente est en revanche de se demander pourquoi HTML ou XHTML ne suffisent pas pour les usages Web et donc pourquoi XML est utile en dehors de son instanciation via XHTML

La reacuteponse est que si HTML et XHTML fournissent une solution de publication efficiente a fortioriils noffrent pas le mecircme potentiel en terme d XML possegravede donc un ingeacutenierie documentairepotentiel de plus important (par exemple pour le multi-supports la reacuteeacuteditorialisation manipulation)

Le langage de reacutefeacuterence du web qui a su simposer par sa simpliciteacute deacutecriture possegravede HTML

eacutegalement des inconveacutenients qui ont motiveacute les recherches du sur le W3C XML

Exemple Ambiguiumlteacute en SGML

Exemple

Fondamental

Compleacutement Voir aussi

Fondamental XML et HTML ne sont pas au mecircme niveau

XML et le Web

Exemple Exemple de limites du HTML

Discussion HTML et XML

10

-

-

- HTML est un langage les balises sont deacutefinies il est Jeu de balises restreint a prioriimpossible de deacutefinir ses propres balises et de creacuteer un vocabulaire propre agrave un domaine speacutecifique Ce manque d le rend mal approprieacute pour lindexation de documents extensibiliteacutevarieacutes le multimeacutedia

Les balises HTML fournissent des informations Meacutelange des descripteurs physiques et logiquesrelatives agrave la typographie ou la mise en page dun texte ( ) mais eacutegalement CENTER B

relatives agrave son rocircle dans le document ( ) Cette non seacuteparation stricte entre contenu H1 H2

et preacutesentation nuit agrave la publication multi-supports et la reacuteeacuteditorialisation par exemple En HTML les liens sont geacuteneacuteralement des pointeurs directs vers une autre ressource (Liens A

) Cette mise en œuvre limite fortement les possibiliteacutes de reacuteutilisation notamment par le risque de lien casseacute

Documents structureacutes et documents formateacutes (cf p12)

Compleacutement Voir aussi

Langages XML

11

1 Langages standard et langages locaux

On appelle langage (ou format) standard un langage dont le scheacutema est deacutefini par une organisation reconnue et multipartite (W3C ISO OASIS ) pour les besoins geacuteneacuteriques dune large communauteacute en geacuteneacuteral internationale

On appelle standard de fait les langages imposeacutes par une organisation unique mais agrave une telle eacutechelle que leur usage est incontournable Cest typiquement lexemple des formats de la suite bureautique Microsoft Office (doc xls ppt )

On appelle langage (ou format) local - par opposition au format standard - un langage deacutefini par une organisation seule ou une communauteacute restreinte pour ses besoins propres (un service une entreprise voire un reacuteseau dorganisations dans un pays )

Un format est dit ouvert lorsquil est public et que nimporte qui peut lutiliser sans contrainte Il est au contraire fermeacute si son accegraves est proteacutegeacute payant ou soumis agrave dautres contraintes

On parle de format proprieacutetaire pour deacutesigner un format agrave la fois local et fermeacute

2 Langages XML orienteacutes donneacutees

Ils permettent denregistrer et de transporter des donneacutees informatiques structureacutees (comme par exemple des donneacutees geacutereacutees par des bases de donneacutees) selon des formats ouvert (cest agrave dire dont on connaicirct la syntaxe) et facile agrave manipuler (les structures arborescentes XML eacutetant plus riches que des fichiers agrave plat par exemple)

Les langages XML orienteacutees donneacutees servent surtout agrave leacutechange ou la des donneacutees des seacuterialisation

programmes informatiques

Langages XMLII

Deacutefinition Format standard

Remarque Standard de fait

Deacutefinition Format local

Deacutefinition Format ouvert ou fermeacute

Remarque Format proprieacutetaire

Deacutefinition

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 8: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Exemple Un document XML

8

--

-

---

-

1 ( ) gt2 ( +) gt3 p ( ) gt

Ce code exprime formellement (avec la syntaxe DTD) le langage ou format Lambda

5 Exemple Un document XML

1 23   stephanecrozatutcfr4   fabriceissacutcfr5   Demande dinformation6   01-03-20017  8    Bonjour Fabrice9    Peux tu mexpliquer ce quest le langage XML

10    Il me faudrait en effet ton avis eacuteclaireacute sur le sujet11    Jattends ta reacuteponse agrave bientocirct12  13

6 Historique de SGML agrave XML

XML heacuterite historiquement (et fonctionnellement) du meacuteta-langage SGML deacuteveloppeacute au deacutebut des anneacutees 1980 et largement utiliseacute dans le cadre des systegravemes documentaires notamment dans les industries de hautes technologies pour lesquelles la fiabiliteacute de la documentation est cruciale SGML restait un formalisme insuffisamment explicite et trop complexe ce qui rendait difficile la programmation dapplications SGML dans des cadres plus larges SGML laissait notamment des ambiguiumlteacutes en terme dinterpreacutetation du balisage XML est un langage respectant la syntaxe SGML mais en y ajoutant des contraintes suppleacutementaires afin den lever les ambiguiumlteacutes

A lorigine SGML

norme ISO (1986) creacuteeacute pour la repreacutesentation de documents structureacutesbien adapteacute aux systegravemes documentaires massifsexemple de langage SGML HTML

Un formalisme pas assez explicite

rend difficile la programmation dapplications SGML (navigateurs etc)XML (98) heacuterite de SGML en contraignant la syntaxe

Exemple Scheacutema Lambda

Exemple Un mail

SGML

( ) gtltELEMENT lambda body ( +) gtltELEMENT body p p ( ) gtltELEMENT PCDATA

ltxml version=10 encoding=iso-8859-1gtltmailgt  stephanecrozatutcfrltdegt ltdegt  fabriceissacutcfrltagt ltagt  Demande dinformationltobjetgt ltobjetgt  01-03-2001ltdategt ltdategt ltcorpsgt   Bonjour Fabriceltparagraphegt ltparagraphegt   Peux tu mexpliquer ce quest le langage XML ltparagraphegt ltparagraphegt   Il me faudrait en effet ton avis eacuteclaireacute sur le sujetltparagraphegt ltparagraphegt   Jattends ta reacuteponse agrave bientocirctltparagraphegt ltparagraphegt ltcorpsgtltmailgt

Discussion HTML et XML

9

--

--

En SGML une balise ouvrante nest pas obligatoirement fermeacutee par une balise fermante (sa fermeture pouvant rester implicite) tandis quen XML toute balise ouvrante est obligatoirement fermeacutee

Le code SGML est ambigu car on ne sait pas sil faut linterpreacuteter comme ltAgtltBgtltBgt

oultAgtltAgtltBgtltBgt

ltAgtltBgtltBgtltAgt

En XML seule lune des deux formulations non ambigueumls est autoriseacutee

HTML est un langage SGMLDocBook est agrave lorigine un langage SGML porteacute depuis en XML

XML heacuterite de SGML en contraignant la syntaxe tout document XML est donc un document SGML

Documents structureacutes et documents formateacutes (cf p12)

7 Discussion HTML et XML

XML est un meacuteta-langage et HTML est un langage XML et HTML ne sont donc pas directement comparables En particulier XHTML est un langage XML cest donc du XML

Une question pertinente est en revanche de se demander pourquoi HTML ou XHTML ne suffisent pas pour les usages Web et donc pourquoi XML est utile en dehors de son instanciation via XHTML

La reacuteponse est que si HTML et XHTML fournissent une solution de publication efficiente a fortioriils noffrent pas le mecircme potentiel en terme d XML possegravede donc un ingeacutenierie documentairepotentiel de plus important (par exemple pour le multi-supports la reacuteeacuteditorialisation manipulation)

Le langage de reacutefeacuterence du web qui a su simposer par sa simpliciteacute deacutecriture possegravede HTML

eacutegalement des inconveacutenients qui ont motiveacute les recherches du sur le W3C XML

Exemple Ambiguiumlteacute en SGML

Exemple

Fondamental

Compleacutement Voir aussi

Fondamental XML et HTML ne sont pas au mecircme niveau

XML et le Web

Exemple Exemple de limites du HTML

Discussion HTML et XML

10

-

-

- HTML est un langage les balises sont deacutefinies il est Jeu de balises restreint a prioriimpossible de deacutefinir ses propres balises et de creacuteer un vocabulaire propre agrave un domaine speacutecifique Ce manque d le rend mal approprieacute pour lindexation de documents extensibiliteacutevarieacutes le multimeacutedia

Les balises HTML fournissent des informations Meacutelange des descripteurs physiques et logiquesrelatives agrave la typographie ou la mise en page dun texte ( ) mais eacutegalement CENTER B

relatives agrave son rocircle dans le document ( ) Cette non seacuteparation stricte entre contenu H1 H2

et preacutesentation nuit agrave la publication multi-supports et la reacuteeacuteditorialisation par exemple En HTML les liens sont geacuteneacuteralement des pointeurs directs vers une autre ressource (Liens A

) Cette mise en œuvre limite fortement les possibiliteacutes de reacuteutilisation notamment par le risque de lien casseacute

Documents structureacutes et documents formateacutes (cf p12)

Compleacutement Voir aussi

Langages XML

11

1 Langages standard et langages locaux

On appelle langage (ou format) standard un langage dont le scheacutema est deacutefini par une organisation reconnue et multipartite (W3C ISO OASIS ) pour les besoins geacuteneacuteriques dune large communauteacute en geacuteneacuteral internationale

On appelle standard de fait les langages imposeacutes par une organisation unique mais agrave une telle eacutechelle que leur usage est incontournable Cest typiquement lexemple des formats de la suite bureautique Microsoft Office (doc xls ppt )

On appelle langage (ou format) local - par opposition au format standard - un langage deacutefini par une organisation seule ou une communauteacute restreinte pour ses besoins propres (un service une entreprise voire un reacuteseau dorganisations dans un pays )

Un format est dit ouvert lorsquil est public et que nimporte qui peut lutiliser sans contrainte Il est au contraire fermeacute si son accegraves est proteacutegeacute payant ou soumis agrave dautres contraintes

On parle de format proprieacutetaire pour deacutesigner un format agrave la fois local et fermeacute

2 Langages XML orienteacutes donneacutees

Ils permettent denregistrer et de transporter des donneacutees informatiques structureacutees (comme par exemple des donneacutees geacutereacutees par des bases de donneacutees) selon des formats ouvert (cest agrave dire dont on connaicirct la syntaxe) et facile agrave manipuler (les structures arborescentes XML eacutetant plus riches que des fichiers agrave plat par exemple)

Les langages XML orienteacutees donneacutees servent surtout agrave leacutechange ou la des donneacutees des seacuterialisation

programmes informatiques

Langages XMLII

Deacutefinition Format standard

Remarque Standard de fait

Deacutefinition Format local

Deacutefinition Format ouvert ou fermeacute

Remarque Format proprieacutetaire

Deacutefinition

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 9: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Discussion HTML et XML

9

--

--

En SGML une balise ouvrante nest pas obligatoirement fermeacutee par une balise fermante (sa fermeture pouvant rester implicite) tandis quen XML toute balise ouvrante est obligatoirement fermeacutee

Le code SGML est ambigu car on ne sait pas sil faut linterpreacuteter comme ltAgtltBgtltBgt

oultAgtltAgtltBgtltBgt

ltAgtltBgtltBgtltAgt

En XML seule lune des deux formulations non ambigueumls est autoriseacutee

HTML est un langage SGMLDocBook est agrave lorigine un langage SGML porteacute depuis en XML

XML heacuterite de SGML en contraignant la syntaxe tout document XML est donc un document SGML

Documents structureacutes et documents formateacutes (cf p12)

7 Discussion HTML et XML

XML est un meacuteta-langage et HTML est un langage XML et HTML ne sont donc pas directement comparables En particulier XHTML est un langage XML cest donc du XML

Une question pertinente est en revanche de se demander pourquoi HTML ou XHTML ne suffisent pas pour les usages Web et donc pourquoi XML est utile en dehors de son instanciation via XHTML

La reacuteponse est que si HTML et XHTML fournissent une solution de publication efficiente a fortioriils noffrent pas le mecircme potentiel en terme d XML possegravede donc un ingeacutenierie documentairepotentiel de plus important (par exemple pour le multi-supports la reacuteeacuteditorialisation manipulation)

Le langage de reacutefeacuterence du web qui a su simposer par sa simpliciteacute deacutecriture possegravede HTML

eacutegalement des inconveacutenients qui ont motiveacute les recherches du sur le W3C XML

Exemple Ambiguiumlteacute en SGML

Exemple

Fondamental

Compleacutement Voir aussi

Fondamental XML et HTML ne sont pas au mecircme niveau

XML et le Web

Exemple Exemple de limites du HTML

Discussion HTML et XML

10

-

-

- HTML est un langage les balises sont deacutefinies il est Jeu de balises restreint a prioriimpossible de deacutefinir ses propres balises et de creacuteer un vocabulaire propre agrave un domaine speacutecifique Ce manque d le rend mal approprieacute pour lindexation de documents extensibiliteacutevarieacutes le multimeacutedia

Les balises HTML fournissent des informations Meacutelange des descripteurs physiques et logiquesrelatives agrave la typographie ou la mise en page dun texte ( ) mais eacutegalement CENTER B

relatives agrave son rocircle dans le document ( ) Cette non seacuteparation stricte entre contenu H1 H2

et preacutesentation nuit agrave la publication multi-supports et la reacuteeacuteditorialisation par exemple En HTML les liens sont geacuteneacuteralement des pointeurs directs vers une autre ressource (Liens A

) Cette mise en œuvre limite fortement les possibiliteacutes de reacuteutilisation notamment par le risque de lien casseacute

Documents structureacutes et documents formateacutes (cf p12)

Compleacutement Voir aussi

Langages XML

11

1 Langages standard et langages locaux

On appelle langage (ou format) standard un langage dont le scheacutema est deacutefini par une organisation reconnue et multipartite (W3C ISO OASIS ) pour les besoins geacuteneacuteriques dune large communauteacute en geacuteneacuteral internationale

On appelle standard de fait les langages imposeacutes par une organisation unique mais agrave une telle eacutechelle que leur usage est incontournable Cest typiquement lexemple des formats de la suite bureautique Microsoft Office (doc xls ppt )

On appelle langage (ou format) local - par opposition au format standard - un langage deacutefini par une organisation seule ou une communauteacute restreinte pour ses besoins propres (un service une entreprise voire un reacuteseau dorganisations dans un pays )

Un format est dit ouvert lorsquil est public et que nimporte qui peut lutiliser sans contrainte Il est au contraire fermeacute si son accegraves est proteacutegeacute payant ou soumis agrave dautres contraintes

On parle de format proprieacutetaire pour deacutesigner un format agrave la fois local et fermeacute

2 Langages XML orienteacutes donneacutees

Ils permettent denregistrer et de transporter des donneacutees informatiques structureacutees (comme par exemple des donneacutees geacutereacutees par des bases de donneacutees) selon des formats ouvert (cest agrave dire dont on connaicirct la syntaxe) et facile agrave manipuler (les structures arborescentes XML eacutetant plus riches que des fichiers agrave plat par exemple)

Les langages XML orienteacutees donneacutees servent surtout agrave leacutechange ou la des donneacutees des seacuterialisation

programmes informatiques

Langages XMLII

Deacutefinition Format standard

Remarque Standard de fait

Deacutefinition Format local

Deacutefinition Format ouvert ou fermeacute

Remarque Format proprieacutetaire

Deacutefinition

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 10: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Discussion HTML et XML

10

-

-

- HTML est un langage les balises sont deacutefinies il est Jeu de balises restreint a prioriimpossible de deacutefinir ses propres balises et de creacuteer un vocabulaire propre agrave un domaine speacutecifique Ce manque d le rend mal approprieacute pour lindexation de documents extensibiliteacutevarieacutes le multimeacutedia

Les balises HTML fournissent des informations Meacutelange des descripteurs physiques et logiquesrelatives agrave la typographie ou la mise en page dun texte ( ) mais eacutegalement CENTER B

relatives agrave son rocircle dans le document ( ) Cette non seacuteparation stricte entre contenu H1 H2

et preacutesentation nuit agrave la publication multi-supports et la reacuteeacuteditorialisation par exemple En HTML les liens sont geacuteneacuteralement des pointeurs directs vers une autre ressource (Liens A

) Cette mise en œuvre limite fortement les possibiliteacutes de reacuteutilisation notamment par le risque de lien casseacute

Documents structureacutes et documents formateacutes (cf p12)

Compleacutement Voir aussi

Langages XML

11

1 Langages standard et langages locaux

On appelle langage (ou format) standard un langage dont le scheacutema est deacutefini par une organisation reconnue et multipartite (W3C ISO OASIS ) pour les besoins geacuteneacuteriques dune large communauteacute en geacuteneacuteral internationale

On appelle standard de fait les langages imposeacutes par une organisation unique mais agrave une telle eacutechelle que leur usage est incontournable Cest typiquement lexemple des formats de la suite bureautique Microsoft Office (doc xls ppt )

On appelle langage (ou format) local - par opposition au format standard - un langage deacutefini par une organisation seule ou une communauteacute restreinte pour ses besoins propres (un service une entreprise voire un reacuteseau dorganisations dans un pays )

Un format est dit ouvert lorsquil est public et que nimporte qui peut lutiliser sans contrainte Il est au contraire fermeacute si son accegraves est proteacutegeacute payant ou soumis agrave dautres contraintes

On parle de format proprieacutetaire pour deacutesigner un format agrave la fois local et fermeacute

2 Langages XML orienteacutes donneacutees

Ils permettent denregistrer et de transporter des donneacutees informatiques structureacutees (comme par exemple des donneacutees geacutereacutees par des bases de donneacutees) selon des formats ouvert (cest agrave dire dont on connaicirct la syntaxe) et facile agrave manipuler (les structures arborescentes XML eacutetant plus riches que des fichiers agrave plat par exemple)

Les langages XML orienteacutees donneacutees servent surtout agrave leacutechange ou la des donneacutees des seacuterialisation

programmes informatiques

Langages XMLII

Deacutefinition Format standard

Remarque Standard de fait

Deacutefinition Format local

Deacutefinition Format ouvert ou fermeacute

Remarque Format proprieacutetaire

Deacutefinition

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 11: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Langages XML

11

1 Langages standard et langages locaux

On appelle langage (ou format) standard un langage dont le scheacutema est deacutefini par une organisation reconnue et multipartite (W3C ISO OASIS ) pour les besoins geacuteneacuteriques dune large communauteacute en geacuteneacuteral internationale

On appelle standard de fait les langages imposeacutes par une organisation unique mais agrave une telle eacutechelle que leur usage est incontournable Cest typiquement lexemple des formats de la suite bureautique Microsoft Office (doc xls ppt )

On appelle langage (ou format) local - par opposition au format standard - un langage deacutefini par une organisation seule ou une communauteacute restreinte pour ses besoins propres (un service une entreprise voire un reacuteseau dorganisations dans un pays )

Un format est dit ouvert lorsquil est public et que nimporte qui peut lutiliser sans contrainte Il est au contraire fermeacute si son accegraves est proteacutegeacute payant ou soumis agrave dautres contraintes

On parle de format proprieacutetaire pour deacutesigner un format agrave la fois local et fermeacute

2 Langages XML orienteacutes donneacutees

Ils permettent denregistrer et de transporter des donneacutees informatiques structureacutees (comme par exemple des donneacutees geacutereacutees par des bases de donneacutees) selon des formats ouvert (cest agrave dire dont on connaicirct la syntaxe) et facile agrave manipuler (les structures arborescentes XML eacutetant plus riches que des fichiers agrave plat par exemple)

Les langages XML orienteacutees donneacutees servent surtout agrave leacutechange ou la des donneacutees des seacuterialisation

programmes informatiques

Langages XMLII

Deacutefinition Format standard

Remarque Standard de fait

Deacutefinition Format local

Deacutefinition Format ouvert ou fermeacute

Remarque Format proprieacutetaire

Deacutefinition

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 12: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Documents structureacutes et documents formateacutes

12

------

Lutilisation dXML est en fait ici assez accessoire dautres formalismes sy substituent sans difficulteacute souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique CSV JSON (voir par exemple httpwwwxulfrajax-format-json

pour une comparaison JSON XML)html

XML est en geacuteneacuteral plus verbeux que ses alternatives (il contient plus de caractegraveres) cest pourquoi il est plus explicite pour un humain (ce qui nest pas toujours utile) et moins performant informatiquement (ce qui nest pas toujours un problegraveme)

MathML ChemML ATOM RSSDublin CoreRDF OWLSVG

XML est utiliseacute pour de tregraves nombreux langages orienteacutes donneacutees locaux en fait chaque fois quun format XML est deacutefini pour les besoins speacutecifique dun programme

12    53    194

Le formalisme XML est eacutegalement utiliseacute pour deacutefinir des langages de programmation agrave linstar du C ou du Java Les langages de programmation eacutecrits en XML sont geacuteneacuteralement agrave vocation deacuteclarative et adressent le plus souvent des traitements eux mecircmes lieacutes agrave XML

XSL-XSLT est un exemple de langage de programmation eacutecrit en XML On peut eacutegalement citer par exemple le langage de script ANT ( ) ou XUL pour la reacutealisation dIHM (httpantapacheorg http

)wwwxulfr

3 Documents structureacutes et documents formateacutes

On appelle document formateacute un document dont le fichier informatique source deacutecrit la faccedilon de le mettre en forme Cest la faccedilon la plus courante de traiter avec les documents informatiques telle quelle est mise en œuvre dans les traitements de texte ou sur le Web avec HTML

Remarque

Remarque Format verbeux

Exemple Formats XML orienteacutes donneacutees standards

Exemple Formats XML orienteacutes donneacutees locaux

Compleacutement Langages XML de programmation

Deacutefinition Document formateacute

ltmyVectorgt   5ltxgt ltxgt   19ltygt ltygtltmyVectorgt

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 13: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Documents structureacutes et documents formateacutes

13

Un document formateacute neacutecessite un logiciel capable den interpreacuteter le format pour permettre de le lire

XML est un excellent candidat agrave la de documents formateacutesseacuterialisation

123    = = = =

12ptgtltstylegt4    = = = =

=16pt fofont-weight boldgtltstylegt5    = = =

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt6    = = = =

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegt

789  

10    = As We May Think11    = = By Vannevar Bush12    = As Director of the Office of Scientific Research and Development Dr Vannevar

Bush ltpgt13    = This has not been a scientists war 14    = 115    = Of what lasting benefit has been mans use of science 16    = 217    = A record if it is to be useful to science 18  1920

Visualisation dans OpenOfficeorg Writer de lextrait de larticle As We May Think

On appelle document structureacute un document dont la structure logique est deacutecrite plutocirct que la mise en forme physique ( p7)Structured documents

Exemple Document formateacute (format OpenDocument extrait simplifieacute )

Deacutefinition Notion de documents structureacutes

ltdocument-contentgtltautomatic-stylesgt   = = = =ltstyle name P1 family paragraphgtlttext-properties font-name Times New Roman fofont-size12ptgtltstylegt   = = = =ltstyle name P2 family paragraphgtlttext-properties font-name Times New Roman fofont-size

=16pt fofont-weight boldgtltstylegt   = = = ltstyle name P3 family paragraphgtltparagraph-properties fotext-align centergtlttext-properties

= = = font-name Times New Roman fofont-size 18pt fofont-weight bold gtltstylegt   = = = =ltstyle name P4 family paragraphgtlttext-properties font-name Times New Roman fofont-size

= = = =12pt fofont-style italicgtltstylegtltstyle name T1 family textgtlttext-properties font-nameVerdanagtltstylegtltautomatic-stylesgtltbodygt lttextgt   = As We May Thinkltp style-name P2gt ltpgt   = = By Vannevar Bushltp style-name P1gtltspan style-name T1gt ltspangtltpgt   = As Director of the Office of Scientific Research and Development Dr Vannevar ltp style-name P4gtBush ltpgt   = This has not been a scientists war ltp style-name P1gt ltpgt   = 1ltp style-name P3gt ltpgt   = Of what lasting benefit has been mans use of science ltp style-name P1gt ltpgt   = 2ltp style-name P3gt ltpgt   = A record if it is to be useful to science ltp style-name P1gt ltpgt  lttextgtltbodygtltdocument-contentgt

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 14: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Documents structureacutes et documents formateacutes

14

---

Apregraves SGML qui avait eacuteteacute inventeacute pour cela XML est aujourdhui le candidat quasi-unique pour la reacutealisation de documents structureacutes

1 =2   3      As we may think4      Vannevar Bush5   6    As Director of the Office of Scientific Research and Development Dr Vannevar Bush

ltparagtltepigraphgt7    This has not been a scientists war 8   9      Of what lasting benefit has been mans use of science

10   11   12      A record if it is to be useful to science 13   14

Un document structureacute nest pas destineacute agrave ecirctre directement utiliseacute pour la lecture humaine il doit ecirctre dabord transformeacute dans un document formateacute pour ecirctre utiliseacute (visualiseacute imprimeacute )

Processus de transformation dun document structureacute en document formateacute

La technologie XML peut en fait ecirctre utiliseacutee tout au long de la chaicircne

Langage XML orienteacute document structureacute en amont (DocBook DITA TEI langage local )Langage XML de programmation pour la transformation (XSL-XSLT)Langage XML orienteacute document formateacute pour laval (OpenDocument XHTML )

Exemple Document structureacute (format DocBook leacutegegraverement simplifieacutee)

Deacutefinition Transformation des documents structureacutes

Remarque Chaicircne XML complegravete

=ltarticle xmlns httpdocbookorgnsdocbookgt  ltinfogt     As we may thinklttitlegt lttitlegt     Vannevar Bushltauthorgtltpersonnamegt ltpersonnamegtltauthorgt  ltinfogt   As Director of the Office of Scientific Research and Development Dr Vannevar Bush ltepigraphgtltparagtltparagtltepigraphgt   This has not been a scientists war ltparagt ltparagt  ltsect1gt     Of what lasting benefit has been mans use of science ltparagt ltparagt  ltsect1gt  ltsect1gt     A record if it is to be useful to science ltparagt ltparagt  ltsect1gtltarticlegt

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 15: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Langages XML orienteacutes documents

15

----

------

La structuration logique (cf p36)

Exemple de structuration logique (cf p37)

Architecture des chaicircnes eacuteditoriales XML (cf p)

Un langage pour publier les documents XML (cf p40)

Deacutefinition de XSL-XSLT (cf p40)

Technologie de la GED Structure logique et structure physique (pp58-61)

4 Langages XML orienteacutes documents

Ils permettent de repreacutesenter informatiquement des documents numeacuteriques Les formats de documents faisant appel agrave des repreacutesentations fortement arborescentes XML est un candidat ideacuteal pour cet usage En fait SGML lancecirctre de XML a eacuteteacute inventeacute pour linformatique documentaire Aujourdhui la tregraves grande majoriteacute des formats de repreacutesentation de document sont en XML

Ils deacutefinissent des formats de mise en forme de document (structure physique) en geacuteneacuteral pour un support donneacute

XHTMLXSL-FOSMILOpenDocumentOOXML

Ils deacutefinissent des formats de structuration de document (structure logique) en geacuteneacuteral pour un meacutetier donneacute plus ou moins preacutecis selon la geacuteneacuteraliteacute du langage

DocBookTEIDITA

Compleacutement Voir aussi

Compleacutement Bibliographie

Deacutefinition

Deacutefinition Langages XML orienteacute documents formateacutes

Exemple Langages XML orienteacutes documents formateacutes

Deacutefinition Langages XML orienteacutes documents structureacutes

Exemple Langages XML orienteacutes documents structureacutes

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 16: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Caracteacuteristiques rechercheacutees pour un format XML

16

1 2 =3    Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit amet4 libero ac mauris egestas venenatis nec vitae sapien5    Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittis6 ac cursus nec placerat quis velit7

Documents structureacutes et documents formateacutes (cf p12)

5 Caracteacuteristiques rechercheacutees pour un format XML

Les regravegles syntaxiques strictes dXML rendent son interpreacutetation informatique univoque

Un format XML a pour objectif decirctre lisible par un ecirctre humain afin de plus facilement en appreacutehender le langage

Un format XML est passif il deacutepend de programmes informatiques qui le transforment

6 Outillage XML

Un eacutediteur de texte suffit pour faire du XML

Document XML creacuteeacute avec un simple eacutediteur de texte (gedit)

Exemple Format local orienteacute document structureacute

Compleacutement Voir aussi

Fondamental Non ambiguiumlteacute

Fondamental Lisibiliteacute

Fondamental Passiviteacute

Fondamental

ltxml version=10 encoding=UTF-8gt =ltdocument type Lorem ipsumgt

   Lorem ipsum dolor sit amet consectetur adipiscing elit Pellentesque sit ametltparagraphegtlibero ac mauris egestas venenatis nec vitae sapienltparagraphegt   Donec a lectus sed augue pellentesque accumsan eu ac justo Etiam est urna sagittisltparagraphegtac cursus nec placerat quis velitltparagraphegtltdocumentgt

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 17: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Outillage XML

17

--

-

----

----

---

Un (ou parseur) XML est un programme capable danalyser un document XML afin de parser

veacuterifier quil est bien formeacuteeacuteventuellement veacuterifier sa validiteacute par rapport agrave un scheacutema (DTD W3C Schema RelaxNG)eacuteventuellement en fournir une repreacutesentation meacutemoire permettant son traitement (SAX DOM)

Par exemple Xerces est un parser Java ( ) Tous les langages de httpxercesapacheorgxerces2-jprogrammation proposent aujourdhui des parsers XML

Un eacutediteur validant est un eacutediteur speacutecialiseacute dans leacutecriture du XML (on parle simplement deacutediteur XML) permettant de

veacuterifier dynamiquement que le fichier est bien formeacutede charger des scheacutemas pour veacuterifier dynamiquement la validiteacutede proposer des fonctions dauto-compleacutetion

Les eacutediteurs speacutecialiseacutes orienteacutes deacuteveloppeurs sont des permettant leacutecriture IDE

des scheacutemasdes transformationsdes fichiers XML de test

Ils sont en geacuteneacuteral peu adapteacutes agrave la production des documents XML par les utilisateurs finaux (reacutedacteurs)

On peut citer par exemple

oXygen ( ) un produit commercial complet accessible agrave moins de httpwwwoxygenxmlcom100euro pour les usages non commerciaux multi-plateformes (Linux Mac Windows) XML Spy disponible uniquement sous Windows

Parseurs

Eacutediteur validant

Eacutediteurs XML orienteacutes deacuteveloppeurs

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 18: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Outillage XML

18

-----

Exemple de fichier XML dans leacutediteur oXygen

Les eacutediteurs XML orienteacutes reacutedacteurs prennent en geacuteneacuteral en entreacutee un scheacutema des fichiers permettant de configurer leacutediteur des programmes de transformation et offre un environnement deacutedieacute agrave leacutecriture et la publication de document XML

On peut citer

Jaxe libre et multi-plateformes ( )httpjaxesourceforgenetfrAdobe Framemaker sous Windows ( )httpwwwadobecomproductsframemakerhtmlArbortext sous Windows ( )httpwwwptccomproductsarbortextXMetal sous Windows ( )httpnajustsystemscomcontent-xmetalScenari chaicircne eacuteditoriale complegravete libre et multi-plateformes ( )httpscenari-platformorg

Deacutefinition des chaicircnes eacuteditoriales XML (cf p38)

Deacutefinition de Scenari (cf p39)

Eacutediteurs XML orienteacutes reacutedacteurs

Compleacutement Voir aussi

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 19: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Syntaxe de base XML

19

-

-

1 Document bien formeacute

Un document est dit bien formeacute lorsquil respecte les regravegles syntaxiques du XML

ne pose pas de seacutemantique agrave priori mais uniquement des regravegles syntaxiquesXML

Les regravegles syntaxiques agrave respecter sont

Il nexiste quun seul eacuteleacutement pegravere par document cet eacuteleacutement contenant tous les autres Il est eacutegalement appeleacute racineTout eacuteleacutement fils est inclus complegravetement dans son pegravere (pas deacuteleacutements croiseacutes)

XML ne deacutefinit pas le comportement ni la maniegravere dont doit ecirctre traiteacute un document mais uniquement un format

Balise (cf p19)

2 Balise

Les balises sont les composants fondamentaux permettant leacutecriture de documents XML

Elles se distinguent du contenu en utilisant les caractegraveres et Elles nont pas de preacutesentation lt gt

ou de signification deacutefinie par le langage mais elles auront un sens pour les applications etou le lecteur

Syntaxe de base XMLIII

Deacutefinition

Fondamental

Syntaxe

Attention

Compleacutement

Deacutefinition Balise

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 20: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Eacuteleacutement

20

---

---

Il existe trois types de balises

balise douverture ltnom_balisegtbalise de fermeture ltnom_balisegtbalise vide ltnom_balisegt

1 12 rue de Paris

3 Eacuteleacutement

Un eacuteleacutement est un extrait dun fichier XML comprenant XML

une balise ouvranteune balise fermantele contenu compris entre les deux balises qui peut ecirctre du etou dautres ou texte eacuteleacutements

(eacuteleacutement vide)rien

Le nom dun eacuteleacutement peut ecirctre composeacute de tout caractegravere alphanumeacuterique plus et De plus _ -

ils doivent commencer par un caractegravere alphabeacutetique ou et ceux commenccedilant par la chaicircne _ xml

sont reacuteserveacutes (que ce soit en minuscules majuscules ou un meacutelange des deux)

diffeacuterencie les majuscules des minuscules il faut donc respecter la casseXML

Deux eacuteleacutements avoir un contenu croiseacute ne peuvent pas ltnom1gt ltnom2gt ltnom1gt

est interdit ltnom2gt

On appelle eacuteleacutement vide un eacuteleacutement qui ne comporte rien entre sa balise ouvrante et sa balise fermante

Les syntaxes et sont strictement eacutequivalentesltelementgtltelementgt ltelementgt

Syntaxe

Exemple Exemple de balise XML

Deacutefinition Eacuteleacutement

Attention Case-sensitive

Attention

Deacutefinition Eacuteleacutement vide

Syntaxe Eacuteleacutement vide

12 rue de Parisltadressegt ltadressegt

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 21: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Attribut

21

-

-

--

--

--

4 Attribut

Un attribut est une information suppleacutementaire attacheacutee agrave un eacuteleacutement on parle de meacutetadonneacutee

Les attributs dun eacuteleacutement sont formeacutes dune suite daffectations seacutepareacutees par des espaces attribut1=valeur attribut2=valeur

Ils sont ajouteacutes agrave la balise ouvrante ou agrave une balise vide (jamais agrave une balise fermante)

ltnom_element [attributs]gt

ltnom_element [attributs]gt

La valeur est indiqueacutee entre apostrophes ou guillemets (au choix mais pas de meacutelange des deux)

ouattribut1=valeur

attribut1=valeur

Utilisez des apostrophes si la valeur de lattribut inclut des guillemets et vice et versa

Un eacuteleacutement ne peut pas contenir deux attributs ayant le mecircme nom

Le nom dun attribut est soumis aux mecircmes contraintes que les noms deacuteleacutements

La valeur de lattribut quant agrave elle peut contenir tout caractegravere agrave lexception de et ^ amp

Un attribut peut toujours ecirctre repreacutesenteacute alternativement par un eacuteleacutement fils de leacuteleacutement quil caracteacuterise avec une signification du mecircme ordre

etltelement attribut=xgt

sont similairesltelementgtltattributgtxltattributgtltelementgt

Il est donc tout agrave fait possible de faire du XML sans utiliser dattribut

On utilise geacuteneacuteralement les attributs

Pour diffeacuterencier le contenu destineacute agrave ecirctre afficheacute dans le document lisible des meacutetadonneacutees qui ne le seront pas (version date de creacuteation )Pour simplifier leacutecriture du document

Deacutefinition

Syntaxe

Meacutethode

Attention

Syntaxe

Remarque Eacutequivalence attribut eacuteleacutement

Meacutethode Usage des attributs

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 22: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Structure geacuteneacuterale dun fichier XML

22

-

-

- Pour ajouter des identifiants et des reacutefeacuterences

5 Structure geacuteneacuterale dun fichier XML

Un document est constitueacute de XML

Un prologueIl est facultatif et comprend une deacuteclaration indiquant la version du langage XML XML

utiliseacute et le codage des caractegraveres dans le document Chacune de ces informations est optionnelle mais leur ordre est obligatoireltxml version=numeacutero de version encoding=encodage des caractegraveres

gt

Un contenant au moins un eacuteleacutement (leacuteleacutement racine)arbre deacuteleacutements

1

Indique que le document est codeacute en utilisant un langage de version 10 avec des caractegraveres XML

codeacutes selon la norme UTF-8

12    moi3

6 Exemple de fichier XML - Le courriel

Date Mar 28 Oct 2003 140101 +0100 (CET)

De Marcel ltmarcelicifrgt

A Robert ltrobertlabasfrgt

Sujet Hirondelle

Salut

Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de coco

A tregraves bientocirct

Marcel

1

Syntaxe

Exemple Prologue

Exemple Arbre deacuteleacutements

Exemple Un courriel imprimeacute

Repreacutesentation possible de ce message en XML

ltxml version=10 encoding=UTF-8gt

ltlettregt   moiltexpediteurgt ltexpediteurgtltlettregt

ltxml version=10 encoding=ISO-8859-1gt

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 23: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

La syntaxe XML en reacutesumeacute

23

23  4    = 281020035    = = 1401016    = Marcel7    = Robert8    Hirondelle9  

10  11    Salut12    Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de

coco ltparagraphegt13    A tregraves bientocirct14    Marcel15  16

Repreacutesentation dun document XML sous forme darbre

7 La syntaxe XML en reacutesumeacute

Les regravegles de syntaxe dXML sont tregraves simples un document XML comporte un en-tecircte permettant de lidentifier en tant que document XML et un eacuteleacutement racine contenant tous les autres eacuteleacutements Un eacuteleacutement est caracteacuteriseacute par une balise ouvrante et une balise fermante et contient dautres eacuteleacutements etou du contenu

Compleacutement Arbre deacuteleacutements du document email correspondant

ltemailgt ltentetegt   = 28102003ltdate type JJMMAAAAgt ltdategt   = = 140101ltheure type 24 local (GMT+01 00)gt ltheuregt   = Marcelltexpediteurgtltadresse mail marcelicifrgt ltadressegtltexpediteurgt   = Robertltrecepteurgtltadresse mail robertlabasfrgt ltadressegtltrecepteurgt   Hirondelleltsujetgt ltsujetgt ltentetegt ltcorpsgt   Salutltsalutationgt ltsalutationgt   Pourrais-tu mindiquer quelle est la vitesse de vol dune hirondelle transportant une noix de ltparagraphegtcoco ltparagraphegt   A tregraves bientocirctltpolitessegt ltpolitessegt   Marcelltsignaturegt ltsignaturegt ltcorpsgtltemailgt

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 24: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

La syntaxe XML en reacutesumeacute

24

Aspects principaux de la syntaxe XML

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 25: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Syntaxe avanceacutee XML

25

-

-

-

1 Commentaires

Un fichier XML peut contenir des commentaires ils peuvent ecirctre inseacutereacutes nimporte ougrave dans le document avec la syntaxe

lt-- Ceci est un commentaire --gt

12  Ceci est un contenu3  4

2 Namespace

Un (ou espace de noms en franccedilais) est une meacutecanique qui permet dassurer luniciteacute des namespacenoms des eacuteleacutements utiliseacutes au sein des fichiers XML dans lobjectif de pouvoir laquo meacutelanger raquo diffeacuterents scheacutemas

Soit un extrait de scheacutema S1 qui deacutefinit un eacuteleacutement de syntaxe en informatique comme contenant du code element syntaxe code Soit un extrait de scheacutema S2 qui deacutefinit un eacuteleacutement de syntaxe en matheacutematique comme contenant une eacutequation element syntaxe equation

Si je souhaite dans un scheacutema S3 reacuteutiliser les eacuteleacutements syntaxe issus de S1 et S2 je rencontre un conflit de noms en effet deux eacuteleacutements portant le mecircme nom laquo syntaxe raquo deacutefinissent en fait des eacuteleacutements diffeacuterents

Le va me permettre de diffeacuterencier ces deux eacuteleacutements en associant un nom unique aux namespacescheacutemas S1 et S2 par exemple une adresse web

Si jassocie au premier scheacutema et au second jobtiens alors deux noms wwwutcfrS1 wwwutcfrS2de balises diffeacuterents

wwwutcfrS1syntaxe

Syntaxe avanceacutee XML IV

Syntaxe

Exemple

Principe

ltdocumentgt Ceci est un contenu lt-- Ceci est un commentaire --gtltdocumentgt

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 26: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Syntaxe XML et espaces

26

--

--

-

1 2 3

4

wwwutcfrS2syntaxe

Cette eacutecriture eacutetant quelque peu fastidieuse il est eacutegalement possible dassocier un preacutefixe au namespace La correspondance entre le namespace et le preacutefixe est deacuteclareacutee dans le fichier XML ce qui permet agrave un programme informatique de remplacer les preacutefixes par les namespaces

Finalement on obtient

Preacutefixe s1 associeacute au namespace wwwutcfrS1 et eacutecriture XML s1syntaxePreacutefixe s2 associeacute au namespace wwwutcfrS2 et eacutecriture XML s2syntaxe

Il est possible de deacutefinir un namespace par deacutefaut ce qui permet davoir un pour chaque namespacebalise sans avoir agrave utiliser de preacutefixe

1 2 = 3 = 4 5 = 6

Un ( ) est le couple constitueacute par un (nom deacuteveloppeacute expanded name nom despace de nommage) et par un ( )namespace name nom local local name

httpwwww3orgTR2004REC-xml-names11-20040204Traduction httpwwwyoyodesignorgdocw3cxml-names11

3 Syntaxe XML et espaces

Soit les trois syntaxes XML suivantes (les espaces sont symboliseacutes par des ~ et les retours chariot par des sect)

ltagtbonjour~aurevoirltagtltbgt

ltagtbonjour~~~~aurevoirltagtltbgt

ltagtbonjoursect

aurevoirltagt~~~~ltbgt

~ltagtbonjour aurevoirltagtsect

ltbgt

Ces trois syntaxes sont logiquement eacutequivalentes

Preacutefixe

Remarque Namespace par deacutefaut

Syntaxe

Deacutefinition Nom deacuteveloppeacute

Compleacutement

ltelementRacine = xmlnsprefixe1 namespace1 = xmlnsprefixe2 namespace2 xmlnsprefixeN=namespaceN = xmlns namespaceDesEacuteleacutementsNonPreacutefixeacutesgt

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 27: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Encodage des caractegraveres

27

----

--

-

-

Donc

Agrave linteacuterieur dun eacuteleacutement qui ne contient que du texte 1 espace = N espaces = 1 retour chariot = N retours chariotEntre deux eacuteleacutements 1 espace = N espaces = 1 retour chariot = N retours chariot = Rien (absence de caractegravere)

Dans la pratique seuls les cas de ont besoin que les espaces soient preacuteserveacutes Les deux mixed contentexemples ci-apregraves ne sont pas eacutequivalents

ltpgtCeci est ltigtimportantltigtltpgt

ltpgtCeci estltigtimportantltigtltpgt

Mais sans scheacutema il est impossible de deacutecider a priori si le contenu dun eacuteleacutement qui contient des eacuteleacutements fils et des espaces est ou si ces espaces servent juste agrave la mise en forme du XMLmixed

Par deacutefaut un programme doit consideacuterer que tous les espaces sont signifiants et doivent ecirctre conserveacutes lors des traitements

XML considegravere comme eacutequivalents les caractegraveres de seacuteparation

Espace Tabulation tRetour chariot rFin de ligne n

4 Encodage des caractegraveres

Lencodage des caractegraveres deacutefinit leacutequivalence entre des caractegraveres et leur valeur numeacuterique en machine

LASCII est lancecirctre et la base de tous les systegravemes dencodage actuels il deacutefinit par exemple que la lettre A agrave la valeur 65

Lencodage universel Unicode UTF-8 est supporteacute par XML et aujourdhui la plupart des outils informatiques associeacutes il est agrave utiliser dans le cas geacuteneacuteral

Espaces conserveacutes

Remarque Eacutequivalence entre seacuteparateurs

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 28: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Introduction aux scheacutemas XML

28

-

-

-

-

--

1 Notion de document valide

Un scheacutema est une description de la structure que doit respecter un document lui faisant reacutefeacuterence cest agrave dire quil eacutetablit la liste des eacuteleacutements XML autoriseacutes (avec leurs attributs) ainsi que lagencement possible de ces eacuteleacutements

On parle aussi de au sens ougrave le scheacutema deacutefinit lenchaicircnement autoriseacute des balises et grammairevient en (qui elle est indeacutependante dun scheacutema particulier)compleacutement de la syntaxe XML

Un document bien formeacute est dit valide pour un scheacutema donneacute sil respecte les regravegles XML

structurelles imposeacutees par ce scheacutema

Ce controcircle de la structure permet

De sassurer lhomogeacuteneacuteiteacute structurelle des documents de mecircme typeLe traitement automatique dun ensemble de documents de mecircme type (mise en forme stockage extraction dinformations)La creacuteation de formats standard et leur respect

Il existe plusieurs langages de deacutefinition scheacutema mais les trois principaux sont

Document Type Deacutefinition (W3C) Un langage heacuteriteacute de SGML qui fait partie du standard XMLW3C XML Schema (W3C) Une alternative aux DTD destineacute agrave moderniser et compleacuteter ce langage historiqueRelax NG (OASIS ISO) Une autre alternative compromis entre W3C XML Schema et DTD

Introduction aux scheacutemas XML V

Deacutefinition Scheacutema

Deacutefinition Document valide

Exemple Exemples de langages de scheacutema

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 29: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

W3C XML Schema

29

---

-

-

2 Document Type Definition

Le formalisme de deacutefinition de scheacutema DTD est le premier qui a eacuteteacute introduit degraves la premiegravere version du standard XML Il est en fait inteacutegreacute au standard W3C de XML

Il est directement heacuteriteacute de la norme SGML

Les DTDs utilisent un langage speacutecifique (non XML) pour deacutefinir les regravegles structurelles Un fichier de DTD peut contenir principalement deux types de deacuteclarations

des deacuteclarations deacuteleacutementsindiquent les eacuteleacutements pouvant ecirctre inclus dans un document et lorganisation du contenu de chaque eacuteleacutement (eacuteleacutements fils ou texte)des deacuteclarations dattributsdeacutefinissent les attributs pouvant ecirctre associeacutes agrave un eacuteleacutement ainsi que leur type

1 ( +)gt2 gt3 ( )gt

1 23 =4   Lorem ipsum dolor sit amet5   Consectetur adipiscing elit6   Sed do eiusmod tempor78

3 W3C XML Schema

Les XML Schema ont eacuteteacute proposeacutes par le W3C pour permettre de deacutepasser les limites des DTD

httpwwww3orgXMLSchema

On notera en particulier

une syntaxe XMLlextension de lexpression des regravegles dorganisation structurelle (heacuteritage reacuteutilisation etc)lajout dun langage de typage des eacuteleacutements (particuliegraverement utile pour les format XML orienteacutes donneacutees)

Exemple Exemple de DTD

Exemple Exemple de document XML valide

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=iso-8859-1gtltDOCTYPE document SYSTEM documentdtdgt

=ltdocument type memogt  Lorem ipsum dolor sit ametltparagraphegt ltparagraphegt  Consectetur adipiscing elitltparagraphegt ltparagraphegt  Sed do eiusmod temporltparagraphegt ltparagraphegtltdocumentgt

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 30: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Regular Language for XML Next Generation

30

---

-

--

-

1 ( +)gt2 gt3 ( )gt

1 2 = 3    =4     5       6          = = 7       8        = =9     

10   11    = =12

4 Regular Language for XML Next Generation

RelaxNG (REgular LAnguage for XML Next Generation) est un langage de scheacutema XML

RelaxNG est une alternative aux DTD et agrave W3C XML Schema qui combine les avantages de ces deux autres langagesRelaxNG est un standard OASIS et une norme ISOCEIDeux syntaxes une syntaxe XML (alternative agrave W3C Schema) et une syntaxe compacte (alternative aux DTD)RelaxNG ne deacutefinit que la structure (comme les DTD) et utilise W3C XML Schema pour le typage des donneacutees

httprelaxngorg

Le standard est porteacute par James Clark depuis ses travaux sur Trex (il est issu de la fusion de Trex et Relax de Murata Makoto)

OpenDocument (format bureautique)DocBook (format documentaire)Atom (syndication)

1 ( +)gt2 gt

Exemple Exemple de DTD

Exemple Exemple de W3C XML Schema correspondant

Compleacutement

Exemple Exemple de scheacutemas publics deacutefinis en Relax NG

Exemple Exemple de DTD

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED ( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt = ltxsschema xmlnsxs httpwwww3org2001XMLSchemagt

   =ltxselement name documentgt    ltxscomplexTypegt      ltxssequencegt         = = ltxselement maxOccurs unbounded ref paragraphegt      ltxssequencegt       = =ltxsattribute name type use requiredgt    ltxscomplexTypegt  ltxselementgt   = =ltxselement name paragraphe type xsstringgt

ltxsschemagt

( +)gtltELEMENT document paragraphe gtltATTLIST document type CDATA REQUIRED

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 31: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Regular Language for XML Next Generation

31

3 ( )gt

1 2 =3   4      =5        =6       7          =8           9         

10         11     12   13

1 start = element document 2   attribute type text 3   element paragraphe text+ 4

1 2 =3   4      =5   6    =7      =8        =9       

10          =11       12     13   14    =15      =16       17     18   19

1 start = document2 document = element document attribute type text paragraphe+ 3 paragraphe = element paragraphe text

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe XML)

Exemple Exemple de scheacutema RelaxNG correspondant (syntaxe compacte)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe XML patterns nommeacutes)

Exemple Autre exemple de scheacutema RelaxNG correspondant (syntaxe compacte patterns nommeacutes)

( )gtltELEMENT paragraphe PCDATA

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltelement name paragraphegt          lttextgt        ltelementgt        ltoneOrMoregt    ltelementgt  ltstartgtltgrammargt

start = element document   attribute type text   element paragraphe text+

ltxml version=10 encoding=UTF-8gt =ltgrammar xmlns httprelaxngorgnsstructure10gt

  ltstartgt     =ltref name documentgt  ltstartgt   =ltdefine name documentgt     =ltelement name documentgt       =ltattribute name typegt      ltoneOrMoregt         =ltref name paragraphegt      ltoneOrMoregt    ltelementgt  ltdefinegt   =ltdefine name paragraphegt     =ltelement name paragraphegt      lttextgt    ltelementgt  ltdefinegtltgrammargt

start = documentdocument = element document attribute type text paragraphe+ paragraphe = element paragraphe text

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 32: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Quelques bonnes questions sur XML

32

Reacutealiseacute agrave partir dune interview de Michaeumll Tartar dans un de LeJournalDuNet en 2001chat

httpwwwjournaldunetcomchatretrans011206_tartarshtml

HTML est un langage de mise en forme XML est beaucoup plus geacuteneacuterique Il permet de deacutefinir des langages alors que HTML deacutefinit un jeu de balises limiteacutees et donc non-extensibles

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir agrave linternaute et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques PDF pour des documents agrave imprimer HTML pour les navigateurs

ne sapplique quagrave la deacutefinition de regravegles graphiques de restitution dune information alors CSS

que XML permet de structurer les informations A ce titre sur le Web ils sont compleacutementaires

Les deux Le deacuteveloppeur devra mettre agrave disposition du webmaster une information XML precircte agrave ecirctre inteacutegreacutee au site Le webmaster seacutelectionnera les morceaux dinformations quil souhaite afficher en fonction du contexte

Cest le mecircme problegraveme avec nimporte quel type dinformation Quelle soit structureacutee en XML ne change rien les bases de donneacutees apportent des services de confidentialiteacute dinteacutegriteacute de monteacutee en charge que napportent pas les simples systegravemes de fichiers

Quelques bonnes questions sur XML VI

Quel est lavantage de ce langage par rapport au HTML

Pourquoi le XML na-t-il pas encore remplaceacute le HTML

Quel est linteacuterecirct de lutilisation dXML sur le web en opposition aux fichiers CSS

Qui est le mieux placeacute pour monter en puissance sur XML Un webmaster ou un deacuteveloppeur

Pour le stockage du contenu XML dans quels cas faut-il sappuyer sur une base de donneacutees et dans quels cas peut-on se satisfaire de conserver les fichier XML agrave proprement dit

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 33: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Quelques bonnes questions sur XML

33

XML permet de deacutefinir un vocabulaire et donc une seacutemantique particuliegravere agrave chaque information Les outils de recherche devront sadapter et proposer des meacutethodes daccegraves aux informations compleacutementaires agrave la recherche plain-texte (microformats Web seacutemantique )

Le Web seacutemantique est un Web sur lequel les informations disponibles ont un sens pour les humains pour les machines XML a alors une place de choix pour sa mise en œuvre dans la mesure ougrave le et

principe du balisage mecircle justement information pour lhomme et pour la machine Mais ce nest pas le seul domaine de deacuteveloppement de XML dont les usages deacutepassent largement le domaine du Web

Cette question est centrale concernant XML Il faut dabord distinguer les langages XML speacutecifiques agrave chaque organisation ceux que chacun se creacuteeacute sur mesure pour ses propres besoins des langages XML standard

Pour les seconds il faut bien comprendre que chaque vocabulaire sera speacutecialiseacute pour une application particuliegravere Par exemple SVG pour modeacuteliser les documents vectoriels en 2D XSL-FO pour modeacuteliser des mises en pages agrave destination de limpression papier etc Donc sous reacuteserve que deux langages distincts ne reacutepondent pas aux mecircmes besoins ces langages resteront compleacutementaires

Concernant les langages maison de chacun il est eacutevident quils se recoupent les uns les autres et participent dune certaine laquo babeacutelisation raquo Et cest une des raisons pour lesquelles les solutions d

sont ameneacutees agrave se deacutevelopper ne serait-ce que pour assurer la transformation des EAI

informations agrave priori identiques Sur le Web des services de traduction assurent deacutejagrave la reacuteconciliation seacutemantique de vocabulaires fregraveres Les technologies comme XSL-XSLT de transformation automatique permettent de concilier une approche speacutecifique agrave chaque contexte et des eacutechanges dans via langages standards ou des traductions de dialecte agrave dialecte

Clairement les outils d prendront une part importante ne serait-ce que pour traiter les EAI

transformations des diffeacuterents langages fregraveres ou encore assurer la gestion transactionnelle des eacutechanges

L propose une infrastructure deacutechange dinformations entre entreprises ce qui comprend le EDI

format des donneacutees (par exemple EDIFACT) et le reacuteseau agrave valeur ajouteacutee qui assure la seacutecuriteacute de la communication entre les entreprises XML ne propose que la structuration Un support transactionnel reste neacutecessaire avec par exemple Internet pour le transport et pour la ebXML

modeacutelisation des processus deacutechange dinformations

Comment les outils de recherche vont-ils sadapter agrave ce langage

Y a-t-il un lien entre XML et le Web seacutemantique

Les jeux de balises extensibles cest bien mais trop de jeux diffeacuterents ne risque-t-il pas de nuire agrave luniversaliteacute que veut veacutehiculer XML

Via quels outils XML va-t-il se geacuteneacuteraliser dans les eacutechanges entre entreprises

Quelles relations y a-t-il entre XML et EDI

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 34: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Quelques bonnes questions sur XML

34

Certainement degraves que linformation doit ecirctre restitueacutee sur plusieurs supports XML est un choix dexcellence

Clairement les sont tregraves reacutepandues et sont ameneacutees agrave le rester pour encore un bon moment DTD

ne serait-ce que par leur adaptation agrave laspect documentaire de XML Concernant laspect donneacutees les limites des DTD sont telles que le passage par les scheacutemas est neacutecessaire Le fait que le W3C ait passeacute les scheacutemas agrave leacutetat de recommandation permettra dassurer un support de cette technique de deacutefinition des vocabulaires XML dans les diffeacuterents produits du marcheacute

Pouvait-on linventer plus tocirct Les premiers problegravemes agrave reacutesoudre eacutetaient surtout lieacutes agrave linteropeacuterabiliteacute des systegravemes XML se place un cran au dessus en permettant de structurer linformation de maniegravere standardiseacutee et surtout accepteacutee par tous

Les documents graphiques binaires tels que les photos ou les films resteront dans des formats binaires bien que certainement deacutecrits par des fichiers XML (MPEG-7 pour la videacuteo par exemple) Quant aux informations ameneacutees agrave ecirctre reacuteutiliseacutees rechercheacutees partageacutees XML est effectivement lareacuteponse

Est-ce que leacutevolution de lInternet mobile va favoriser lutilisation du XML dans le deacuteveloppement dapplications

Est-ce que les XML Schema sont dun usage reacutepandu Peut-on se concentrer dessus et oublier DTD ou lusage de DTD est-il encore trop reacutepandu

Si XML a lair de reacutesoudre autant de problegravemes pourquoi ne la-t-on pas inventeacute plus tocirct

XML est-il LA reacuteponse au stockage structureacute de nimporte quel document

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 35: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Bibliographie

35

--- Michard A XML langage et applications (1997)

SELFHTML Formation XML (2003)

Hoizey N Faisons le point sur les langages de scheacutema XML (2004)

BibliographieVII

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 36: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Compleacutements

36

--

-

-

1 Balises et poigneacutees de calcul

Lingeacutenierie documentaire met agrave profit deux thegraveses compleacutementaires

le contenu est numeacuteriseacute dans sa forme signifiante il est manipulable par la machine mais indeacutependamment du sa signification qui lui reste inaccessible le contenu est enrichi par des balises qui sont connues syntaxiquement et seacutemantiquement par la machine elle sait quoi en faire

Le principe du balisage consiste agrave enrichir un contenu numeacuteriseacute (dans sa forme seacutemiotique) sans lalteacuterer pour lui ajouter des poigneacutees qui vont ecirctre manipulables par lordinateur (logiquement)

Le contenu est donc interpreacutetable par lhomme et la machine chacun via ce qui lui est destineacute

lhumain interpregravete le contenu signifiant numeacuteriseacute la machine interpregravete les balises

XML est une illustration de ce principe puisque lon va coupler une information seacutemiotique (texte image etc) destineacutee agrave linterpreacutetation humaine avec un ensemble de balises qui permettent de deacutecrire formellement une structure documentaire qui sera alors manipulable par le calcul

2 La structuration logique

Un document peut ecirctre deacutecrit comme une collection dobjets comportant des objets de plus haut niveau composeacutes dobjets plus primitifs Les relations entre ces objets repreacutesentent les relations logiques entre les composants du document Par exemple [] un livre est diviseacute en chapitres chaque chapitre en sections sous-sections paragraphes etc Une telle organisation documentaire est appeleacutee repreacutesentation de (traduit document structureacutedepuis la preacuteface de )Structured documents

CompleacutementsVIII

Fondamental

Remarque

Exemple XML

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 37: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Exemple de structuration logique

37

On appelle structuration logique dun contenu une inscription explicitant la structure de ce contenu en fonction de son organisation et des attributs intrinsegraveques qui le caracteacuterisent et non en fonction de proprieacuteteacutes de preacutesentation sur un support

Un document deacutecrit par sa structure logique est appeleacute document abstrait on parle aussi de document structureacute

On appelle structuration physique ou mise en forme dun contenu une inscription deacutecrivant la faccedilon dont ce contenu doit ecirctre preacutesenteacute sur un support donneacute

Un document deacutecrit par sa structure physique est appeleacute document formateacute cest en geacuteneacuteral eacutegalement ce dont on parle quand on parle simplement de document

Il est possible de calculer une ou plusieurs structurations physiques pour une mecircme structuration logique Il est possible de calculer dautant plus de structurations physiques que la structuration logique est indeacutependante de ses supports de preacutesentation

La structuration logique est associeacutee au fond du contenu tandis que la structuration physique est associeacutee agrave sa forme sur un support

Langages XML orienteacute documents (cf p15)

3 Exemple de structuration logique

Soit la structuration logique dun exercice

1 Exercice = Enonce Question Indice Solution 2 avec 3 Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes 4 Question = Donner la valeur des autres angles du triangle5 Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes6 Solution = 90 et 60 degreacutes

Deacutefinition Structuration logique

Deacutefinition Document abstrait

Deacutefinition Structuration physique

Deacutefinition Document formateacute

Remarque

Remarque

Compleacutement Voir aussi

Exemple Un exercice structureacute logiquement

Exercice = Enonce Question Indice Solution avec Enonce = Soit un triangle rectangle disposant dun angle de 30 degreacutes Question = Donner la valeur des autres angles du triangle Indice = La somme des angles dun triangle est eacutegale agrave 180 degreacutes Solution = 90 et 60 degreacutes

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 38: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Deacutefinition des chaicircnes eacuteditoriales XML

38

-

--

-

Il est possible agrave partir de cette repreacutesentation de calculer diffeacuterentes preacutesentations Pour leacutecran on peut geacuteneacuterer une preacutesentation HTML en laissant la solution en hyperlien cliquable Pour le papier on peut geacuteneacuterer une preacutesentation PDF en affichant la solution sur une page seacutepareacutee de leacutenonceacute Pour un usage multimeacutedia on pourra geacuteneacuterer une preacutesentation SMIL avec affichage de leacutenonceacute lecture de la question et affichage de la solution apregraves un temps de pause

Notons que si lon avait choisi une des repreacutesentations physiques plutocirct que la repreacutesentation logique il naurait pas eacuteteacute possible de geacuteneacuterer les autres repreacutesentations

Soit la mise en forme en HTML du mecircme exercice

1 ltHTMLgt 2 ltBODYgt 3 Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt4 ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt5 ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt6 ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt 7 ltBODYgt 8 ltHTMLgt

On voit que dans ce format la structure logique napparaicirct plus explicitement et quil nest plus possible didentifier leacutenonceacute la question et la solution sans comprendre le contenu

Lexemple montre que lon peut calculer la mise en forme agrave partir de la structure logique mais non linverse

4 Deacutefinition des chaicircnes eacuteditoriales XML

Une chaicircne eacuteditoriale XML est un systegraveme informatique permettant la production de documents structureacutes en XML gracircce agrave

un eacutediteur ( ou ce que vous voyez est ce que WYSIWYM What You See Is What You Meanvous voulez dire)la publication (Web papier diaporama etc)polymorpheet la sans recopie (deacutes-agreacutegation reacute-agreacutegation de documents)reacute-eacuteditorialisation

On peut distinguer trois grandes modaliteacutes pour impleacutementer une chaicircne eacuteditoriale

Limpleacutementation laquo sur mesure raquo consiste agrave mobiliser diffeacuterentes briques logicielles et agrave programmer un logiciel speacutecifique pour un besoin particulier Par exemple en couplant un eacutediteur du marcheacute avec un outil de stockage et en reacutealisant des moteurs de publication sous la forme de feuilles XSL-XSLT

Exemple Un exercice mis en forme

Fondamental

Deacutefinition Chaicircne eacuteditoriale XML

Compleacutement Impleacutementations

ltHTMLgt ltBODYgt Soit un triangle rectangle disposant dun angle de 30 degreacutes ltBRgt ltBgt Donner la valeur des autres angles du triangle ltBgt ltBRgt ltA HREF=ex001i01htmlgt Vous avez besoin daide ltAgt ltHRgt ltA HREF=ex001s01htmlgt Veacuterifier votre reacuteponse ltAgt ltBODYgt ltHTMLgt

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 39: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Deacutefinition de Scenari

39

-----

-

- Limpleacutementation laquo modegravele deacutedieacute raquo consiste agrave impleacutementer en dur un modegravele de chaicircne eacuteditoriale pour un besoin assez transversal tel que la publication de livres ou de modules de cours universitairesLimpleacutementation laquo geacuteneacuterique raquo consiste agrave reacutealiser un systegraveme parameacutetrable indeacutependant dun modegravele en particulier et agrave le configurer en fonction des besoins Il sagit alors de ce que lon peut appeler un Systegraveme de Gestion de Chaicircnes Eacuteditoriale par analogie aux Systegravemes de Gestion de Bases de Donneacutee

Le concept de chaicircne eacuteditoriale trouve son origine dans leacutedition et dans la presse il consiste agrave organiser les tacircches de production et de publication en seacuteparant les meacutetiers intervenant dans le processus Une chaicircne eacuteditoriale est donc un processus avant decirctre un outillage qui est neacute dun besoin dindustrialisation Historiquement les deux technologies ayant permis limpleacutementation de chaicircnes eacuteditoriales numeacuteriques sont LaTeX (1982) et SGML (norme ISO depuis 1986) XML (standard W3C depuis 1998) est aujourdhui la technologie de reacutefeacuterence pour la reacutealisation de chaicircnes eacuteditoriales Cest sa maturiteacute qui a permis de sortir ce proceacutedeacute des domaines auxquels il eacutetait confineacute jusque lagrave (documentation technique strateacutegiques dans laviation ou publication scientifique typiquement)

En 1999 lUniversiteacute de Technologie de Compiegravegne reacutealise Scenari premier environnement inteacutegreacute de conception de chaicircnes eacuteditoriales XML proposant un langage deacuteclaratif de modeacutelisation et de pub l i ca t ion de haut n iveau ( Scenari la chaicircne eacuteditoriale libre

)Ingeacutenierie des connaissances et des contenus

5 Deacutefinition de Scenari

Scenari est un logiciel libre permettant de creacuteer des contenus multimeacutedia structureacutes selon une approche innovante celle de la chaicircne eacuteditoriale XML

Il permet de reacutepondre aux enjeux actuels de la creacuteation et la gestion des documents numeacuteriques

reacuteduction des coucircts de production et de maintenancemaicirctrise de la qualiteacute des publicationsmultiplication des canaux de diffusiondiversification des modaliteacutes de communicationpeacuterennisation de linformation

httpscenari-platformorg

Compleacutement Historique de la recherche au deacuteveloppement eacuteconomique

Deacutefinition Scenari

Compleacutement

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 40: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Deacutefinition de XSL-XSLT

40

-

-

-

6 Un langage pour publier les documents XML

XML lorsquil est utiliseacute pour deacutefinir des formats documentaire meacutetier est un format de de linformation et non un format de (de preacutesentation) de cette repreacutesentation publication

information donc un tel fichier XML nest pas utilisable tel que par un lecteur

XML ne peut donc ecirctre utiliseacute pour des langages abstrait que si lon est capable de transformer les documents sources en document publieacutes lisibles gracircce agrave un format de preacutesentation HTML par exemple dans le cas de publication Web ou PDF pour limpression

7 Deacutefinition de XSL-XSLT

XSL-XSLT est une partie du standard W3C XSL qui a trait agrave la transformation des documents XML (lautre partie eacutetant XSL-FO)

XSL-XSLT est un langage de programmation deacuteclaratif eacutecrit en XML (un programme XSL-XSLT est un document XML)

XSL-XSLT est langage de manipulation de document XML (fondeacute sur XPath et sur le modegravele arborescent de repreacutesentation des documents XML)XSl-XSLT est utiliseacute pour transformer un document XML source dans un autre format typiquement HTML mais aussi tout autre format codeacute sur des caractegraveres dont la syntaxe est connueXSL-XSLT est aussi utiliseacute pour faire des changements de scheacutema XML (export dun XML vers un autre XML structureacute diffeacuteremment) par exemple pour eacutechanger des donneacutees selon un standard

On parle souvent (par simplification) de XSL ou de XSLT pour deacutesigner XSL-XSLT et de FO pour deacutesigner XSL-FO

XSL utiliseacute seul deacutesigne donc par convention XSL-XST (et non XSL-FO)

Deacutefinition XSL-XSLT

Remarque XSL-XSLT XSL-FO XSLT XSL FO

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 41: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Exercices

41

ExercicesIX

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 42: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Exercice

42

1 Exercices Culture XML11 Exercice111 Exercice

112 Exercice

113 Exercice

114 Exercice

[ ]solution ndeg1 [ ] p48

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Que permet un scheacutema XML

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 43: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Exercice Historique XML

43

12 Exercice Galaxie XML

13 Exercice Historique XML

14 Exercice Discutez les propositions suivantes en 5 agrave 10 lignes illustrez chacune agrave laide dun exemple

Question 1

Question 2

Ranger les termes suivants dans les bonnes cateacutegories

Open Document Format SGML XHTML SMIL XML W3C HTML

SVG DocBook OASIS

Meacuteta-langage Format de publication XML

Format de publication

SGML

Langage de structuration documentaire

Organisme de standardisation

[ ]solution ndeg2 [ ] p49

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

1995 2000 1998 1986

SGML XML HTML 20 XHTML 10

[ ]solution ndeg3 [ ] p49

Pourquoi est-il utile dutiliser des scheacutemas pour valider les documents XML [ ]solution ndeg4 [ ] p49

Pourquoi le XML na-t-il pas encore remplaceacute le HTML [ ]solution ndeg5 [ ] p49

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 44: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Exercice

44

2 Exercices Syntaxe XML21 ExerciceSoit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

[ ]solution ndeg6 [ ] p50

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 45: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Exercice

45

22 Exercice

23 Exercice

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozat

ltdategt01-03-01

ltversion numero=1gt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacute

ltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

[ ]solution ndeg7 [ ] p50

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gt

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt

gtlt gt

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gt

[ ]solution ndeg8 [ ] p51

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 46: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Questions de synthegravese

46Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

HTML est-il un langage XML

SGML est plus libre que XML par exemple il autorise lomission des balises fermantes Quels avantages XML preacutesente-t-il dun point de vue informatique

Quels outils sont neacutecessaires pour faire du XML

Les autres meacutedia que le texte sont-ils aussi adapteacutes agrave une structuration en XML

Questions de synthegravese

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 47: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Questions de synthegravese

47Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 48: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Solutions des exercices

48Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 42gt Solution ndeg1

Exercice

Historique dXML Cocher toutes les propositions correctes

XML a eacuteteacute creacuteeacute dans la continuiteacute du SGML

XML est une norme ISO

XML est un standard W3C

XML est plus reacutecent que HTML

Exercice

XML versus HTML Cocher toutes les propositions correctes

HTML est un langage de mise en forme

XML est un langage de mise en forme

HTML deacutefinit un jeu de balises fixeacute a priori et donc non-extensibles

XML est beaucoup plus geacuteneacuterique il permet de deacutefinir des langages

Exercice

Quest ce qui est neacutecessaire pour avoir un document XML bien formeacute

Un entecircte XML

Une reacutefeacuterence agrave une DTD

Une reacutefeacuterence agrave un XML Schema

Une unique balise racine qui encadre toutes les autres

Que chaque balise ouverte soit fermeacutee

Exercice

Que permet un scheacutema XML

Solutions des exercices

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 49: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Solutions des exercices

49Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 43gt Solution ndeg4

Exercice p 43gt Solution ndeg3

Exercice p 43gt Solution ndeg2

Dindiquer la mise en page pour un type de document et un format cible

De veacuterifier automatiquement quun document correspond agrave une structure type

De deacutefinir une grammaire documentaire

Ranger les termes suivants dans les bonnes cateacutegories

Meacuteta-langage

XML

SGML

Format de publication

XML

SVG

SMIL

XHTML

Open Document Format

Format de publication

SGML

HTML

Langage de structuration documentaire

DocBook

Organisme de standardisation

W3C

OASIS

Indiquer pour chaque format en quelle anneacutee il a eacuteteacute standardiseacute

SGML

1986

XML

1998

HTML 20

1995

XHTML 10

2000

NB La premiegravere version dHTML a eacuteteacute speacutecifieacutee en 1993 mais le premier standard officiel (W3C) est HTML 20 en 1995

Si lon nutilise pas de scheacutema pour valider les documents XML ceux-ci sont heacuteteacuterogegravenes et difficiles agrave exploiter automatiquement

Par exemple on ne peut pas utiliser de XSLT pour les transformer automatiquement

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 50: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Solutions des exercices

50Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg7

Exercice p 44gt Solution ndeg6

Exercice p 43gt Solution ndeg5

Le XML na pas vocation agrave remplacer le HTML XML permet aux architectes de sites de se concentrer sur linformation agrave fournir et dans un deuxiegraveme temps de la mettre en forme pour des besoins speacutecifiques sur un teacuteleacutephone portable pour imprimer pour les navigateurs Web

Soit le fichier ci-apregraves quelles sont les assertions vraies

1 =2   Reacuteinterroger les structures documentaires3   De la numeacuterisation agrave linformatisation4   Steacutephane Crozat5   Bruno Bachimont6   Nous proposons dans cet article daborder 7   In this paper we define8  9    Ingeacutenierie des connaissances

10    XML11    Document12  13  14    Knowledge engineering15    XML16    Document17  18   =19   = =20   =21

Ce fichier nest pas un fichier XML

Ce fichier est un fichier XML il possegravede un eacuteleacutement racine unique qui contient tous les autres

Ce fichier est un fichier XML tous ses eacuteleacutements sont inclus dans les uns dans les autres

Ce fichier est un fichier XML toutes ses balises ouvertes sont fermeacutees

Ce fichier est un fichier SGML

Compleacuteter les trous avec les balises adeacutequatesfermantes

ltxml version=10gt

ltdocumentgt

=ltpapier type scientifiquegt  Reacuteinterroger les structures documentaireslttitregt lttitregt  De la numeacuterisation agrave linformatisationltsousTitregt ltsousTitregt  Steacutephane Crozatltauteurgt ltauteurgt  Bruno Bachimontltauteurgt ltauteurgt  Nous proposons dans cet article daborder ltresumegt ltresumegt  In this paper we defineltabstractgt ltabstractgt ltmotsClesgt   Ingeacutenierie des connaissanceslttermegt lttermegt   XMLlttermegt lttermegt   Documentlttermegt lttermegt ltmotsClesgt ltkeywordsgt   Knowledge engineeringltwordgt ltwordgt   XMLltwordgt ltwordgt   Documentltwordgt ltwordgt ltkeywordsgt  =ltpublication date 2004-07-05gt  = =ltversion maj 1 min 0gt  =ltressource uriSrc httparchivesicccsdcnrsfrdocs00062397PDFsic_00001015pdfgtltpapiergt

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 51: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Solutions des exercices

51Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Exercice p 45gt Solution ndeg8

ltentetegt

lttitregtDocument agrave corrigerlttitregt

ltauteurgtSteacutephane Crozatltauteurgt

ltdategt01-03-01ltdategt

ltversion numero=1gt

ltentetegt

ltcorpsgt

ltdivision titre=Premiegravere partiegt

ltparagraphegtCe texte doit ecirctre ltimportantgtcorrigeacuteltimportantgtltparagraphegt ltparagraphegtLe contenu est sans importance iciltparagraphegt

ltdivisiongt

ltdivision titre=Seconde partiegt

ltparagraphegtAi-je le droit de mettre du texte ici ltparagraphegt

ltdivisiongt

ltcorpsgt

ltdocumentgt

Fermer les balises du fichier suivant afin quil soit un document XML bien formeacute

ltdocAbstraitgt

ltcontenugt

ltparagraphegtLorem ipsum dolor sit amet consectetur adipiscing elitlt gtparagraphe

ltTextegtNulla erat tellus molestie a ultrices sed gravida eget ipsum

ltparagtPhasellus lacinia ipsum vitae interdum tincidunt

ltPgtNullam pulvinar diam et tellus ullamcorper eleifendlt gtlt gtlt gtlt gtP para Texte contenu

ltlignegtNunc eu lectus in diam tempus adipiscing in rhoncus elitlt gtlt gtligne docAbstrait

Les balises doivent ecirctre fermeacutees dans lordre dans lequel elles sont ouvertes pour que chaque eacuteleacutement soit inclus dans son pegravere La syntaxe XML est sensible agrave la casse est diffeacuterent de P p

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 52: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Glossaire

52Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

EAI

LEAI (Enterprise Application Integration ou Inteacutegration des applications dentreprise) deacutesigne agrave la fois les solutions et les meacutethodes destineacutees agrave assurer linteacutegration des diffeacuterentes composantes du systegraveme dinformation Il sagit de gagner en souplesse et de baisser les coucircts de maintenance des interfaces inter-applicatives Les chantiers dEAI sont souvent un preacutealable neacutecessaire agrave des projets e-business (source Le Journal Du Net)

Seacuterialisation

Processus consistant agrave enregistrer des donneacutees en meacutemoire vive (par exemple des objets) sous une forme permettant leur persistance typiquement sur une meacutemoire secondaire

Glossaire

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 53: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Signification des abreacuteviations

53Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

CSS Cascading Style Sheet

DTD Document Type Definition

EAI Enterprise Application Integration

ebXML electronic business XML

EDI Electronic Data Interchange ou Echange de Donneacutees Informatiseacute

HTML HyperText Markup Language

IDE Integrated Development Environment (Environnement de Deacuteveloppement Inteacutegreacute)

W3C World Wide Web Consortium

XML eXtensible Markup Language

Abreacuteviations

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 54: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Bibliographie

54Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Accegraves Libre Steacutephane Crozat Scenari la chaicircne eacuteditoriale libre Eyrolles 2007

Geacuterard Dupoirier Technologie de la GED Techniques et management des documents eacutelectroniques Hermes 1995

Jacques Andreacute Richard Furuta Vincent Quint Structured documents Cambridge University 1989Press

Bruno Bachimont Ingeacutenierie des connaissances et des contenus le numeacuterique entre ontologies et documents Lavoisier Hermegraves 2007

Michard Alain XML langage et applications Eyrolles 1997

Bibliographie

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 55: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Webographie

55Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Nicolas Hoizey Faisons le point sur les langages de scheacutema XML httpwwwclever-age comveilleclever-linkfaisons-le-point-sur-les-langages-de-schema-xmlhtml 2004

SELFHTML Formation XML httpfrselfhtmlorgxml 2003

W3C Extensible Markup Language (XML) 10 (Fifth Edition) httpwwww3 consulteacute en orgTR2008REC-xml-20081126 2008

XML httpwwww3orgXML

Webographie

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index
Page 56: XML, l'eXtensible Markup Language · 2016. 9. 14. · XML : un langage à balise 6--2. Définition du XML L'eXtensible Markup Language XML ** est un méta-langage permettant de définir

Index

56Steacutephane Crozat (Contributions Bruno Bachimont Erik Gebers)

Attributp 20 28

Balisep 6

Bien formeacutep 19

DTDp 28

Eleacutementp 28

HTMLp 9

Meacuteta-langagep 7

SGMLp 8

Syntaxep 8 22 22

Validep 28

W3Cp 5

XMLp 5 5 6 7 16

Index

  • Introduction agrave XML
    • Preacuteambule XML selon le W3C
    • Deacutefinition du XML
    • XML un langage agrave balise
    • XML un meacuteta-langage
    • Exemple Un document XML
    • Historique de SGML agrave XML
    • Discussion HTML et XML
      • Langages XML
        • Langages standard et langages locaux
        • Langages XML orienteacutes donneacutees
        • Documents structureacutes et documents formateacutes
        • Langages XML orienteacutes documents
        • Caracteacuteristiques rechercheacutees pour un format XML
        • Outillage XML
          • Syntaxe de base XML
            • Document bien formeacute
            • Balise
            • Eacuteleacutement
            • Attribut
            • Structure geacuteneacuterale dun fichier XML
            • Exemple de fichier XML - Le courriel
            • La syntaxe XML en reacutesumeacute
              • Syntaxe avanceacutee XML
                • Commentaires
                • Namespace
                • Syntaxe XML et espaces
                • Encodage des caractegraveres
                  • Introduction aux scheacutemas XML
                    • Notion de document valide
                    • Document Type Definition
                    • W3C XML Schema
                    • Regular Language for XML Next Generation
                      • Quelques bonnes questions sur XML
                      • Bibliographie
                      • Compleacutements
                        • Balises et poigneacutees de calcul
                        • La structuration logique
                        • Exemple de structuration logique
                        • Deacutefinition des chaicircnes eacuteditoriales XML
                        • Deacutefinition de Scenari
                        • Un langage pour publier les documents XML
                        • Deacutefinition de XSL-XSLT
                          • Exercices
                            • Exercices Culture XML
                              • Exercice
                              • Exercice Galaxie XML
                              • Exercice Historique XML
                              • Exercice
                                • Exercices Syntaxe XML
                                  • Exercice
                                  • Exercice
                                  • Exercice
                                      • Questions de synthegravese
                                      • Solutions des exercices
                                      • Glossaire
                                      • Abreacuteviations
                                      • Bibliographie
                                      • Webographie
                                      • Index