65
eXtensible Markup Language V. Augusto 1/65 Introduction Panorama des technologies XML ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation XML 1.0 ecanisme des DTD XML Schema Conclusion eXtensible Markup Language Vincent Augusto ´ Ecole Nationale Sup´ erieure des Mines de Saint- ´ Etienne 2008-2009

eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

1/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

eXtensible Markup Language

Vincent Augusto

Ecole Nationale Superieure des Mines de Saint-Etienne

2008-2009

Page 2: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

2/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

1 Introduction

2 Panorama des technologies XML

3 Decouverte de XMLPrincipes fondamentauxExemples d’applications XMLApports de XMLRecommandation XML 1.0Mecanisme des DTDXML Schema

4 Conclusion

Page 3: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

3/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Introduction

XML est...

• un format universel pour les documents et donnees(semi-)structures sur le web.

• une version simplifiee de SGML (ISO 8879).

• le successeur de HTML.

• un meta-langage pour definir des langages de balises.

• a l’origine d’une nouvelle famille de standards : XLink,Xpointer, SOAP, XQuery, etc.

Page 4: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

4/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Origine

• Travail cooperatif d’un grand nombre d’entreprises et dechercheurs.

• Developpement et promotion par le W3C.

• Industriels : Oracle, IBM, Compaq, Microsoft...

• Laboratoires de recherche : MIT, INRIA, Universite deKeio (Japon).

Objectif :

Definir un formalisme pour faciliter l’echange de donnees sur leweb.

Page 5: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

5/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Origine

Successeur du HTML (HyperText Markup Language) :

• Ensemble predefini et limite de balises.

• L’affichage d’un document est fortement dependant del’interpretation qu’en fait le navigateur.

• Une fois cree, le document est lie a une norme. Indexationdifficile.

Heritier du SGML (Standardized Generalized MarkupLanguage) :

• Tres utilise en documentation technique.

• Trop complexe pour une utilisation grand public.

• XML utilise 10 % de SGML pour representer efficacementla plupart des besoins des applications.

Page 6: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

6/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Connexion de deux univers

Gestion de documents :

• SGML.

• Documentationhypertexte.

• HTML.

Gestion de donnees :

• Bases de donneesstructurees (relationnelleset objet).

• Entrepots de donnees.

⇒ XML

• Un document XML est un ensemble imbrique d’elementsrepresentes par un arbre etiquete.

• Un document XML possede plusieurs composants(attributs, entites, etc.) pour structurer documents etdonnees.

Page 7: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

7/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Exemple

Page 8: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

8/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

1 Introduction

2 Panorama des technologies XML

3 Decouverte de XMLPrincipes fondamentauxExemples d’applications XMLApports de XMLRecommandation XML 1.0Mecanisme des DTDXML Schema

4 Conclusion

Page 9: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

9/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Structure et contraintes

Deux langages pour contraindre les structures XML :

• Definition de Type de Document (DTD), heritee deSGML.

• Schema XML, formalisme complet et rigoureux pourdeclarer les contraintes structurelles et les types.

Remarques :

• DTD et schemas ne sont pas obligatoires.

• XML fournit une syntaxe, pas une semantique.

• Les balises n’ont pas de presentation/significationpredefinie.

• XML ne definit que la structure et le contenu d’undocument, pas son comportement ni son traitement.

Page 10: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

10/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

DOM

DOM (Document Object Model) :

• Interface de programmation independante du langage etdes plate-formes.

• Permet d’acceder :• la structure des documents (HTML et XML) ;• le contenu des documents ;• le style ;• les evenements.

• API definie pour OMG IDL, Java et ECMAScript.

Page 11: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

11/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

XPath

XPath :

• Langage d’expressions de chemin : permet l’adressage desdocuments XML.

• Une expression elementaire XPath contient :• un axe qui specifie la relation structurale : fils,

descendants, ancetres, freres, etc.• un test qui specifie le type de nœud ;• des predicats pour raffiner la selection.

• Constitue les briques de base d’autres applications XML :XLink, XSLT, XQuery.

Page 12: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

