Produire la liste des publications pour un laboratoire, une collection, un portail

HALSubscribe

Écrit par CCSD

Les outils d’export que vous souhaitez ne sont pas encore tous disponibles dans HAL (encore un peu de patience …) et vous devez fournir rapidement une liste des publications. Vous avez été plusieurs à solliciter le service support sur cette question qui a rédigé à votre intention ces quelques conseils pour faire votre export en format csv avec l’API, et pour l’exploiter dans un fichier word. La lecture de ce billet vous paraîtra sans doute rébarbative, mais il vous permettra de vous familiariser un peu avec les API.

Utiliser un fichier d’export csv dans Word : avez-vous pensé au publipostage ?

Le principe du publipostage est de créer un modèle de document Word dans lequel vous définirez la présentation que vous souhaitez : choix et ordre des champs, police, style, couleur, etc… en utilisant le fichier csv obtenu en export comme source (base) de données.

Vous choisissez les champs présents dans le fichier csv à mettre dans le fichier Word, en les ordonnant et les séparant comme vous le souhaitez. Puis vous ‘fusionnez’ les données de votre fichier csv avec le fichier modèle word ainsi constitué, ce qui vous donne un fichier Word ‘résultat’. Le fichier Word ‘modèle’ peut être enregistré pour être réutilisé avec d’autres données issues d’un autre export csv.

Vous aurez donc 3 fichiers :

  1.  un fichier csv qui contient des champs et des données dans chacun des champs exportés = fichier source de données (base de données),
  2.  un fichier Word qui est le fichier modèle, constitué en sélectionnant des champs de la source de données csv, avec une mise en page et un style personnalisé
  3.  un fichier résultats constitué par la fusion des deux précédents : import des données du fichier csv selon les caractéristiques définies dans le fichier modèle.

Comment faire :

  • Dans Word, ouvrir un nouveau fichier, qui sera le fichier modèle, puis choisir l’outil fusion et publipostage ou gestionnaire de publipostage (le nom de l’outil peut varier selon votre version de Word). Une barre d’outils ou un pop up apparaît avec des instructions.
  • Sélectionner un type de document (étiquettes, enveloppes, répertoire, catalogue) : choisir répertoire ou catalogue.
  • Sélectionner la liste des destinataires : c’est à cette étape qu’on choisit le fichier csv comme fichier source. Ouvrir la source de données en sélectionnant votre fichier d’export csv ; choisir un format Unicode.
  • Choix des champs présents dans le fichier source csv : vous faites glisser ou sélectionnez les champs proposés dans votre fichier word créé au départ, qui sera le modèle. Les champs peuvent être ordonnés comme vous le souhaitez, séparés par des séparateurs que vous choisissez (virgule, espace, point, etc…), puis vous pouvez choisir une police particulière, un style, des couleurs de police, etc.
  • Vous définissez à ce moment dans le fichier modèle un enregistrement type.
  • Vous insérez le séparateur des enregistrements aussi (ligne, saut de ligne, etc…)
  • Fusion des résultats : la fusion crée un autre fichier Word, le fichier de résultats ; cette action importe les données du fichier csv selon ce qui a été défini dans le modèle.

Le modèle peut ensuite être réutilisé.

Obtenir un fichier csv avec les champs souhaités : les API pas à pas

A savoir : La recherche avec les API est une URL. Par exemple, pour rechercher dans un portail : http://api.archives-ouvertes.fr/search/NOM_DU_PORTAIL/?q=

Ce qui donne par exemple pour le portail UPMC : http://api.archives-ouvertes.fr/search/upmc/?q=

La liste des champs est affichée dans la documentation des API pour la recherche sur la base et pour la recherche sur les référentiels.

Il existe plusieurs types de champs :

  • xxx_s : string, recherche exacte ou affichage
  • xxx_t : text, recherche similaire, « contient »
  • xxx_sci : sans casse/accents
  • xxx_i : nombre entier, recherche ou affichage
  • xxx_tdate : Date ISO 8601 (ex: 2013-01-31T23:12:01Z)
  • xxxDateD_i, xxxDateM_i, xxxDateY_i : date Day, ou Month, ou Year

Il existe plusieurs champs date :

  • defenseDate_tdate : date de soutenance
  • ePublicationDate_tdate : date de publication électronique
  • modifiedDate_tdate : date de modification du dépôt
  • producedDate_tdate date de publication
  • releasedDate_tdate : date de mise en ligne
  • submittedDate_tdate : date de dépôt
  • writingDate_tdate : date d’écriture

La syntaxe

  • Les paramètres sont séparés par &
  • Requête : q=CHAMP:valeur du champ (nom du champ deux points valeur du champ recherchée)
  • Utilisation des opérateurs booléens
  • Format de sortie : pour obtenir un fichier csv, il faut ajouter dans la requête wt=csv (d’autres formats de sortie existent : xml, xml-tei, json, rss). Seuls les formats json, xml et csv permettent de choisir les champs à retourner.
  • Choix des champs à retourner : fl=CHAMP1,CHAMP2,CHAMP3. Indiquer les champs séparés par une virgule. Ce sera le contenu de ces champs qui seront récupérés dans le fichier csv.

Attention : les champs de sortie doivent être des champs _s (champs d’affichage).

Dans les exemples ci-dessous, le format de sortie est le format xml (wt=xml). Vous pouvez ainsi visualiser les résultats plus facilement en faisant un copier/coller de l’url dans votre navigateur.

exemple 1 : chercher dans la collection CCSD les dépôts dont les auteurs sont Laurent Capelli et Christine Berthaud et contenant episciences dans le titre :

http://api.archives-ouvertes.fr/search/CCSD/?q=authFullName_t:’Laurent Capelli’ OR ‘Christine Berthaud’ AND title_t:episciences&wt=xml

exemple 2 : chercher les dépôts dans la collection UPMC avec actes de congrès (proceedings :1) et dont la ville de congrès était Lyon :

http://api.archives-ouvertes.fr/search/UPMC/?q=proceedings_s:1 AND city_t:lyon&wt=xml&fl=title_s, authFullName_s,docid,docType_s

Les champs de sortie sont le titre(title_s), l’auteur(authFullName_s), l’identifiant du dépôt(docid) et le type de document (docType_s). Le type de document affiché dans le fichier csv sera COMM pour tous les résultats.

exemple 3 :  Production de l’UPMC en 2015 :

http://api.archives-ouvertes.fr/search/UPMC/?q=producedDateY_i:2015&wt=xml

 exemple 4 : Production du CCSD entre 2000 et 2015 :

http://api.archives-ouvertes.fr/search/?q=producedDateY_i:[2000 TO 2015] AND structId_i:(413106 OR 184)&wt=xml

Il vaut mieux utiliser l’identifiant du laboratoire trouvé dans AuréHAL plutôt que le nom du labo qui peut être ambigu. Dans la requête ci-dessus, on demande la production de tout le CCSD, qu’il s’agisse de l’ancienne forme du CCSD (identifiant 184) ou de la nouvelle forme (identifiant 413106).

Utiliser les champs dans la recherche simple

Les requêtes proprement dites peuvent être utilisées directement dans HAL, dans la recherche simple.  Si vous tapez par exemple dans le formulaire de la recherche simple dans le portail UPMC: proceedings_s:1 AND city_t:lyon

Vous obtiendrez le même résultat que dans la recherche API ci-dessous :
http://api.archives-ouvertes.fr/search/UPMC/?q=proceedings_s:1 AND city_t:lyon&wt=xml

(attention aux filtres par défaut dans la recherche simple ; les supprimer)