<texit info> author=E. Bruno title=XML TP2 </texit>
L’objectif de ce TP est de mettre en pratique les constructions proposées par le langage XPath. Nous utilisons pour cela un outil en ligne de commande qui extrait les fragments d’un document qui vérifient un chemin de localisation XPath (ce n’est que l’une des utilisations possibles de ce langages, cf. le cours sur XSLT). Attention, une expression XPath sélectionne une séquence de noeuds de l’arbre du document, cet outils affiche la représentation XML de tous les sous-arbres dont ces noeuds sont les racines.
Parcourir et garder la recommendation XPath (http://www.w3.org/TR/xpath) ouverte.
Outils utilisés pour l’application des chemins XPath :
Deux commandes sont possible pour extraire les fragments correspondants à une expression XPath :
zorba –trailing-nl -i –context-item <docXML> -f -q <XPathFile>
zorba –trailing-nl -i –context-item <docXML> -f -q <RequeteXPath>
<docXML>
et <XPathFile>
sont des fichiers qui contiennent le document XML et requête XPath. Par exemple,
zorba --trailing-nl -i --context-item books.xml -f -q q.xq
Applique la requête contenue dans le fichier q.xq
au document books.xml
.
A noter : sous Unix, l’expression XPath doit être mise entre ' ' (ou entre “ ”) pour éviter une interprétation de la ligne de commande.
A partir du document décrivant une liste de livres du TP sur l’édition de documents XML, proposer une ou plusieurs expressions XPath qui répondent aux questions suivantes (certaines questions n’ont pas de réponses dans le document, dans ce cas vous ajouterez des informations dans celui-ci) :
child
, descendant
, et attribute
, extraire :
Que font les fonctions id()
et document()
? Que doit contenir le document ?
Pour cela, les requêtes doivent avoir la forme suivante :
declare namespace op = "http://www.zorba-xquery.com/options/features"; declare namespace f = "http://www.zorba-xquery.com/features"; declare option op:enable "f:dtd"; fn:doc("books.xml")//Item
Proposer des exemples de requêtes utilisant ces fonctions :
id
pour atteindre directement la description de la catégorie du premier livreEn vous inspirant des requêtes précédentes proposer une ensemble de requêtes qui permettent d’exploiter les javadoc structurées en XML du TP1.