12/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

XLink

XML Linking Language :

• Langage hypertexte avance permettant d’inserer des liensentres ressources dans des documents XML.

• Liens simples unidirectionnels (comme HTML).

• Liens hors document.

• Liens multi-directionnel.

• Comportement des liens.

• XLink utilise XPath pour adresser l’interieur des structuresXML.

Page 13: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

13/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Transformation de documents

Le web presente de multiples cas de transformation :

• Formatage.

• Reutilisation de document.

• Adaptation aux appareil de presentation.

• Conversion de format (XML vers HTML, LATEX versHTML).

Trois approches :

• Programmes utilisant le DOM.

• Feuilles de transformation XSLT.

• Le langage de requetes XQuery.

Page 14: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

14/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

XSLT

Langage de transformation (le « Perl » de XML) :

• Une feuille de transformation XSLT contient un ensemblede regles pattern/template :

• Pattern : contexte structurel dans l’arbre source.• Template : fragment du resultat a produire pour le

pattern correspondant.

• Quand le pattern est reconnue dans le document source, letemplate correspondant est engendre dans le documentresultat.

Page 15: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

15/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

XQuery

Langage de requete (le « SQL » de XML) :

• Un modele de donnees pour les documents XML.

• Un ensemble d’operateurs sur ce modele (algebre).

• Un langage de requete fonde sur ces operateurs (syntaxe).

• Les requetes XQuery :• peuvent selectionner des documents entiers ou des

sous-arbres qui repondent a la requetes ;• peuvent construire des documents nouveaux fondes sur ce

qui est selectionne.

Page 16: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

16/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

1 Introduction

2 Panorama des technologies XML

3 Decouverte de XMLPrincipes fondamentauxExemples d’applications XMLApports de XMLRecommandation XML 1.0Mecanisme des DTDXML Schema

4 Conclusion

Page 17: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

17/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

XML

Definition formelle :XML est un meta-langage de description et d’echange dedocuments structures.

Notion de balisage structurel :

Etant donne un document, il est souhaitable de separercompletement les informations de structure des informationsde presentation.

Page 18: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

18/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Exemple de document

Page 19: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

19/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Representation XML

Page 20: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

20/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Representation XML

Points importants :

• La representation de cette lettre en XML ne comporteaucune indication sur sa mise en page.

• De nombreuses proprietes graphiques ou typographiquessont absentes de la source XML.

• Ces proprietes graphiques seront definies parl’intermediaire d’une feuille de style.

Feuille de style :

Ensemble de regles pour specifier la realisation concrete d’undocument sur un media particulier.

Page 21: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

21/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Feuille de style

Page 22: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

22/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

1 Introduction

2 Panorama des technologies XML

3 Decouverte de XMLPrincipes fondamentauxExemples d’applications XMLApports de XMLRecommandation XML 1.0Mecanisme des DTDXML Schema

4 Conclusion

Page 23: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

23/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

XHTML

XHTML :

• Application SGML.

• Reformulation de HTML en tant qu’application XML.

Interet :

• Syntaxe plus rigoureuse.

• Importation de fragments de documents d’autres domainesnominaux.

• Possibilite d’utiliser les applications XML standards.

Page 24: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

24/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

MathML

Objectif :

• Permettre l’echange et le traitement d’expressionsmathematiques sur le web.

• Insertion aisee d’expressions mathematiques dans desdocuments HTML ou XML.

• Communication d’expressions entre applications sur le plansemantique.

• Permettre a un auteur d’associer un notation a uneexpression.

Syntaxe :

• Langage de presentation (bas niveau, definition denotations).

