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:xml:introxquery [2014/02/22 22:41] Emmanuel Brunoenseignement:xml:introxquery [2023/09/20 18:52] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
 ====== Intro. XML/XQuery (Ingemedia) ====== ====== Intro. XML/XQuery (Ingemedia) ======
-L'objectif de ce TD est de découvrir XQuery, il ne s'agit que d'une introduction mais à l'issue de ces quelques exercices l'interrogation avancées de documents XML (ou JSON) sera déjà possible. Des supports de cours se trouvent dans la partie Enseignement/Intranet après connexion avec vos identifiants de l'UTV, ils ne sont pas nécessaire pour suivre ce TD.+L'objectif de ce TD est de découvrir XQuery, il ne s'agit que d'une introduction mais à l'issue de ces quelques exercices l'interrogation avancées de documents XML (ou JSON) sera déjà possible. Des supports de cours se trouvent dans la partie Enseignement/Intranet après connexion avec vos identifiants de l'UTLN, ils ne sont pas nécessaire pour suivre ce TD.
  
 ===== Etude pratique d'un document XML ===== ===== Etude pratique d'un document XML =====
Ligne 8: Ligne 8:
  
 ===== Première approche de XQuery ===== ===== Première approche de XQuery =====
-Pour cette première approche de XQuery, nous allons utiliser l'interprète zorba (http://www.zorba.io/). Zorba supporte la dernière version de XQuery et peut même l'appliquer à du JSON. Nous l'utiliserons en ligne de commande mais il peut être utilisé depuis des langages comme Java ou PHP.+<note> 
 +En TP, nous utiliserons eXist-db, une base de données XML https://exist.lsis.univ-tln.fr/exist/apps/eXide/index.html 
 + 
 +Un login et un password vous seront donnés en cours. Vous pouvez vous en servir pour éditer des documents et des requêtes. Il est aussi possible de les sauvegarder après vous être connecté.  
 +</note> 
 + 
 +/* 
 +Pour cette première approche de XQuery, nous allons utiliser l'interprète zorba (http://www.zorba.io/). Zorba supporte la dernière version de XQuery et peut même l'appliquer à du JSON. Il peut être utilisé depuis des langages comme Java ou PHP.
  
 Pour pouvoir l'utiliser il faut : Pour pouvoir l'utiliser il faut :
Ligne 21: Ligne 28:
 nom local ''q1.xq'' est le paramètre de l’option ''-q''. L’option ''-i'' indique que le résultat nom local ''q1.xq'' est le paramètre de l’option ''-q''. L’option ''-i'' indique que le résultat
 doit être indenté. doit être indenté.
- +*/ 
 ==== Les expressions simples ==== ==== Les expressions simples ====
 Les expressions XQuery les plus simples des valeurs littérales : Les expressions XQuery les plus simples des valeurs littérales :
Ligne 75: Ligne 82:
  
 Quelques exemples : Quelques exemples :
-  * ''fn:doc("queyras.xml")/descendant::secteur'' +  * ''fn:doc("http://bruno.lsis.univ-tln.fr/_media/enseignement/xml/queyras.xml")/descendant::secteur'' 
-  * ''fn:doc("queyras.xml")/descendant::itinéraire'' +  * ''fn:doc("http://bruno.lsis.univ-tln.fr/_media/enseignement/xml/queyras.xml")/descendant::itinéraire'' 
-  * ''fn:doc("queyras.xml")/descendant::itinéraire/nom/text()'' +  * ''fn:doc("http://bruno.lsis.univ-tln.fr/_media/enseignement/xml/queyras.xml")/descendant::itinéraire/nom/text()'' 
-  * ''fn:doc("queyras.xml")/child::guide/child::secteur/child::nom'' +  * ''fn:doc("http://bruno.lsis.univ-tln.fr/_media/enseignement/xml/queyras.xml")/child::guide/child::secteur/child::nom'' 
-  * ''fn:doc("queyras.xml")/guide/secteur/nom''+   
 +Il est aussi possible de copier le document XML exemple dans exist et d'utiliser un chemin local/ 
 +  * ''fn:doc("/db/ingemedia/queyras.xml")/guide/secteur/nom'' 
      
 <Note>Tester les exemples précédents. Trouver (i) tous les paragraphes et (ii) toutes les altitudes. Mettez ces résultats dans un élément XML ''Résultat'' </Note>   <Note>Tester les exemples précédents. Trouver (i) tous les paragraphes et (ii) toutes les altitudes. Mettez ces résultats dans un élément XML ''Résultat'' </Note>  
Ligne 173: Ligne 183:
  
 ==== Pour préparer le dernier TD ==== ==== Pour préparer le dernier TD ====
-En fonction de votre projet de réalisation collective, trouver une source de documents XML (ou JSON) pertinente. Vous présenterez son intérêt et nous mettrons en place pendant le TD l'interrogation nécessaire.+Ce travail est à rendre par groupes de 3 maximum le 28/11/2014.
  
-Si vous n'avez pas de données XML propres, faites le TD XQuery :  +  * Trouver une source de documents XML (http://data.nantes.fr ou https://www.data.gouv.fr) pertinente.  
-http://lsis.univ-tln.fr/~bruno/enseignement/xml/xml .Si vous avez vos propres données, inspirez vous des questions pour exploiter vos données.+  * Présenter son intérêt dans le cadre de la réutilisation de données et donner une idée d'application 
 +  * Ecrire des requêtes XQuery pour réaliser la réutilisation : 
 +    * Extraire des données 
 +    * Reconstruire de nouvelles données 
 +  * En option vous pouvez construire des données dans un format standard : 
 +    * produire un document XHTML (par exemple un tableau de présentation des données) 
 +    * produire une image SVG (Un histogramme, ....)
  
 ~~DISCUSSION~~ ~~DISCUSSION~~
- 
-{{tag>Enseignement Ingemedia XML XQuery}} 
  
 ---- dataentry page ---- ---- dataentry page ----
 type                 : Enseignement type                 : Enseignement
 +level                : main
 enseignement_tags    : Ingemedia enseignement_tags    : Ingemedia
 promotion            : Infocom promotion            : Infocom
 technologies_tags    : XMLM,XQuery,Zorba technologies_tags    : XMLM,XQuery,Zorba
 ---- ----
 +
 +
 ---- struct data ---- ---- struct data ----
 +metadata.level       : 
 +metadata.Type        : 
 +metadata.Nom         : 
 +metadata.Enseignements : 
 +metadata.Promotions 
 +metadata.Technologies : 
 +metadata.Thèmes     : 
 +metadata.Description : 
 ---- ----