D’APOGEE à STAR : Automatisation de l’export sous linux

I was in space !!! - Par *Katch - Flickr - CC BY-NC-ND 2.0
I was in space !!! – Par *Katch – Flickr – CC BY-NC-ND 2.0

À Clermont-Ferrand le dépôt des thèses numériques dans STAR est officiel depuis Septembre 2010 pour l’université Blaise Pascal et depuis Janvier  2011 pour l’université d’Auvergne. Pour faciliter le dépôt des nouvelles thèses, un lien a été établi entre APOGEE et STAR et éviter ainsi une double saisie des informations administratives. Les données d’APOGEE sont extraites, puis mises en forme afin d’être importées dans STAR.

Cette méthode n’a rien d’originale et est notamment utilisée  à l’université de Tours qui a généreusement transmis sa méthode d’export/import sur la liste des correspondants STAR. Cette procédure a été retranscrite à l’université de Metz également. Nous l’avons quelque peu modifiée afin de simplifier cette routine effectuée chaque semaine.

Quelques fichiers à adapter

Le script d’extraction

Ce programme a été affiné par un informaticien de notre centre de ressources informatiques. Seules les informations des nouveaux doctorants (depuis la dernière extraction) sont aspirées. L’étape de suppression des doctorants déjà présents dans STAR est ainsi évitée.

Les données issues de l’export

L’étape d’édition du fichier CSV est encore nécessaire. Ceci pourrait être automatisé en adaptant la feuille de style XSL mais pour l’instant le jeu n’en vaut pas la chandelle. En pratique, il arrive que le nom du président du jury ne soit pas saisi dans APOGEE ce qui empêche l’import dans STAR (ce champ étant requis dans la recommandation TEF).

La feuille de style XSL

En plus de l’adaptation du numéro d’autorité Sudoc, on a du changer l’en-tête XML et une balise XSL pour l’adapter à la version de saxon. Il faut donc remplacer la ligne :

<?xml version="1.0" encoding="UTF-8"?>

par

<?xml version="1.1" encoding="UTF-8"?>

puis la ligne

<?xsl:result-document href="out/{$ETABLISSEMENT}_{CODE_ETUDIANT}.xml"?>

par :

<?xsl:document href="resultats/{$ETABLISSEMENT}_{CODE_ETUDIANT}.xml"?>

Un script bash pour générer les thèses

Ces modifications faites, un petit script (disponible en bas de cette page) a été créé pour automatiser la transformation du fichier d’export en fichiers de thèses XML conformes à la recommandation TEF.
Sous linux, il n’y a pas de problème d’encodage entre l’ANSI et l’UTF-8 (ce dernier format étant natif), on peut alors lancer notre script qui créera les fichiers des thèses dans un répertoire dédié.
Ce petit programme utilise le logiciel ffe (flat file extractor) pour transformer le CSV en XML, puis saxon (comme à Tours) pour la transformation en TEF.

Pour l’utiliser sous Ubuntu, les paquets libsaxon-java et ffe doivent être installés. La suite des opérations se déroule en ligne de commande.

  •   on place le fichier CSV issu de l’extraction à la racine du répertoire du script.
  •   on place le fichier de transformation XSL dans le répertoire « scripts »
  •   on execute la ligne de commande suivante :
$ ./ star.sh theses.csv scripts/feuilleXSL.xsl

Les thèses seront alors disponibles dans le répertoire « résultats » et prêtes pour l’import par mail.

Vous pouvez télécharger  le script bash pour STAR au format zip.


Laisser un commentaire

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