Cours XML

L'essentiel de XML

Version du 09/02/2010

Résumé

Support du cours XML en M2 Pro à l'Université Paris Diderot.

Ce document est le support d'un cours XML donné en M2 Pro à l'Université Paris Diderot. L'objectif est de présenter les aspects essentiels de XML de manière concise et illustrée par de nombreux exemples. Les principaux thèmes abordés sont la syntaxe de XML, la validation de documents par des DTD, des schémas et des schematrons, le langage XPath, la transformation de document par XSLT ainsi que la programmation.

Ce support de cours est actuellement en cours de rédaction. Il contient encore beaucoup d'erreurs et d'omissions. Certaines parties méritent d'être développées et/ou reprises. Une certaine indulgence est donc demandée au lecteur. Toutes les corrections, même les plus mineures, suggestions et encouragements sont les bienvenus. Ils participent à l'amélioration de ce document pour le bien de tous.


Table des matières

1. Introduction à XML
1.1. Historique
1.2. Intérêts
1.3. Dialectes et extensions
1.4. Applications
1.5. DocBook
2. Syntaxe de XML
2.1. Premier exemple
2.2. Syntaxe et structure
2.3. Composition globale d'un document
2.4. Prologue
2.5. Corps du document
2.6. Exemples minimaux
2.7. Utilisation de XInclude
3. DTD
3.1. Un premier exemple
3.2. Déclaration de la DTD
3.3. Contenu de la DTD
3.4. Outils de validations
4. Espaces de noms
4.1. Identification d'un espace de noms
4.2. Déclaration d'un espace de noms
4.3. Portée d'une déclaration
4.4. Espace de noms par défaut
4.5. Attributs
4.6. Espace de noms XML
4.7. Quelques espaces de noms classiques
5. Schémas XML
5.1. Introduction
5.2. Un premier exemple
5.3. Structure globale d'un schéma
5.4. Commentaires
5.5. Déclarations d'éléments
5.6. Types prédéfinis
5.7. Définitions de types
5.8. Constructions de types
5.9. Déclarations d'attributs
5.10. Extension de types
5.11. Restriction de types
5.12. Substitutions
5.13. Groupes d'éléments et d'attributs
5.14. Contraintes de cohérence
5.15. Espaces de noms
5.16. Imports d'autres schémas
6. XPath
6.1. Données et environnement
6.2. Expressions de chemins
6.3. Valeurs atomiques
6.4. Listes
6.5. Comparaisons
6.6. Structures de contrôle
6.7. Fonctions prédéfinies
6.8. Syntaxe abrégée
6.9. Exemples
6.10. Utilisation de xmllint
6.11. Récapitulatif des opérateurs XPath
7. Schematron
7.1. Introduction
7.2. Premier exemple
7.3. Fonctionnement
7.4. Structure globale d'un schematron
7.5. Règles
7.6. Règles abstraites
7.7. Blocs abstraits
7.8. Phases de validations
8. Programmation XSLT
8.1. Principe
8.2. Premier programme : Hello, World!
8.3. Modèle de traitement
8.4. Entête
8.5. Définition et application de règles
8.6. Règles par défaut
8.7. Construction du résultat
8.8. Structures de contrôle
8.9. Tris
8.10. Variables et paramètres
8.11. Fonctions d'extension XPath
8.12. Modes
8.13. Indexation
8.14. Documents multiples
9. XSL-FO
9.1. Premier exemple
9.2. Structure globale
10. Feuilles de style CSS
10.1. Principe
10.2. Règles
10.3. Héritage et cascade
10.4. Modèle de boîtes
10.5. Style et XML
10.6. Attachement de règles de style
10.7. Principales propriétés
11. SVG
11.1. Un premier exemple
11.2. Éléments de dessins
11.3. Transformations
11.4. Indications de style
11.5. Courbes de Bézier et B-splines
12. Programmation XML
12.1. SAX
12.2. DOM
12.3. Comparaison
12.4. AJAX
A. Références
A.1. Cours XML
A.2. Tutoriaux
A.3. Spécifications
A.4. Sites généralistes
A.5. Sites spécialisés
B. Logiciels XML
B.1. Memento logiciels
C. Acronymes XML
Bibliographie
Index