Notes Hélène

De HAL
Sauter à la navigation Sauter à la recherche

Notes prises sur la DOC recherche HAL pour mémoire : https://api.archives-ouvertes.fr/docs/search

  • Il faut au moins un paramètre dans l'URL pour faire une requête, ce paramètre est q
  • Ce paramètre contient la requête à effectuer.
  • Le paramètre doit être suivi du nom du champ dans lequel rechercher puis de la valeur à chercher.
  • Si le nom du champ dans lequel chercher est omis, par défaut la recherche porte sur l'index text qui contient les valeurs de plusieurs champs.
  • Pour chercher dans un champ particulier la syntaxe est champ:terme
  • Pour chercher plusieurs champs, utiliser (terme1 terme2). L'opérateur booléen par défaut est AND
  • Pour OR : Utiliser (terme1 OR terme2)
  • Pour une phrase : Utiliser les guillemets doubles "phrase"
  • Troncature ? * ~ proximité

//

  • Le format de réponse par défaut est JSON
  • Le format de réponse est spécifié par le paramètre wt : wt=json
  • liste des formats dans la doc. Ajouter indent=true pour indenter le format de réponse.

//

  • Par défaut seuls les champs docid et label_s sont retournés dans une réponse. Cependant tous les champs stockés peuvent être retournés dans le format de réponse
  • Le paramètre pour choisir les champs à retourner est fl. Les champs demandés doivent être séparés par le signe ,
  • Formats de sortie avec fl = JSON, XML et CSV uniquement
  • On peut utiliser le caractère * comme troncature de nom de champ, eg fl=cha*

*fl=* signifie tous les champs possibles //

  • Par défaut, les résultats sont triés par pertinence.
  • Le tri des résultats peut se faire sur n'importe quel champ en évitant les champs de type text (suffixe "_t") et les champs multi-valués qui donneront des résultats imprévisibles.
  • Le paramètre pour choisir les champs à retourner est sort + le sens de tri asc ou desc

//

  • Le paramètre pour ajouter des filtres est fq suivi de la requête servant au filtre : fq=submitType_s:file
  • Il est possible de faire des requêtes sur des intervalles avec cette syntaxe champ:[valeurDébut TO valeurFin]
  • valeur maximale = * + doc pour les spécificités des calculs de dates

//

  • Le nombre de réponses à retourner est définit par le paramètre rows .
  • Le nombre total de dépôt/notices ne change pas avec ce paramètres, seul le nombre de résultats effectivement retournés varie.
  • Par défaut les requêtes ne retournent que les 30 premiers résultats, le maximum autorisé est 10000. Si vous souhaitez plus de résultats vous devez utiliser la pagination.
  • Le paramètre &rows=0 peut permettre de ne retourner que le nombre de résultats et d'enlever les documents du corps de la réponse. Vous pouvez par exemple utiliser ce paramètre à des fins de statistiques ou si vous voulez retourner uniquement des facettes.

//

  • pagination : afficher 50 après les 50 1ers : start=50&rows=50
  • Curseurs : si vous devez parcourir plusieurs milliers de résultats, pour des raisons de performance il est fortement recommandé d'utiliser les curseurs

//

  • Les facettes sont des listes de termes extraits en fonction d'une requête.
  • On peut les utiliser pour avoir une liste de valeurs distinctes sur un champ donné.
  • Pour générer des facettes, il faut ajouter le paramètre facet=true à une requête.
  • Il faut ensuite ajouter les champs avec lesquel construire les facettes avec le paramètre facet.field=NomDuChamp à une requête.
  • facet.sort=index, count, prefix, contains (facet.contains.ignoreCase=true)
  • Pivots
  • plage de résultats

//

  • Vous pouvez obtenir vos résultats de requêtes groupés selon un critère de votre choix, à condition que le critère soit représenté par un champ non multivalué et de type string.