TME XQuery

Préparation

Commande Description
cd aller dans votre répertoire $HOME
tar zxvf $BD_TOOL/xquery.tgz installer l'archive dans votre répertoire principal
cd xquery aller dans votre répertoire de travail
cp /Infos/bd/basex.jar . copier l'outil BaseX dans votre répertoire de travail
java -jar basex.jar lancer l'outil BaseX (attendre quelques secondes)

Outil BaseX (avec interface graphique)

Dans l'outil BaseX,commencer par créer une BD à partir d'un fichier (ex. rencontre.xml) ou d'un répertoire contenant plusieurs fichiers (ex. rencontre.xml, gain.xml etc). Pour ce faire, aller dans le menu Database -> New, cliquer bouton Browse et sélectionner le fichier ou le répertoire en question. Une fois la BD créée, activer l'affichage de la représentation arborescente. Pour ce faire, localiser le Panneau en dessous de la barre de Menus (Database, Editor, etc). Aller dans le 4e groupe de bouton et cliquer sur le symbole d'arbre ou bien dérouler le menu Visualization et cliquer Tree. Une fenêtre avec une représentation arborescente du ou des document(s) sélectionnés dans l'étape précédente. Naviguer dans la structure arborescente en double-cliquant sur les éléments (voir capture écran) Pour revenir en arrière, clic droit -> Go Back. L'avantage de cet affichage et de pouvoir voir les résultats des requêtes! Par exemple, saisir la requête :

  for $r in doc("rencontre.xml")//rencontre
  return $r

et appuyer sur le triangle vert pour exécuter la requête. Les résultats de cette requete sont en rouge dans l'arbre original.

Remarque Il est évident que si le résultat de votre requete est un nouvel élément construit par copie d'autres éléments de votre document interrogé, les éléments de ce dernier ne seront pas coloriés.

Outil xquery (sans interface graphique)

Exécuter une requête avec la commande : xquery fichier_requête.xql
Exemple : xquery r1.xql

Lire attentivement les indications sur la syntaxe XQuery ci-dessous.

Exercice

1) Ecrire en XQuery les requêtes sur la base tennis (fichiers joueur.xml, gain.xml, rencontre.xml)

2) Ecrire en XQuery les requêtes r5.xql, r7.xsql, r9.xql, r11.xql et r12.xql sur la base de données bibliographique.

3) Faire l'ex XQuery de l'examen juin 2003. Les données sont dans les fichiers joueur2.xml (txt) et rencontre2.xml (txt)

4) (facultatif) les requêtes Q1 à Q18 du use-case "R".

Questions/réponses fréquentes

      document("bib.xml")//book[publisher=$p]

Documentation

Outils

*Deux moteurs de requêtes XQuery : Galax, oracle xquery (installer chez soi le moteur Galax de préférence). *Pour vérifier la syntaxe d'une requête : XQuery grammar test page , *Divers prototypes en ligne : Galax, Microsoft, Cogneticsystems, Ipsi, Qizx, MXquery


Aller vers XSL, Retour vers Les Travaux Dirigés, Accueil