Bib2HAL ou comment faciliter le dépôt dans HAL

Ce billet est un retour d’expérience à la suite d’une importante pratique d’import par lots de références dans HAL, au début (en 2011) par des versements en XML puis (depuis 2013) par des imports en BibTex grâce à Bib2HAL, outil en ligne développé par l’INRIA.

L’idée de départ était de soulager les chercheurs qui exprimaient ne pas avoir le temps de procéder eux-mêmes au dépôt de leurs travaux, tout en promettant néanmoins de fournir le full-text si le travail de saisie des métadonnées était déjà effectué. Nous avons réalisé une enquête auprès des chercheurs de notre établissement en 2014 et la question “Si on saisit pour vous dans HAL toutes les métadonnées d’un de vos articles, irez-vous ensuite y ajouter le texte intégral ?“ a généré un oui massif à 71 %. Après des centaines d’imports de références seules et quasiment aucun full-text récupéré, nous avons modéré cette pratique en la cantonnant aux articles dont le recensement nous est demandé par ailleurs.

Depuis la nouvelle version de HAL et un partage plus simple de la propriété d’un dépôt, mais surtout depuis très récemment la possibilité d’importer une référence avec Bib2HAL et d’en partager simultanément la propriété, nous trouvons de nouveau un sens à cette démarche et aussi un peu d’espoir pour que davantage de textes intégraux soient ajoutés.

Par ailleurs, nous avons vu quelques collègues renoncer, pensant que c’était trop complexe, ce billet, nous l’espérons, fera la démonstration du contraire.

 

La collecte et la préparation des données

L’étape préalable est bien entendu la collecte des références dans un logiciel de gestion de références bibliographiques : depuis des sites d’éditeurs grâce aux connecteurs de Zotero, par exemple, par des saisies manuelles et même par la récupération depuis un document texte aidé de l’outil magique Anystyle.io.

Il faut ensuite préparer les données afin de générer un fichier au format BibTex qui puisse être traité par Bib2HAL. Pour cette étape, nous n’avons trouvé qu’EndNote pour paramétrer très facilement cet export. Toutes les spécificités du fichier BibTex attendu sont présentées de façon limpide ici et il faut donc établir une correspondance entre les champs EndNote et les balises BibTex pour que ces dernières soient alimentées correctement.

Les champs BibTex standards (Année, Auteur, Titre etc…) sont bien sûr alimentés automatiquement ; pour les champs spécifiques de HAL (notamment Audience, Comité de lecture, Propriété…), il faut décider d’un « champ d’accueil » dans EndNote. Par exemple, pour la métadonnée Audience, nous avons décidé de mettre sa valeur dans le champ Notes.

Si les références ont été collectées depuis des sites d’éditeurs ou des bases bibliographiques, un nettoyage s’impose et les fonctionnalités de rechercher-remplacer d’EndNote nous sont précieuses :

  • pour séparer les mots-clés par des virgules (et non pas des marques de paragraphes, par exemple) ;
  • pour mettre la langue sur 2 lettres (et non pas en entier) en respectant la norme ISO 639-1 ;
  • pour purger le champ Notes et le compléter avec la valeur « international » appliquée ainsi par défaut à toutes les références ; nous basculons ensuite manuellement la valeur à « national » pour les rares références concernées ;
  • pour purger le champ URL afin d’éviter, entre autres, que l’usager soit mené vers une page en accès restreint.

Les métadonnées indiquant si la revue est à comité de lecture ou s’il s’agit de vulgarisation pourraient aussi être associées à des champs EndNote, mais comme nous n’importons que des articles de non-vulgarisation, parus dans des revues à comité de lecture, nous avons décidé de mettre leur valeur respective en dur dans la feuille de styles. Ceci étant, Bib2HAL possède la fonctionnalité très puissante de pouvoir vérifier et même compléter les valeurs manquantes de certaines métadonnées, typiquement ces 2 dernières.

