TP 6

XML — Licence Pro BDISE — 10 janvier 2017

XQuery

Rappel de la commande pour effectuer la requête

Machines de l'IUT

saxon-xquery \!indent=yes -o:fichierProduit.xml requete.xq

Linux standard

saxonb-xquery -o:fichierProduit.xml requete.xq

Les recettes

On utilise le fichier recipe.xml comme base de donnée. Écrire la requête XQuery qui permette d'obtenir la liste des recettes qui ont une indication de quantité (indice: makes).
On présentera le résultat sous la forme:

<list_recipes> <recipe>Potage Bonne Femme (6 to 8 helpings)</recipe> ... </list_recipes>

Le hockey

On utilise le fichier hockey.xml comme base de donnée. Écrire les requêtes XQuery qui permette d'obtenir:

  1. la liste de tous les joueurs (indice: aller voir du coté des éléments lineup). On la présentera sous la forme: <Liste_Joueurs> <Joueur>John Smith</Joueur> ... </Liste_Joueurs>
  2. la liste de tous les buts (indice: incident_code="goal") classés par date (indice: ut). De même, on les présentera sous la forme: <Liste_Buts> <But date="2011-03-15 01:45:41">John Smith</But> ... </Liste_Buts>

Les trains pour Fontainebleau

On utilise le fichier trains.xml comme base de donnée. Écrire la requête XQuery qui permette d'obtenir la liste des trains qui s'arrêtent dans la forêt. On gardera la structure du document original.

Le Petit Prince

On utilise le fichier petit_prince.xml comme base de donnée. Écrire la requête XQuery qui permette d'obtenir la liste des phrases en français.
On présentera les phrases en gardant la structure des paragraphes (on formate les dialogues comme des paragraphes):

<petit_prince> <paragraphe> <phrase> <mot>J'ai</mot> <mot>ainsi</mot> ... </phrase> ... </paragraphe> ... </petit_prince>

XQuery et XSLT: les autoroutes d'OpenStreetMap

On veut créer une page HTML qui répertorie les autoroutes françaises. Les données à notre disposition sont contenue dans un fichier XML qui cartographie les autoroutes, provenant de l'initiative OpenStreetMap.
Ce fichier est très volumineux (37,5Mo) [ne le téléchargez pas 12 fois, et pensez qu'il mettra du temps à s'ouvrir, ce que vous n'êtes pas obligés de faire!]. Pour récupérer le fichier:

Extraction des données

On va commencer par extraire du fichier OpenStreetMap.xml les données qui nous intéressent, via une requête XQuery.

Affinage de la requête 1/2

Affinage de la requête 2/2 (facultatif)

Affichage en HTML

On va maintenant transformer ce XML expurgé en une page HTML, à l'aide d'une feuille de style XSLT.

CSS