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
enseignement:tp:bd:tp-xpath-corr [2012/07/06 12:46]
ecoquery
enseignement:tp:bd:tp-xpath-corr [2013/04/11 14:16] (Version actuelle)
ecoquery [Évaluation de requêtes XPath]
Ligne 10: Ligne 10:
 Il s'agit simplement d'une interface graphique utilisant la bibliothèque [[http://saxon.sourceforge.net/|Saxon]] pour traiter les requêtes XQuery. L'interface est composée de trois zones de texte principales: une pour le document XML à traiter, une pour le programme XQuery et une dans laquelle s'affiche le résultat. Sur la gauche, il y a une liste de documents XML disponibles. Double cliquez sur un document pour le charger dans la zone de données. Il est également possible de charger un document du serveur en saisissant l'url dans la petite zone de texte en haut. Le bouton "XQuery" permet de lancer la requête XQuery de la zone "Programme". Le bouton "XSLT" (non utilisé dans ce TP) permet d'appliquer une feuille de style [[http://www.w3.org/TR/xslt|XSLT]] donnée dans la zone programme sur le document de la zone "Données". Il est en particulier possible de l'utiliser pour afficher les DTDs de certains des documents de la base. Les racourcis claviers classiques fonctionnent dans les zones de texte: Ctrl-C pour copier, Ctrl-V pour coller, Ctrl-X pour couper. Ctrl-Q permet de quitter. Il s'agit simplement d'une interface graphique utilisant la bibliothèque [[http://saxon.sourceforge.net/|Saxon]] pour traiter les requêtes XQuery. L'interface est composée de trois zones de texte principales: une pour le document XML à traiter, une pour le programme XQuery et une dans laquelle s'affiche le résultat. Sur la gauche, il y a une liste de documents XML disponibles. Double cliquez sur un document pour le charger dans la zone de données. Il est également possible de charger un document du serveur en saisissant l'url dans la petite zone de texte en haut. Le bouton "XQuery" permet de lancer la requête XQuery de la zone "Programme". Le bouton "XSLT" (non utilisé dans ce TP) permet d'appliquer une feuille de style [[http://www.w3.org/TR/xslt|XSLT]] donnée dans la zone programme sur le document de la zone "Données". Il est en particulier possible de l'utiliser pour afficher les DTDs de certains des documents de la base. Les racourcis claviers classiques fonctionnent dans les zones de texte: Ctrl-C pour copier, Ctrl-V pour coller, Ctrl-X pour couper. Ctrl-Q permet de quitter.
  
-Pour utiliser l'interface sans internet, télécharger les fichiers suivants: [[http://liris.cnrs.fr/~ecoquery/files/xquery.jar|xquery.jar]], [[http://liris.cnrs.fr/~ecoquery/files/saxon8.jar|saxon8.jar]] et [[http://liris.cnrs.fr/~ecoquery/files/xmlfiles.jar|xmlfiles.jar]]. Lancer ensuite la commande:+Pour utiliser l'interface sans internet, télécharger les fichiers suivants: [[http://liris.cnrs.fr/~ecoquery/files/xquery.jar|xquery.jar]], [[http://liris.cnrs.fr/~ecoquery/files/saxon9.jar|saxon9.jar]], [[http://liris.cnrs.fr/~ecoquery/files/saxon9-xpath.jar|saxon9-xpath.jar]], [[http://liris.cnrs.fr/~ecoquery/files/saxon9-dom.jar|saxon9-dom.jar]] et [[http://liris.cnrs.fr/~ecoquery/files/xmlfiles.jar|xmlfiles.jar]]. Lancer ensuite la commande:
  
 <code shell> <code shell>
-java -cp saxon8.jar:xquery.jar:xmlfiles.jar fr.cnrs.liris.ecoquery.xqueryapp.Main+java -cp saxon9.jar:saxon9-xpath.jar:saxon9-dom.jar:xquery.jar:xmlfiles.jar fr.cnrs.liris.ecoquery.xqueryapp.Main
 </code> </code>
  
Ligne 19: Ligne 19:
  
 <code shell> <code shell>
-/usr/lib/jvm/java-1.5.0-sun/bin/java -cp saxon8.jar:xquery.jar:xmlfiles.jar fr.cnrs.liris.ecoquery.xqueryapp.Main+/usr/lib/jvm/java-1.5.0-sun/bin/java -cp saxon9.jar:saxon9-xpath.jar:saxon9-dom.jar:xquery.jar:xmlfiles.jar fr.cnrs.liris.ecoquery.xqueryapp.Main
 </code> </code>
  
Ligne 31: Ligne 31:
   * La [[http://www.w3.org/TR/xquery/|définition de XQuery]] par le W3C.   * La [[http://www.w3.org/TR/xquery/|définition de XQuery]] par le W3C.
   * Les [[http://www.w3.org/TR/xpath-functions/|fonctions standard de XQuery/XPath]].   * Les [[http://www.w3.org/TR/xpath-functions/|fonctions standard de XQuery/XPath]].
- 
 ===== Évaluation de requêtes XPath ===== ===== Évaluation de requêtes XPath =====
  
Ligne 44: Ligne 43:
   - Document: "Collection", requête: ''<nowiki>//</nowiki>scenariste''   - Document: "Collection", requête: ''<nowiki>//</nowiki>scenariste''
   - Document: "Collection", requête: ''/collection<nowiki>//</nowiki>dessinateur[child::text() = <nowiki>"</nowiki>Tarquin<nowiki>"</nowiki>]/..''   - Document: "Collection", requête: ''/collection<nowiki>//</nowiki>dessinateur[child::text() = <nowiki>"</nowiki>Tarquin<nowiki>"</nowiki>]/..''
-  - Document: "Collection", requête: ''<nowiki>//</nowiki>tome[numero=<nowiki>"1"</nowiki>]/parent::element()''\\ //**Correction: **rien: dans les tomes, le numéro est spécifié par un attribut et non par un élément (requête correcte: ''<nowiki>//</nowiki>tome[@numero="1"]/parent::element()'')//+  - Document: "Collection", requête: ''<nowiki>//</nowiki>tome[numero=<nowiki>"1"</nowiki>]/parent::element()''\\ //**Correction: **rien: dans les tomes, le numéro est spécifié par un attribut et non par un élément (requête correcte: ''<nowiki>//tome[@numero="1"]/parent::element()</nowiki>'')//
   - Document: "Hamlet", requête: ''/PLAY/TITLE''   - Document: "Hamlet", requête: ''/PLAY/TITLE''
   - Document: "Hamlet", requête: ''<nowiki>//</nowiki>ACT/TITLE''   - Document: "Hamlet", requête: ''<nowiki>//</nowiki>ACT/TITLE''
   - Document: "Hamlet", requête: ''<nowiki>//</nowiki>LINE/TITLE''\\ //**Correction: **rien: il n'y a pas de titre dans les lignes//   - Document: "Hamlet", requête: ''<nowiki>//</nowiki>LINE/TITLE''\\ //**Correction: **rien: il n'y a pas de titre dans les lignes//
- 
 ===== Écriture de requêtes XPath ===== ===== Écriture de requêtes XPath =====