Rappels sur XML et les technologies associées
- Structure et composants d'un document XML.
- Document bien formé et document valide.
- Les données structurées et semi-structurées.
- Les différents types de parseurs XML et leur rôle.
- La galaxie des technologies XML.
Travaux pratiques
Créer et valider un document XML.
XML et la composition de documents
- Objectifs des langages de structuration : DTD, XML Schema, Schematron et Relax NG.
- Les principales parties d'un schéma.
- Syntaxe EBNF pour DTD (Data Type Definition).
- Validation des documents. DTD à racines multiples.
Travaux pratiques
Ecriture d'une DTD et de documents conformes à celle-ci. Restructuration modulaire de la DTD.
Les espaces de noms
- Description et utilisation des espaces de noms.
- Combinaison de vocabulaires multiples.
- Combinaison de langages : XHTML, Xforms et SVG.
- Etude de la portée d'un espace de nom.
Travaux pratiques
Ecriture d'un document utilisant plusieurs espaces de noms.
Le langage XML Schema
- La syntaxe du langage.
- Définition d'un vocabulaire et d'une grammaire.
- Tester les valeurs des éléments et des attributs.
- Organisation des éléments : séquence, choix, tas.
- Utilisation des clés et des règles d'unicité.
Travaux pratiques
Redéfinition d'une DTD avec la syntaxe XML-Schema. Amélioration du code.
Techniques de modélisation XML
- Les modèles de conception.
- Schémas uniques applicables à différents types de documents.
- Modèles génériques réutilisables (liste, grille, etc.).
- Documents utilisant de multiples schémas.
Travaux pratiques
Application des modèles étudiés.
XML et la conception objet
- Rappels sur les concepts de l'orienté objet.
- Concepts objets du langage XML Schema.
- Types, classe, dérivation, polymorphisme.
- Représentation UML/XML. Inclusion de schémas.
Travaux pratiques
Composition de schémas modulaires et réutilisables.
Les meilleures pratiques de modélisation
- Composition et héritage.
- Types de constructions : "Poupées russes", "Tranches de salami" et "Stores vénitiens".
- Catalogues de modèles de conception.
- Des modèles de contenu extensible.
Travaux pratiques
Evaluation des méthodes de composition et utilisation des différents langages.