Compte-rendu de la journée "Familiarisation avec les nouvelles API de HAL V3" le 25 février 2015

Valérie Beaugiraud, chargée de ressources documentaires à l'Institut d'Histoire de la Pensée Classique (UMR 5037 IHPC) et Emmanuelle Morlock, chargée de soutien aux projets d'humanités numériques du laboratoire Histoire et Sources des Mondes antiques (UMR 5189 HISoMA) ont participé à une journée de familiarisation sur les nouvelles API de HAL, proposée par l'équipe du CCSD.

Cette journée, organisée par le réseau d'administrateurs réseaux et système et de développeurs de la région Rhône-Auvergne ARAMIS, le 25 février 2015 au CCIN2P3 de Villeurbanne, a permis de comprendre la structure des données dans HAL V3 mais également les moyens d'interagir avec les services mis en place. 


Programme de la journée : http://aramis.resinfo.org/wiki/doku.php?id=ateliers:halv3

Proposition de navigation curl par une des organisatrices : http://liris.cnrs.fr/francoise.conil/atelier-hal-v3/
 

1. API SolR (Raphaël Tournoy)
Présentation : http://aramis.resinfo.org/wiki/lib/exe/fetch.php?media=ateliers:aramis-hal-v3-api-solr_25_02_2015.pdf
Documentation : http://api.archives-ouvertes.fr/docs/search

Le moteur d'indexation et de recherche utilisé par HAL est Apache Solr (lucene.apache.org/solr/) qui offre une API Rest. Par défaut le format des réponses est en JSON car le temps de réponse est meilleur. Mais Il est possible d'obtenir les réponses dans d'autres formats : XML, CSV, etc. via l'usage dans la requête du paramètre 'wt'.

Un système de file d'attente est utilisé dans la gestion des mises à jour qui enchaine indexation (1 machine) et réplication sur les 4 machines d'interrogation. En conséquence, dès qu'une mise à jour est effectuée sur une référence dans HAL ou dans auréHAL, l'indexation se réalise dans un délai de 60 s. à 2 min., tout au plus.

Les contenus accessibles via l'API de recherche HAL sont +/- toutes les métadonnées d'un dépôt, sous différents formats (BibTex, TEI, COinS, Endnote).

A noter : le texte intégral des pdf est indexé, mais pas stocké (on ne peut pas le récupérer via l'API).

On distingue les métadonnées pour la recherche (indexées), pour l'affichage (stockées), pour le tri et pour les facettes (listes de valeurs). Le tableau sur les types de champs donne toutes les spécifications (http://api.archives-ouvertes.fr/docs/search/schema/field-types).

Les requêtes nécessitent un client http. Le point d'entrée principal est http://api.archives-ouvertes.fr/search. On a également des points d'entrée par portail (http://api.archives-ouvertes.fr/search + '<instance>' ou collection : http://api.archives-ouvertes.fr/search + '<tampon>'.

Les principaux paramètres sont récapitulés sur un tableau du support de présentation.

La construction des facettes est un aspect très intéressant de l'API qui permet de limiter les résultats retournés et permet d'avoir un début de statistiques. Par exemple, pour avoir les auteurs affiliés à un laboratoire on pourra construire une facette sur le schéma suivant : identifiant + separateur + nom de la structure. Cf. exemples plus bas.

A noter :

  • les requêtes demandant le format JSON s'exécutent plus rapidement que pour le format TEI, pour lequel une transformation XSLT est appliquée.
  • seules les dernières versions des documents sont retournés par défaut. Si on veut retrouver les anciennes versions, il faut préciser le corpus.


2. API des référentiels HAL et AURéHAL (Hélène Gaboriaud)

Présentation : http://aramis.resinfo.org/wiki/lib/exe/fetch.php?media=ateliers:aramis-hal-v3-les-referentiels-hal_25_02_2015.pdf
Documentation : https://api.archives-ouvertes.fr/docs/ref

Toutes les listes de référentiels sont interrogeables et donc consultables.

Dans l'immédiat la gestion du reférentiel des projets européens est en cours via OpenAire.
A noter : dans la mesure du possible les référentiels ont été "sortis" de HAL. Par ex. c'est l'ANR qui gère directement la liste des projets financés.
 

3. Ateliers

Suite à un manque de temps, les ateliers n'ont pu avoir lieu, et seules quelques requêtes ont été réalisées.

Exemples : Rechercher les publications dont les auteurs sont affiliés au laboratoire LIRIS

*facet_prefix=2003_ (2003 étant l'identifiant du LIRIS dans auréHAL)
 http://api.archives-ouvertes.fr/search/?indent=true&rows=0&facet=true&facet.field=structHasAuthId_fs&facet.prefix=2003_

*même requête avec résultat affiché en XML
http://api.archives-ouvertes.fr/search/?indent=true&rows=0&facet=true&facet.field=structHasAuthId_fs&facet.prefix=2003_&wt=xml

*Augmenter le nombre de résultats : facet.limit car par défaut limité à 30.
 http://api.archives-ouvertes.fr/search/?indent=true&rows=0&facet=true&facet.field=structHasAuthId_fs&facet.prefix=2003_&facet.limit=10000&facet.mincount=1

*Avec l'IdHal : facet.field=structHasAuthIdHal_fs
http://api.archives-ouvertes.fr/search/?indent=true&rows=0&facet=true&facet.field=structHasAuthIdHal_fs&facet.prefix=2003_&facet.limit=10000&facet.mincount=1

A venir dans HAL :

  • Suggestion de dépôts (via repérage de documents déposés ailleurs)
  • alerte sur les "formes auteur"
  • Suggestion de mots clés (récupération d'entités nommées à l'intérieur du pdf), travail sur l'exposition des données de HAL dans le web des données
  • Utilisation de Grobid, pour extraire les données de citation et autre : https://github.com/kermitt2/grobid

 

5. TEI pour l'import HAL (Yannick Barborini)
Présentation : http://aramis.resinfo.org/wiki/lib/exe/fetch.php?media=ateliers:aramis-hal-v3-le-format-tei_25_02_2015.pdf
Schéma XML : http://api.archives-ouvertes.fr/documents/aofr-sword.xsd


Exemples:   
Article dans une revue : http://api.archives-ouvertes.fr/documents/art.xml
Thèse : http://api.archives-ouvertes.fr/documents/these.xml
Communication : http://api.archives-ouvertes.fr/documents/comm.xml


Dans la version v2, HAL avait défini un schéma XML propre d'import dans HAL. Dans la v3 a été défini avec l'aide de Laurent Romary un schéma TEI-XML pour réaliser les imports et exports en XML dans HAL. 
Chaque dépôt ou référence présent dans HAL est donc accessible au format TEI en ajoutant à l'URL le suffixe /tei :https://halshs.archives-ouvertes.fr/hal-01120418v1/tei

Attention le fichier TEI à l'export est plus complet qu'à l'import.


6. Import SWORD (Laurent Capelli)
Présentation : http://aramis.resinfo.org/wiki/lib/exe/fetch.php?media=ateliers:aramis-hal-v3-import-sword_25_02_2015.pdf
Documentation : http://api.archives-ouvertes.fr/docs/sword

Anciennement dans la v2, import et export via SOAP.

Les commandes peuvent être passées par curl ou bien par le client web disponible à l'adresse suivante : https://api-preprod.archives-ouvertes.fr/sword/upload/.
Il est nécessaire d'avoir au préalable un compte déposant dans HAL.

 

Compte-rendu réalisé par Emmanuelle Morlock (HISOMA) et Valérie Beaugiraud (IHPC)

Mots clés: