TD4 : Schémas XML
Objectifs du TP
Etude des notions de document bien formés et
valides. Mise en
place de Utilisation des schémas XML et comparaison avec les
DTD.
Rendu
Le schéma complet Sartre.xsd permettant de valider
Sartre.xml
est à déposer sur Spiral pour le 1er février. N'oubliez pas d'indiquer les noms des deux étudiants du binôme dans le nom du fichier.
Types de données complexes
Vous trouverez ici
un schéma XML et là
un document XML censé lui correspondre. Corrigez le document
XML (i.e.
l'instance) pour qu'il soit valide par rapport au schéma.
Types de données simples
Vous trouverez ici
un schéma XML et là
un document XML censé lui correspondre. Corrigez le document
XML (i.e.
l'instance) pour qu'il soit valide par rapport au schéma.
Écriture d'un document valide
Rédigez un document XML valide par rapport au
schéma situé ici.
Schéma pour Sartre.xml
Nous allons maintenant nous intéresser au fichier Sartre.xml.
Celui-ci contient une partie de la bibliographie de Jean-Paul Sartre.
Analysez ce document XML : éléments, attributs,
références entre éléments.
Vous allez maintenant créer un schéma
qui permet de
valider de Sartre.xml en utilisant les informations qui suivent.
La bibliographie contient 3 branches :
- une branche
"Livres" contenant des éléments "Livre"
possédant obligatoirement un
identifiant "id", un attribut "couverture", et une
référence éventuelle
à l'édition la plus vieille de ce livre dans la
liste si elle existe
("alias"). Chacun des éléments Livre doit
contenir :
- un "titre"
- un à dix "auteur" avec une
référence éventuelle à
l'auteur dans la
liste des auteurs
- un "editeur"
- une "collection"
- un "Nombre de
pages" (entier)
- un "format"
- un "ISBN" (à définir)
- et éventuellement
- une "Date de
parution"
- une "illustration"
- une ou plusieurs "direction"
- une
"preface" ou une "postface"
- une "traduction".
- une branche "Auteurs" contenant des
éléments
"Perso" possédant obligatoirement un identifiant. Ceux-ci
contiennent des éléments :
- "Nom"
- "Prenom"
- "Naissance"
(annee mois jour lieu, par défaut "?")
- éventuellement
"Deces" (annee mois jour lieu, par défaut "?", lieu n'est
pas
obligatoire)
- une "Biographie" qui contient des
éléments
"p" contenant eux-mêmes éventuellement :
- des
éléments "Ecrit"
- un élément "Infos"
contenant
- des "Info" avec éventuellement
l'année
relative à cette information.
- éventuellement, une branche "Commentaires" qui
contient au moins un
élément "Avis". Chacun de ces
éléments
contient un avis sur un film avec, si possible, sa "source".
Procédez en plusieurs
étapes :
- Créez un schéma Sartre.xsd
pour valider le document SartreCommentaires.xml
(qui est une sous-partie de Sartre.xml,
limitée à
l'arbre de racines Commentaires). Vérifer que votre
schéma
convient en spécifiant au début de
SartreCommentaires.xml que celle-ci doit le valider, et en utilisant
XML-Spy.
- Dans le même fichier Sartre.xsd,
ajoutez des déclarations permettant de valider le document SartreAuteurs.xml
(sous-partie de Sartre.xml, limitée
à l'arbre de racine Auteurs). Vérifer
que votre schéma
complété permet de valider
SartreAuteurs.xml.
- Procédez de la même
manière pour SartreLivres.xml
(sous-partie de Sartre.xml contenant uniquement la partie Livres).
- Compléter finalement votre schéma
en décrivant les
liens entre les éléments Bibliographie, Auteurs,
Commentaires, Livres. Associez votre schéma au document
Sartre.xml.
Validez à l'aide de XML-Spy.