Académique Documents
Professionnel Documents
Culture Documents
1 Objectifs
L’objectif de ce TP est de vous familiariser avec les expressions XPath et d’approfondir vos
connaissances sur les DTDs.
Les documents mis en ligne sont les suivants :
1. Les fichiers XML automne-0.xml et automne-1.xml contenant tous deux le poème chanson
d’automne écri par Paul Verlaine. Ces deux fichiers ont été présentés en cours et ont été
utilisés lors du TD5.
2. La DTD licence.dtd contenant une description du cursus de licence.
3. Le document XML src.xml décrivant les documents ayant été distribués lors du premier
cours magistral portant sur XML.
4. Le fichier licence.css utile pour afficher dans un navigauteur des informations relatives
à la licence.
Vous pouvez télécharger ces fichiers à partir de l’adresse suivante : http://lifc.univ-fcomte.
fr/~sailhan/teaching.html. Notez que le TP1 est désormais aussi accessible à partir de cette
adresse.
2 Expressions XPath
En vous servant de xmllint, vous vous familiariserez avec les expressions XPath. Nous vous
rappelons que :
– la documentation de xmllint est accessible en tapant la commande man xmllint.
– une session interactive est démarrée en tapant la commande xmllint ––shell automne-0.xml.
Sur le fichier automne-0.xml, tester des expressions XPath comme par exemple :
– cd poemefr0/corps/strophe[1]/ligne[1],
– pwd,
– cat following-sibling::node()
– cat following-sibling::ligne
– cat following-sibling::ligne[position()=1]
– cat
– cd
– cat child::poemefr0/child::corps/child::strophe[position()=1]/child::ligne[position()=1]
– cat poemefr0/corps/strophe/descendant::text()
– cat poemefr0/corps/strophe[1]/ligne[1]
– cat /poemefr0/corps/strophe[1]/ligne[1]
Sur le fichier automne-1.xml tester des expressions XPath comme par exemple :
– cd poemefr1/corps/ligne[1],
1
– pwd,
– cat following-sibling::ligne[1][@strophe = "oui"]
– cat following-sibling::ligne[@strophe="oui"]
– cat following-sibling::ligne[@strophe= "oui"][position()=1]
– cat
– cd..
– pwd
– cd
Sur le fichier automne-1.xml afficher :
– le titre du poème à l’aide de la commande cat et en utilisant une expression XPath donnée
sous forme abrégée et non abrégée,
– le titre du poème si et seulement si le prénom de l’auteur est Paul
– le titre du poème si et seulement si le prénom de l’auteur est Paul et le nom est Verlaine
2
2. Compléter cette DTD en associant à chaque intervenant un attribut identifiant (de type
ID) puis mettez à jour votre document XML.
3. Modifiez votre DTD de façon à ce qu’une référence à l’identifiant de l’intervenant (attribut
de type IDREF) ait lieu au niveau des attributs de l’élément intervention lorsque vous
redéfinirez dans le document XML et la DTD l’élément intervention.
Par la suite, compléter le fichier XML de façon à décrire tous les enseignements ayant eu
lieu jusqu’alors dans le module MI (seulement en ce qui concerne les cours de XML). Puis
vous enrichirez le document XML et à la DTD de façon à ce que la liste des documents ayant
été distribués lors des cours magistraux, TDs et TPs apparaisse. Pour cela, vous pourrez vous
inspirer de ce qui a été fait dans le TD4. Comme base, vous pourrez aussi utiliser le document
XML src.xml qui décrit les documents distribués lors des cours et qui vous est fourni.