mardi 16 octobre 2018

Comment vérifier que ses publications sont bien publiées dans HAL (à partir de leur DOI)

Préambule

HAL est mis en avant par le CNRS et l'HCéRES pour déposer les listes de publications affiliées à un structure. De même, pour les divers rapports (compte rendu d'activité à vague et demi-vague, CRAC, RIBAC, évaluation ANR, ERC, etc). Les chercheurs sont amenés à très régulièrement faire état de leur liste de publication sur une période donnée.

En partant que l'étape HAL est imposée à un moment ou un autre, autant faire en sorte que le travail soit fait une bonne fois pour toute et donc l'utiliser jusqu'au bout! 

S'il y avait de nombreuses réticences à une époque dues à la lourdeur du processus de dépôt, cela a été amélioré significativement au cours des années. Si cela ne reste pas une partie de plaisir, c'est devenu maintenant raisonnable grâce à un allègement significatif de la saisie manuelle nécessaire.

Comme il y a de nombreux moyen d'avoir une liste personnelle de publications à jour, il est possible de s'en servir pour vérifier si tout est bien fait sur HAL. Je pars du postulat que la majorité des activités de publication correspondent à des articles dans des journaux scientifiques à comité de lecture « sérieux » donc avec un DOI au minimum.

Obtenir sa  liste de DOI pour faire les vérifications

Il faut donc commencer par... avoir une liste de DOI. Je suis parti du principe que chaque chercheur a une liste à jour de ses publications. Seulement, cette liste n'est en général pas directement disponible car stockée sous une autre forme. J'ai donc créé deux scripts :

  • Un premier script à partir d'un fichier texte où j'ai supposé que chaque article était indiqué sous une forme «DOI:XX.XXXX/XXXXXX» avec rien derrière sur la ligne. (j'ai inclus les variations possibles en terme d'espace ou non avant et après les deux point ainsi que le DOI qui peut être une combinaison quelconque de majuscules et minuscules). Cela permet de récupérer tous les DOI avec un DOI par ligne.
  • Un deuxième script qui lui permet d'extraire une liste de DOI à partir d'un fichier .bib.
La majorité des cas permet de se rapporter à une de ces deux situations (Zotero, endnote, mendeley et research gate assurent tous des exports au format bib, csv ou texte.). C'est également possible via un researcherid. Pour Orcid, l'export n'est pas encore trop au point, mais je suppose que quelqu'un va l'implémenter un jour ou l'autre.


Vérifier les dépôts dans HAL à partir de sa liste de DOI



Une fois cette liste obtenue, il suffit de cliquer sur le bouton correspondant pour lancer le script suivant qui permet d'entrer la structure à laquelle on est affilié. Il est bien évidemment possible de sauter l'étape précédente et coller directement la liste de DOI dans le cadre correspondant (depuis un fichier excel par exemple). Pour trouver ce numéro, il faut aller dans AUréHAL, taper le nom de sa structure (son labo), le plus simple est souvent de taper son numéro d'UMR.




Le numéro indiqué sur fond gris est celui qui nous intéresse.

Une fois les DOI et la structure d'affiliation indiqués, c'est parti !

Il y a trois types de résultats :

  1. Les résultats absents de HAL, il va falloir faire l'ajout directement, pour cela, j'ai mis un champ de formulaire, il suffit de cliquer dessus pour que le DOI soit copié dans le presse-papier, il n'y a plus qu'à faire le dépôt sur HAL. L'étape la plus longue est de corriger/trouver les affiliations. Si vous avez créé votre idHal, ça ira un peu plus vite pour vous, de même si vos-co-auteurs ont créé le leur. HAL fait maintenant un peu mieux en essayant de trouver correctement l'affiliation, mais comme c'est assez compliqué, il faut bien faire attention à vérifier ça.

    C'est l'étape la plus longue. Personnellement, je regarde pour les auteurs français et je ne met rien pour les auteurs étrangers qui ont peu de chance de vouloir corriger les dépôts que vous faites dans HAL. Bien évidemment, il est préférable de le faire correctement pour tout le monde, mais quand il y a plusieurs centaines de notices à traiter, il faut faire des compromis...

    Il peut y avoir des cas particuliers où le dépôt ne marche pas très bien : les colloques où il manque généralement la date (à rentrer) et les chapitres de livre qui ont un DOI mais ne sont généralement pas dans CrossRef (donc pour lesquels l'importation de méta-données ne fonctionne pas).
  2. Les résultats dans HAL mais non rattachés à votre labo, il faut alors demander la propriété. Il y a un lien direct sur la référence HAL et il est alors possible de faire la demande directement.
    Si jamais la demande n'aboutit pas, il ne faut pas hésiter à contacter le support qui règle généralement ça en moins d'un journée.
  3. Les publications déposées dans HAL avec au moins un auteur affilié à votre laboratoire (mais pas forcément vous !).

Aller un peu plus loin

Coloration syntaxique et liste d'auteurs affiliés à la structure

Pour mon laboratoire, j'ai créé une liste d'auteurs ayant des publications où au moins un auteur est rattaché au laboratoire. Pour cela, encore un petit script.  C'est un peu long et il faut mieux ne pas trop forcer en mettant l'identifiant d'une grosse structure pour ne pas faire exploser le serveur. La sortie est un peu plus basique et fait une sortie sous forme de deux tableaux javascript : un avec les noms d'auteurs, l'autre avec le nombre de publications correspondant. Le script limite à 3000 noms, ça peut sembler beaucoup, mais avec les thésards, les collaborateurs occasionnels, etc, ça monte vite. J'ai utilisé les données pour les coder en dur car la requête est très gourmande et il est déraisonnable de la faire dynamiquement pour créer le tableau de liste d'auteur à la volée pour chaque requête.

Une fois ces deux tableaux créés, je peux alors m'en servir pour colorer les entrées dans mon script pour mettre en valeur les auteurs qui publient souvent avec l'affiliation du laboratoire. Cela permet de rapidement pouvoir identifier les publications du laboratoire par rapport aux autres publications intruses. En effet, j'ai pu faire des import massifs via Scopus ou Web of Knowledge. Cependant, les recherches sur l'affiliation étant assez difficiles, il y a généralement des publications qui ne viennent pas de mon laboratoire. Pour utiliser les deux tableaux, il faut alors modifier le fichier "includes/HAL.js" en changeant les tableaux « Names » et « numPubli » et changer la valeur de « preferredAffiliation ».

Récupérer des données sur les publications hors HAL

Pour cela, j'utilise l'API de CrossRef qui permet d'avoir les auteurs et sur lesquels je peux faire de la coloration syntaxique.

Utiliser le script pour soi

Pour changer automatiquement l'affiliation il suffit de donner en paramètre dans l'URL l'affiliation : http://perso.ens-lyon.fr/martin.verot/HAL.php?affiliation=776 par exemple pour la structure 776. Idem pour la page permettant de récupérer la liste d'auteurs. Tout est fait en javascript sur les pages, donc il n'est pas forcément nécessaire de faire tourner les différents scripts sur un serveur. L'enregistrer sur son disque et l'ouvrir avec son navigateur suffit.

Vérifier que SON affiliation est la bonne pour chaque DOI

Je suis en train de créer un petit script pour ça...

Conclusion

Tout n'est pas parfait, mais cette petite série d'outils m'a permis de faire environ 200 dépôts et de vérifier plusieurs milliers de notices assez rapidement. N'hésitez pas à commenter l'article ou à m'écrire (mon adresse mail est visible sur cette page) si vous avez des commentaires ou questions.