Utiliser galax (sous linux)

galax-run requete.xq (renvoie la réponse à la requête du fichier .xq à l'écran)

galax-run requete.xq -output-xml reponse.xml (renvoie la réponse à la requête du fichier .xq dans le fichier .xml)

galax-run -help (l'aide)

Etape 1: Requêtes simples

Vous pouvez utiliser (et compléter) les fichiers Artistes.xml et Films.xml

Ecrivez les requêtes qui répondent aux questions suivantes en construisant un nouveau cadre XML autour :

0. NOM et PRENOM des acteurs du film "Vertigo" dans un nouveau document XML.

for $f in document("Films.xml")//FILM
where $f/TITRE="Vertigo"
return
<ACTEURS> {
for $a in $f//ROLE
return
<ACTEUR>
<NOM> { $a/NOM } </NOM>
<PRENOM> { $a/PRENOM } </PRENOM>
</ACTEUR>
}
</ACTEURS>

1. Tous les titres de films.

2. Tous les titres de films triés par ordre alphabétique.

3. Les titres des films d'horreur.

4. Le résumé d'Alien.

5. Combien il y a de titres de films dans le document (fonction count() ).

6. Les titres des films avec James Stewart et Kim Novak.

7. Les films qui ont un résumé.

8. Les films qui n'ont pas de résumé.

9. Le rôle joué par Harvey Keitel dans le film Reservoir dogs.

10. Les titres des films qui contiennent un 'A' (fonction contains("chaine de caractère") ).

Etape 2: Requêtes avec jointures et requêtes complexes

0. Le metteur en scène du film Eyes Wide Shut.

<ARTISTE>
  {
    for
      $f in document("Films.xml")//FILM,
      $ms in document("Artistes.xml")//ARTISTE
    where
      $f/MES/@idref=$ms/@id and $f/TITRE="Eyes Wide Shut"
    return
      ($ms/ACTNOM,$ms/ACTPNOM)
  }
</ARTISTE>

1. Les films où le metteur en scène participe comme acteur.

2. La liste des acteurs, triée par ordre alphabétique (nom et prénom), avec la liste des films dans lesquels il a joué.

3. Tous les films dans lesquels a joué le même couple d'acteurs (assez compliquée...).