Il reste une étape chronophage mais que nous jugeons importante dans la démarche : le partage de propriété. La balise x-onbehalfof a été ajoutée il y a quelque temps pour renseigner les contributeurs connus de HAL avec qui on souhaite partager le dépôt. A sa mise en œuvre, la valeur attendue était le nom d’utilisateur, mais cette donnée n’est accessible que par les administrateurs. Désormais, il est possible de mettre l’identifiant d’un contributeur ou propriétaire, et cette donnée est publique. Il reste donc à trouver cet identifiant pour alimenter la métadonnée contributorId_i ou owners_i via la balise x-onbehalfof .

Pour cela nous avons paramétré une requête dans HAL via l’API ; elle permet d’afficher l’ID convoité et d’autres informations de contexte pour être sûr de ne pas se tromper de personne :

http://api.archives-ouvertes.fr/search/?fq=contributorFullName_t:"nom_auteur"&fl=halId_s,authLastNameFirstName_s,contributorId_i,owners_i,contributorFullName_s,labStructName_s

Il s’agit de chercher parmi les contributeurs existants le nom d’un des auteurs de la référence traitée (en rouge, alimenté par des copier-coller). Le résultat est plus facile à analyser avec l’extension JSONView (pour Chrome ou Firefox) qui formate le résultat retourné au format JSON en l’affichant de manière plus conviviale (couleurs, indentations…).

Si un identifiant existe bien, nous le mettons dans le champ Author address d’EndNote qui viendra alimenter la balise x-onbehalfof à l’export. Nous ne cherchons que les identifiants des auteurs que nous « connaissons », ou plus précisément qui relèvent d’un laboratoire de notre établissement. Si un autre auteur veut lui aussi la propriété du dépôt, il pourra évidemment nous en faire la demande via HAL, a posteriori.

Si la méthode fait ces preuves, nous envisageons de mettre en place un tableur dynamique pour récupérer les informations de façon automatisée. Nous pensons qu’il est crucial de passer du temps sur ce partage de propriété qui constitue une incitation à l’ajout du full-text.

C’est ainsi que pour le type de document Journal article dans EndNote, nous avons fabriqué le modèle d’export ou style suivant pour le type @article de HAL :

