Bases de Données / Databases

Site Web de l'équipe BD du LIP6 / LIP6 DB Web Site

Outils pour utilisateurs

Outils du site


site:enseignement:master:mlbda:tmes:xpath

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
site:enseignement:master:mlbda:tmes:xpath [27/11/2019 11:23]
amine
site:enseignement:master:mlbda:tmes:xpath [28/10/2021 17:52] (Version actuelle)
hubert
Ligne 1: Ligne 1:
 {{indexmenu_n>​60}} {{indexmenu_n>​60}}
  
-======TME ​XPATH ======+======TME ​XPath ======
  
  
 ===== Préparation ===== ===== Préparation =====
 +/*{{ :​site:​enseignement:​master:​mlbda:​tmes:​tmexpath.zip |tmexpath.zip}}
 + {{ :​site:​enseignement:​master:​mlbda:​tmes:​tmexpath2020.zip |tmexpath2020}}
 +*/
  
 +
 +Ce TME utilise le SGBD XML [[https://​basex.org/​|BaseX]]. ​
 +  * Créer un répertoire de travail pour ce tme.
 +  * Télécharger et décompresser,​ dans votre répertoire de travail, le fichier xpath.zip accessible dans le <fc #​ff0000>​moodle</​fc>​.
 +  * Télécharger et décompresser,​ dans votre répertoire de travail, l'​archive ​ [[http://​files.basex.org/​releases/​9.4.5/​BaseX945.zip| BaseX945.zip]] (sinon voir les autres archives dans [[https://​basex.org/​download/​| download]]).
 +  * Lancer l'​interface graphique de BaseX (voir la description de l'​interface graphique à cette adresse: [[https://​docs.basex.org/​wiki/​Graphical_User_Interface]]):​
 +<code ascii>
 +Windows: cliquer sur l'​icône **BaseX GUI** (ou lancer le script basexgui.bat)
 +Unix: exécuter bin/​basexgui depuis le répertoire racine de basex
 +</​code>​
 +
 +
 +
 +/*
 Ce TME utilise la commande **xpath** (cela lance XPath Explorer). Pour s'en servir, suivre les étapes suivantes : Ce TME utilise la commande **xpath** (cela lance XPath Explorer). Pour s'en servir, suivre les étapes suivantes :
  
   * Utiliser java 1.8. Par exemple, pour la version 1.8.0_170 taper dans votre terminal <code bash>​alias java=/​usr/​lib/​jvm/​jdk1.8.0_170/​bin/​java</​code>​   * Utiliser java 1.8. Par exemple, pour la version 1.8.0_170 taper dans votre terminal <code bash>​alias java=/​usr/​lib/​jvm/​jdk1.8.0_170/​bin/​java</​code>​
-  * Vérifier que la version de java est bien la 1.8 en tapant <code bash> java -jar</​code>​+  * Vérifier que la version de java est bien la 1.8 en tapant <code bash> java -version</​code>​
   * Télécharger et décompresser,​ dans votre répertoire de travail, le fichier {{ :​site:​enseignement:​master:​mlbda:​tmes:​tmexpath.zip |tmexpath.zip}} ou l'​extraire avec la commande <​code> ​ cd répertoire_de_travail   * Télécharger et décompresser,​ dans votre répertoire de travail, le fichier {{ :​site:​enseignement:​master:​mlbda:​tmes:​tmexpath.zip |tmexpath.zip}} ou l'​extraire avec la commande <​code> ​ cd répertoire_de_travail
   unzip /​Infos/​bd/​public/​tmexpath.zip   unzip /​Infos/​bd/​public/​tmexpath.zip
 </​code>​ </​code>​
 +*/
 /** {{:​site:​enseignement:​master:​mlbda:​tmexpath.zip|}}*/​ /** {{:​site:​enseignement:​master:​mlbda:​tmexpath.zip|}}*/​
 +/*
   * <fc #​ff0000>​**Seulement si nécessaire**</​fc>,​ faire un ssh -X sur votre propre machine. Cela permet ensuite de saisir les caractères [ et @ dans l'​outil xpath: <code bash>ssh -X `uname -n`</​code>​ ou <code bash> ssh -X ppti-14-SSS-MM avec SSS étant le numéro de la salle et MM le numéro de la machine </​code>​   * <fc #​ff0000>​**Seulement si nécessaire**</​fc>,​ faire un ssh -X sur votre propre machine. Cela permet ensuite de saisir les caractères [ et @ dans l'​outil xpath: <code bash>ssh -X `uname -n`</​code>​ ou <code bash> ssh -X ppti-14-SSS-MM avec SSS étant le numéro de la salle et MM le numéro de la machine </​code>​
   * Aller dans le répertoire de travail contenant les fichiers xml et dtd. Exemple: <code bash>cd MLBDA/​tmexpath/</​code>​   * Aller dans le répertoire de travail contenant les fichiers xml et dtd. Exemple: <code bash>cd MLBDA/​tmexpath/</​code>​
   * Lancer le programme: <code bash>​xpath &</​code>​. En cas d'​erreur,​ <code bash> java -jar /​Infos/​bd/​public/​tool/​xpe/​xpe.jar </​code>​   * Lancer le programme: <code bash>​xpath &</​code>​. En cas d'​erreur,​ <code bash> java -jar /​Infos/​bd/​public/​tool/​xpe/​xpe.jar </​code>​
 +*/
    
 +Dans BaseX:
 +  * Créer la base de données contenant tous les fichiers du dossier xpath décompressé précédemment:​ //​Database->​New...//​ cliquer sur //​Browse...//​ :choisir le dossier xpath comme répertoire source pour cette base. Vérifier aussi que le champ Input Format vaut bien XML.
 +  * Évaluer une expression XPath (son résultat sera affiché dans la fenêtre //​Result//​): ​
 +  * Saisir vos requêtes XPath dans la fenêtre centrale. Sélectionner la requête a traiter faire Ctrl-Entrée pour l'​exécuter (ou la flèche verte). Une autre possibilité est d'​utiliser l' [[https://​docs.basex.org/​wiki/​Graphical_User_Interface#​Input_Bar|Input Bar]] changez dans le menu déroulant //Find// par //XQuery//, vous pouvez ensuite écrire l'​expression XPath.
 +
 +/*
 Dans Xpath Explorer: Dans Xpath Explorer:
   * //File Open// (ou bouton //Load//) : ouvrir le fichier Film.xml   * //File Open// (ou bouton //Load//) : ouvrir le fichier Film.xml
Ligne 38: Ligne 61:
  
 <code bash>​emacs ou gedit requete_xpath.txt &</​code>​ <code bash>​emacs ou gedit requete_xpath.txt &</​code>​
 +*/
  
 ===== Exercice: Films ===== ===== Exercice: Films =====
Ligne 70: Ligne 93:
   - Quel est le dernier film du document ?   - Quel est le dernier film du document ?
   - Quel est le titre du film qui précède immédiatement le film Shining (dans l'​ordre du document).   - Quel est le titre du film qui précède immédiatement le film Shining (dans l'​ordre du document).
-  - Qui a mis en scène le film Eyes Wide Shut ?+  - <del>Qui a mis en scène le film Eyes Wide Shut ?</​del>  ​
   - Donnez les titres des films qui contiennent un '​V'​ (utiliser la fonction contains)   - Donnez les titres des films qui contiennent un '​V'​ (utiliser la fonction contains)
   - Donner les noeuds qui ont exactement trois descendants (utiliser la fonction count).   - Donner les noeuds qui ont exactement trois descendants (utiliser la fonction count).
Ligne 83: Ligne 106:
  
 Reprendre les questions Xpath de l'​exercice 2 du TD avec les deux fichiers xml fournis (atlas.xml et atlas.xml). On adaptera les valeurs des champs afin d'​obtenir un résultat non vide sur les fichiers fournis. Reprendre les questions Xpath de l'​exercice 2 du TD avec les deux fichiers xml fournis (atlas.xml et atlas.xml). On adaptera les valeurs des champs afin d'​obtenir un résultat non vide sur les fichiers fournis.
- 
site/enseignement/master/mlbda/tmes/xpath.1574850180.txt.gz · Dernière modification: 27/11/2019 11:23 par amine