Requêtes sur ISTEX
Cette page présente des requêtes simples sur ISTEX dans un environnement Unix avec les commandes de la famille IstexGetCorpus.
Introduction
La plateforme ISTEX utilise le serveur de recherche Elasticsearch. Celui-ci est une application paramétrable qui s'appuie sur le moteur de recherche Lucene.
La compréhension d'une requête ISTEX avancée demande donc la compréhension de trois niveaux de fonctionnalités :
- le langage de requête du moteur Lucene syntaxe Lucene,
- le fonctionnement de l'application Elastichsearcb
- le paramétrage réalisé par l'INIST
Pour un premier contact avec l'api ISTEX, il est conseillé de démarrer avec un navigateur en s'appuyant sur la documentation associée.
Requête portant sur un seul terme
L’adaptation de cette documentation au contexte Unix cause quelques problèmes de conflit entre la syntaxe acceptée par le moteur Lucene et celle du shell Unix.
Pour une recherche sur un terme unique (Single Term), la formulation d'une requête se réduit à « -q term
». Exemples :
IstexGetCorpusSize -q rabelais
IstexFlashCorpus -q rabelais -s 20
IstexExplorCorpus -q rabelais -s 200 -d testRabelais
Le terme rabelais est alors recherché dans l'ensemble du document, indépendamment de la casse, ainsi les requêtes suivantes sont équivalentes :
IstexGetCorpusSize -q rabelais
IstexGetCorpusSize -q Rabelais
IstexGetCorpusSize -q rabelaiS
Requête avec des groupes de termes
Il est possible de poser des requêtes avec des groupes de termes avec un fonctionnement proche de celui de Google.
Dans les lignes de commande shell, il suffira de regrouper les termes entre des guillemets droits ( " ) ou double quotes. Attention, la requête envoyée à l'API ne contiendra pas ces caractères.
Pour sélectionner tous les documents contenant Rabelais ou Pantagruel ou Gargantua, il faudra écrire :
IstexGetCorpusSize -q "rabelais pantagruel gargantua"
En fait cette requête utilise de façon implicite l'opérateur booléen OU (OR en anglais dans la syntaxe Lucene). La requête précédente est donc équivalente à :
IstexGetCorpusSize -q "rabelais OR pantagruel OR gargantua"