• Langage d’expressions (contenu semantique d’expressions.

Page 25: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

25/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

SVG

SVG (Scalable Vector Graphics) :

• Langage de description de graphiques 2D.

• Graphiques vectoriels.

• Graphiques interactifs et dynamiques :• animations declaratives ;• programmation ECMAScript.

Page 26: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

26/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

SOAP

SOAP (Simple Object Access Protocol) :

• Protocole d’echange de donnees entre applicationsdistantes.

• Adapte pour etre utilise au-dessus du protocole HTTP(methode POST).

• Messages structures selon le formalisme :• enveloppe ;• en-tete ;• corps de texte.

Page 27: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

27/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

1 Introduction

2 Panorama des technologies XML

3 Decouverte de XMLPrincipes fondamentauxExemples d’applications XMLApports de XMLRecommandation XML 1.0Mecanisme des DTDXML Schema

4 Conclusion

Page 28: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

28/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Extensibilite et structure

Structure libre :

• En XML, une communaute d’auteurs invente librement lesbalises utiles pour marquer les composants d’un document.

• Exemple : representation d’une date.• <date>24 octobre 2008</date>• <date><a>2008</a><m>10</m><j>24</j></date>• <date format=’ISO-8601’>2008-10-24</date>

• La grande liberte dans le choix des structures de donneesfacilite l’echange de donnees :

• commerce electronique ;• transactions financieres et commerciales ;• recherche et industrie des biotechnologies ;• multimedia...

Page 29: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

29/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Inter-operabilite des outils detraitement

Organisation centree sur XML :

• Toutes les donnees peuvent etre vues comme desdocuments XML et non comme des fichiers de formatsdifferents.

• Consequences :• un serveur de documents XML est susceptible de repondre

a l’ensemble des besoins d’une organisation ;• un simple editeur de fichiers texte permet de traiter

l’ensemble des donnees d’une organisation.

Page 30: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

30/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Modularite et reutilisation

• Chaque utilisateur est libre de definir ses propres structuresde documents.

• Il peut aussi de conformer a des structures types, appeleesDTD.

• Chaque communaute peut ainsi proposer des structuresnormalisees.

• La conformite a une DTD permet l’automatisation destraitements et assure une possibilite de controle de validite.

Page 31: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

31/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Acces a des sources d’informationheterogenes

• L’interrogation et l’echange de donnees entre systemesd’information heterogenes est souvent complexe.

• XML contribue a resoudre ce probleme : format d’echangenormalise independant de toute plate-forme.

• L’indexation et l’interrogation de bases documentaires estfacilite par la presence d’informations structurelles en plusdes informations textuelles.

Page 32: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

32/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

1 Introduction

2 Panorama des technologies XML

3 Decouverte de XMLPrincipes fondamentauxExemples d’applications XMLApports de XMLRecommandation XML 1.0Mecanisme des DTDXML Schema

4 Conclusion

Page 33: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

33/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Exemples de documents XML

<d/>

<document> </document>

<document> Bonjour ! </document>

<document><salutation> Bonjour ! </salutation>

</document>

<?xml version="1.0" standalone="yes"><document>

<salutation> Bonjour ! </salutation></document>

Page 34: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

34/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Structure d’un document

Un document XML se compose :

• d’un prologue, eventuellement vide ;<?xml version="1.0" standalone="yes">

• d’un arbre d’elements ;<document><salutation> Bonjour ! </salutation>

</document>

• de commentaires et d’instructions de traitement,facultatifs.

Page 35: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

35/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Prologue d’un document

Declaration XML (facultative) :<?xml version="1.0" encoding="ISO-8859-1"standalone="yes">

Indique au processeur qui va traiter le document :

• la version du langage XML utilise ;

• le codage des caracteres utilise ;

• l’existance de declarations exterieures au document.

Declaration de type de document (facultative) :<!DOCTYPE exemple SYSTEM "exemple.dtd"[declarations]>

Indique la structure particuliere a laquelle doit se conformer undocument.

Page 36: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

36/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Structure d’une DTD

Une DTD peut comprendre deux partie :

• Une partie externe :Definie en dehors du document, la partie externe estreferencee par une reference DTD (souvent une URL). Cemecanisme permet d’assurer une reutilisation de DTDs.

• Une partie interne :La partie interne est utilisee pour specialiser une DTDexterne generique ou redefinir certains types d’elements.

Page 37: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

37/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Structure d’un element (1/2)

• Un element est de la forme :<nom attr="valeur"> contenu </nom>

• <nom> est la balise d’ouverture.

• </nom> est la balise de fermeture.

• Un element vide est note indifferemment <nom> </nom>ou <nom/>.

• contenu est le contenu d’un element. Il peut s’agir :• de vide ;• de texte ;• d’autres elements ;• d’une imbrication de texte et d’elements ;• d’instructions de traitement...

• attr="valeur" represente un ensemble eventuellementvide d’attributs de noms differents.

Page 38: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

38/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Structure d’un element (2/2)

• Un nom d’element est une suite non vide de caracterespris parmi :

• les caracteres alphanumeriques ;• l’underscore (‘ ‘) ;• le signe moins ;• le point ;• le caractere deux-points est utilisable, mais a un sens

particulier.

• Un nom d’element doit satisfaire les contraintessuivantes :

• le premier caractere doit etre alphanumerique ouunderscore ;

• les trois premiers caracteres ne doivent pas former xml.

Page 39: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

39/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Syntaxe des attributs

• Un attribut est une paire nom="valeur" permettant decaracteriser un element.

• Un element peut avoir plusieurs attributs, separes par unespace.<rapport langue="fr"derniere-modif="08/07/99">(...)<annuaire generator="SQL2XML V2.0"last-update="07.08.99">

• Le nom d’un attribut obeit aux meme regles que le nomd’un element.

Page 40: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

40/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Arbre d’elements

Un document XML contient un arbre d’element si :

• Il existe un unique element pere qui contient tous lesautres : il s’agit de l’element racine du document XML.

• Tout element distinct de la racine est totalement inclusdans son pere : il ne peut y avoir recouvrement partiel.

Ceci n’est pas une structure XML :<p><b> bla blo </p> bli </b>

Page 41: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

41/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Document valide

Un document XML est dit valide si :

• Son prologue contient une declaration de type dedocument (DTD).

• Son arbre d’elements respecte une structure definie par ladeclaration de type.

<?xml version="1.0" encoding="ISO-8859-1"standalone="yes" ?><!DOCTYPE document [<!ELEMENT document (salutation)><!ELEMENT salutation (#PCDATA)>

]><document><salutation> Bonjour ! </salutation>

</document>

Page 42: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

42/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

1 Introduction

2 Panorama des technologies XML

3 Decouverte de XMLPrincipes fondamentauxExemples d’applications XMLApports de XMLRecommandation XML 1.0Mecanisme des DTDXML Schema

4 Conclusion

Page 43: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

43/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Contenu d’une DTD

Une DTD peut contenir des declarations :

• d’elements ;

• de listes d’attributs ;

• d’entites generales ;

• d’entites parametres ;

• de notations ;

ainsi que des commentaires.

Page 44: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

44/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Declaration d’element

Une declaration d’element est de la forme :<!ELEMENT nom modele>

• ELEMENT est un mot-clef et s’ecrit imperativement enmajuscules.

• nom est un nom valide d’element.

• modele est le modele de contenu de cet element. Ondistingue 5 modeles de contenu :

• elements ;• donnees ;• mixte ;• libre ;• vide.

Page 45: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

45/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Modele de contenu : elements

Sequence d’elements fils :

<!ELEMENT chapitre (titre,intro,section)>Un element chapitre doit contenir, imperativement et danscet ordre, un titre, une intro, et une section.

Alternatives :<!ELEMENT chapitre (titre,intro,(section|paragraphes))>

Un element chapitre doit contenir, imperativement et danscet ordre, un titre, une intro, et une section ou desparagraphes.

Indicateurs d’occurrence :

• p* : p peut apparaıtre zero, une ou plusieurs fois.

• p+ : p peut apparaıtre une ou plusieurs fois.

• p? : p peut apparaıtre zero ou une fois.

Page 46: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

46/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Modele de contenu : elements

<!ELEMENT chapitre (titre,intro?,section+ ) >

<!ELEMENT section (titre-section,texte-section ) >

<!ELEMENT texte-section (p|a)* >

Page 47: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

47/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Modele de contenu : donnees

<!ELEMENT p (#PCDATA) >

La presence de donnees dans le contenu d’un element estspecifiee par le mot-cle #PCDATA.

Page 48: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

48/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Modele de contenu : mixte

<!ELEMENT p (#PCDATA | nom1 | ... | nomN)* >

Ce modele permet de definir des modeles de contenu autorisantle melange donnees/elements.

Page 49: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

49/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Modele de contenu : mixte

Exemple de declaration :

<!ELEMENT p(#PCDATA | em | exposant | indice | renvoi)* >

<!ELEMENT em (#PCDATA|exposant|indice)* ><!ELEMENT exposant (#PCDATA) ><!ELEMENT indice (#PCDATA) >

Exemple d’utilisation :

<p>Un paragraphe peut contenir du texte <em>misen evidence</em> ou en<exposant>exposant</exposant>.</p>

Page 50: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

50/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Modele de contenu : libre

<!ELEMENT p ANY>

• Un element peut etre defini comme ayant un contenuquelconque, sous reserve que ce contenu respecte lesregles generales du langage XML.

• Pour que le contenu d’un element de modele de contenulibre soit valide, il faut que, s’il contient des elements,ceux-ci soient declares dans la DTD.

Page 51: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

51/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Modele de contenu : libre

Exemple de declaration :

<!ELEMENT rapport ANY><!ELEMENT chapitre ANY><!ELEMENT section ANY><!ELEMENT titre-section ANY><!ELEMENT illustration ANY><!ELEMENT bibliographie ANY><!ELEMENT table-matieres ANY><!ELEMENT index ANY>

Page 52: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

52/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Modele de contenu : vide

<!ELEMENT p EMPTY>

• Un element peut etre declare comme obligatoirement videa l’aide du mot-cle EMPTY.

• Lorsqu’un modele de contenu d’un element et le modelevide, il doit obligatoirement respecter la syntaxe <nom/>.

• Il est impossible de meler EMPTY a une autre constructionde modele de contenu.

Page 53: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

53/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Modele de contenu : vide

Exemple de declaration :

<!ELEMENT p (#PCDATA|bibref)* ><!ELEMENT bibref EMPTY><!ATTLIST bibref ref IDREF #REQUIRED>

Exemple d’utilisation :

<p>Pour une definition precise, voir<bibref ref=’REC-xml-19980210’/>.</p>

Page 54: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

54/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Exemple de DTD

<?xml version="1.0" ?><!ELEMENT email (to+, from, cc*, bcc*,subject?, body?)>

<!ATTLIST emaillanguage (Western|Greek|Latin|Universal)"Western"encrypted CDATA #IMPLIEDpriority (normal|low|high) "normal">

<!ELEMENT to (#PCDATA)><!ELEMENT from (#PCDATA)><!ELEMENT cc (#PCDATA)><!ELEMENT bcc HIDDEN CDATA #FIXED "TRUE"><!ELEMENT subject (#PCDATA)><!ELEMENT body (#PCDATA)>

Page 55: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

55/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Declaration d’attributs

<!ATTLIST nom-element nom-attributtype-attribut valeur-defaut>

• Un attribut est une paire nom-valeur associee a unelement.

• Specification des attributs qui pourront/devront etreassocies a des instances d’elements.

Page 56: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

56/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Types d’attribut

Le type d’attribut peut etre :

• CDATA : la valeur de l’attribut est une chaıne de caracteres.

• ID ou IDREF : permet de definir des renvois a l’interieurd’un document.

• ENTITY ou ENTITIES : permet qu’un attribut prennecomme valeur le nom d’une entite.

• NOTATION : definit un attribut de notation.

• Une liste de choix dans un ensemble de tokens ouidentifiants logiques.

Page 57: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

57/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Declaration par defaut etcontraintes

Quatre formes distinctes :

• Valeur par defaut de l’attribut.

• #REQUIRED : chaque element instance devra posseder unattribut de ce nom. Ne peut prendre de valeur par defaut.

• #IMPLIED : presence facultative. Ne peut prendre devaleur par defaut.

• #FIXED : fixe la valeur de cet attribut pour tout elementinstance. Il n’est pas necessaire de repeter cet attribut.

Page 58: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

58/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Exemples

Attribut CDATA<!ATTLIST f att1 CDATA #FIXED ’toto’>

L’attribut att1 des elements de type f a une valeur constante :la chaıne de caracteres toto.

Attribut enumere<!ELEMENT date (#PCDATA) ><!ATTLIST date format (ANSI|ISO|FR) #REQUIRED>

<date format=’FR’> 24 Mai 1998 </date><date format=’ISO’> 1998-05-24 </date>

L’attribut format est obligatoire, et doit prendre sa valeurparmi ANSI, FR ou ISO.

Page 59: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

59/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Entites internes

Entites definies par l’utilisateur :

<!ENTITY nom-entite "valeur-entite">

Exemple

La declaration suivante

<!DOCTYPE toto [<!ENTITY copyright "&#x00A9; Editions titi">

]>

<toto> &copyright </toto>

produira

c© Editions titi

Page 60: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

60/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Entites parametres

• Les entites internes sont definies dans une DTD pour etreutilisees dans un document.

• Ces entites jouent le role de constantes symboliques.

• Introduction du meme mecanisme au sein d’une DTD, afinde nommer et de reutiliser des modeles de contenu quiapparaissent de maniere repetitive.

• XML propose pour cela le mecanisme des entitesparametres (∼ variables) :<!ENTITY % nom-entite "valeur-entite"><!ENTITY % nom-entite SYSTEM url>

Page 61: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

61/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

1 Introduction

2 Panorama des technologies XML

3 Decouverte de XMLPrincipes fondamentauxExemples d’applications XMLApports de XMLRecommandation XML 1.0Mecanisme des DTDXML Schema

4 Conclusion

Page 62: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

62/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

XML Schema

XML Schema est une alternative aux DTDs :

• Langage de definition de schema pour XML.

• Permet de definir des types simples/complexes, desstructures d’elements/d’attributs.

• Utilisation d’outils XML standards.

Avantages :

• Support des types de donnees.

• Description plus fine de la structure d’une famille dedocuments.

• Echange de donnees avec des bases de donnees.

• Conversion de donnees de types differents...

Page 63: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

63/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

Comparaison DTD/XML Schema

<!ELEMENT note (to, from, heading, body)>

<!ELEMENT to (#PCDATA)>

<!ELEMENT from (#PCDATA)>

<!ELEMENT heading (#PCDATA)>

<!ELEMENT body (#PCDATA)>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="note">

<xs:complexType>

<xs:sequence>

<xs:element name="to" type="xs:string"

minOccurs=’1’ maxOccurs=’1’/>

<xs:element name="from" type="xs:string/>"

<xs:element name="heading" type="xs:string/>"

<xs:element name="body" type="xs:string/>"

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>

Page 64: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

64/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

1 Introduction

2 Panorama des technologies XML

3 Decouverte de XMLPrincipes fondamentauxExemples d’applications XMLApports de XMLRecommandation XML 1.0Mecanisme des DTDXML Schema

4 Conclusion

Page 65: eXtensible Markup Languageaugusto/enseignement/icm/gis1/UP3-Ann-XML-handout.pdfD ecouverte de XML Principes fondamentaux Exemples d’applications XML Apports de XML Recommandation

eXtensibleMarkup

Language

V. Augusto

65/65

Introduction

Panorama destechnologiesXML

Decouverte deXML

Principesfondamentaux

Exemplesd’applicationsXML

Apports de XML

RecommandationXML 1.0

Mecanisme desDTD

XML Schema

Conclusion

XML est inevitable

Les avantages de XML sont indeniables :

• Apprentissage rapide, seul un editeur de texte est requis.

• Mise en avant de la redaction structuree pour laproduction de documents recuperables (pour Internet).

• Utilisation de XML pour rendre le HTML dynamique.

• Le developpement serveur implique l’utilisation decomposants configurables en XML (Java).

• La philosophie XML penetre tous les secteurs del’informatique (sites web dynamiques, interrogation debases de donnees, systemes d’exploitation).