@article{Record Number,
|   `author = `{Author},
|   `title = `{Title},
|   `doi = `{DOI},
|   `journal = `{Journal},
|   `volume = `{Volume},
|   `url = `{URL},
|   `number = `{Issue},
|   `pages = `{Pages},
|   `abstract = `{Abstract},
|   `x-keywords = `{Keywords},
|   `year = `{Year},
|   `x-audience = `{Notes},
|   `x-onbehalfof = `{Author Address},
|   `x-popularlevel = `non,
|   `x-peerreviewing = `oui,
|   `x-language = `{Language}

Concrètement, dans EndNote, il est simple d’éditer le style existant d’export BibTex et de le modifier : Menu Edit/Output Styles/Edit « BibTex Export », puis la section Templates. Pour le type de document correspondant aux articles, la chaîne ci-dessus suffit.

Voici d’autres exemples de configurations possibles :

– pour un ouvrage

@book{Record Number,
|   `author = `{Author},
|   `title = `{Title},
|   `publisher = `{Publisher},
|   `x-publicationlocation = `{Place Published},
|   `volume = `{Volume},
|   `edition = `{Edition},
|   `isbn = `{ISBN},
|   `x-audience = `{Notes},
|   `x-language = `{Language},
|   `x-onbehalfof = `{Author Address},
|   `series = `{Series Title},
|   `abstract = `{Abstract},
|   `keywords = `{Keywords},
|   `pages = `{Number of Pages},
|   `year = `{Year}

– pour un chapitre d’ouvrage

@inbook{Record Number,
|   `author = `{Author},
|   `title = `{Title},
|   `booktitle = `{Book Title},
|   `editor = `{Editor},
|   `series = `{Series Title},
|   `publisher = `{Publisher},
|   `x-publicationlocation = `{Place Published},
|   `volume = `{Volume},
|   `x-onbehalfof = `{Author Address},
|   `edition = `{Edition},
|   `x-audience = `{Notes},
|   `x-language = `{Language},
|   `pages = `{Pages},
|   `abstract = `{Abstract},
|   `keywords = `{Keywords},
|   `year = `{Year}

– pour la direction d’un ouvrage

@proceedings{Record Number,
|   `author = `{Editor},
|   `title = `{Title},
|   `publisher = `{Publisher},
|   `pages = `{Number of Pages},
|   `x-publicationlocation = `{Place Published},
|   `volume = `{Volume},
|   `edition = `{Edition},
|   `series = `{Series Title},
|   `x-audience = `{Notes},
|   `x-onbehalfof = `{Editor Address},
|   `abstract = `{Abstract},
|   `keywords = `{Keywords},
|   `year = `{Year},
|   `x-popularlevel = `non,
|   `x-language = `{Language}

– pour un rapport

@techreport{Record Number,
|   `author = `{Author},
|   `title = `{Title},
|   `institution = `{Institution},
|   `x-audience = `{Notes},
|   `number = `{Report Number},
|   `x-reporttype = `{Type},
|   `abstract = `{Abstract},
|   `keywords = `{Keywords},
|   `year = `{Year},
|   `pages = `{Pages},
|   `x-language = `{Language}
Selon les besoins, les dépôts peuvent être bien plus riches si on alimente davantage de balises : projets ANR ou européens, ou encore mots-clés MESH (voir ici les équivalences avec les métadonnées de HAL). Il est même possible de déposer le texte intégral en indiquant l’URL du PDF à déposer.

 

Le traitement dans Bib2HAL

L’objectif n’est pas ici de faire un tutoriel d’utilisation de Bib2HAL puisque l’aide en ligne est suffisamment précise, mais plutôt d’en présenter les fonctionnalités les plus séduisantes à nos yeux. Les 3 grandes étapes sont les suivantes :
  • Eliminer les doublons : c’est une étape obligatoire qui évite de charger dans HAL des références déjà déposées par d’autres. Parfois le doublon est indéniable, notamment lorsqu’il s’agit de DOIs identiques, parfois, sur des références lacunaires, le repérage de 2 titres identiques, même pour un même type de document, n’est pas forcément la preuve d’un doublon. Par exemple, 2 communications au titre identique mais dans 2 conférences différentes. Bib2HAL signale les doublons potentiels et c’est à l’utilisateur de valider ou non la suggestion.
  • Saisir les affiliations : Bib2HAL propose de générer automatiquement les affiliations des auteurs, et même d’apposer l’idHAL, s’il existe. Cette fonctionnalité est d’une très grande aide : Bib2HAL propose l’affiliation qu’il pense être la bonne pour l’auteur, en tenant compte notamment de la date de publication et de ce qui existe déjà dans HAL. Il convient ensuite de procéder à une vérification scrupuleuse. Nous procédons toujours par laboratoire, avec un lot qui lui est entièrement dédié, ce qui est plus simple pour corriger les affiliations des auteurs.
  • Saisir les métadonnées : là encore, Bib2HAL peut aider en vérifiant les métadonnées renseignées dans le fichier BibTeX et surtout, comme nous l’avons dit plus haut, en générant des valeurs par défaut pour les métadonnées manquantes.
Ces 3 étapes sont parfaitement identifiées dans l’interface, l’utilisateur connaît toujours l’état d’avancement de son travail, il peut s’arrêter à tout moment et reprendre plus tard.
Bib2HAL_etapes
A noter enfin que l’import peut se faire dans une instance spécifique de HAL (son portail institutionnel, par exemple) et avec le tampon d’une ou plusieurs collections. L’authentification à l’outil en ligne se fait de la même manière que sur HAL via le Service Central d’Authentification.

 

Quelques difficultés, mais un avenir prometteur

Du point de vue technique, l’interface de Bib2HAL est très bien faite et permet d’aller vite sur des tâches pourtant répétitives ; c’est en amont, dans la préparation des données que résident quelques difficultés.
Tout d’abord, nous aurions préféré pouvoir exporter les données depuis Zotero, un outil libre, plutôt que depuis EndNote pour lequel il faut acquérir une licence. Zotero est aussi l’outil auquel nous formons notre public cible. Mais un export BibTex depuis Zotero nécessite davantage d’ajustements et de corrections manuelles dans le fichier exporté.
Par ailleurs, si pour la plupart des types de documents il est facile de faire la correspondance entre un champ EndNote et l’équivalent attendu par Bib2HAL, pour les communications, il faut travailler manuellement au niveau des champs de date de début et date de fin de conférence pour les mettre au format AAAA-MM-DD, format qu’on obtient rarement lors de la collecte de données depuis une autre base, ou lors d’une saisie manuelle par l’auteur.

 

Au-delà de la technique, il faut aussi se poser la question de savoir si ce n’est pas mal de déposer à la place des auteurs. Évidemment, il serait préférable que l’auteur procède lui-même au dépôt de sa production avec le désir de la partager avec le plus grand nombre. Mais l’expérience montre que tous les chercheurs se sont pas habités par cette volonté. Sans entrer davantage dans le débat, il faut voir cette possibilité d’import par lots comme un service à rendre aux chercheurs, pour leur éviter les déclarations multiples et les encourager ainsi à partager les textes intégraux.
On pourrait même imaginer pousser le dispositif encore plus loin en automatisant la collecte des données depuis un site d’éditeur ou une base bibliographique, en alimentant automatiquement HAL, puis en avertissant les chercheurs qu’il ne leur reste plus qu’à rajouter le texte intégral (si celui-ci n’a pas lui aussi été récupéré lors du moissonnage, dans l’hypothèse où l’éditeur l’autorise). Ces dispositifs existent déjà pour alimenter une archive ouverte ou un CRIS ; on trouve des exemples plus ou moins avancés sur cette page (au milieu de « workflows manuels »…). On trouve même des messages d’Elsevier (tweet ou billet) incitant à exploiter l’API de Scopus ou de ScienceDirect pour récupérer les métadonnées et peupler ainsi une archive institutionnelle dont les notices renvoient vers les textes intégraux (auxquels on accède ou pas, selon les abonnements dont on dispose). Techniquement, c’est sans doute au niveau du repérage des auteurs d’une même institution via les lignes d’affiliations que l’automatisation doit s’avérer limitée, alors que Bib2HAL l’a surmontée avec sa fonctionnalité de prédiction.
En attendant ce niveau d’interopérabilité, nous continuerons à faire quelques imports d’articles pour faire gagner du temps aux chercheurs ; nous attendons aussi avec impatience les avancées déjà annoncées par l’INRIA qui prévoient d’avoir en source des fichiers dans un autre format que du BibTex, peut-être qu’une sortie depuis Zotero sera alors envisageable plus facilement. Cela pourrait même conduire à l’autonomie des chercheurs depuis leur propre outil de gestion de références et de fichiers associés.

 

Photo credit: Serge.By. via Foter.com / CC BY
[Photo en une du Kunsthofpassage (Dresde)  : Serge.By. via Foter.com / CC BY]

 

Citer ce billet : Bordignon F., "Bib2HAL ou comment faciliter le dépôt dans HAL," in Carnet'IST, 09/02/2016, https://carnetist.hypotheses.org/494. Consulté en ligne le 27/09/2016.

Vous aimerez aussi...

1 réponse

  1. 14/09/2016

    […] Avant d’entamer la lecture de ce billet, je vous conseille très vivement d’aller voir l’article de Frédérique Bordignon sur le fonctionnement de l’application Bib2HAL. […]

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *