...
Dans le cadre de la gestion des publications scientifiques et de l'interaction d'ORI-OAI avec la plateforme HAL, les modules MD-EDITOR, SEARCH ORI-OAI-md-editor et ORI-OAI-search s'appuient sur des vocabulaires générés à partir des référentiels HAL.
Afin de limiter la dépendance directe d'ORI-OAI vis-à-vis de services extérieurs, le mécanisme de provider providers du module VOCABULARY ORI-OAI-vocabulary n'a pas été utilisé pour générer dynamiquement et régulièrement les vocabulaires à partir des référentiels HAL.
En contrepartie, la démarche suivante est proposée :
- ORI-OAI-VOCABULARY vocabulary 1.7.0 fournit une version de ces vocabulaires comme vocabulaires statiques officiels (répertoire official, voir ici) :
Code Block |
---|
title | Liste des vocabulaires générés à partir des référentiels HAL |
---|
|
dcfr_affiliations.xml
dcfr_audiences.xml
dcfr_distant_embargos.xml
dcfr_files_formats.xml
dcfr_labs_addresses.xml
dcfr_labs_countries.xml
dcfr_labs_names.xml
dcfr_labs_short_names.xml
dcfr_reviews.xml
dcfr_subjects.xml
dcfr_types_publi.xml
|
- ORI-OAI-VOCABULARY vocabulary 1.7.0 fournit un script python de une archive jar exécutable dédiée à la génération de ces vocabulaires (utils/misc/generate/get_ws_ori-oai-ext-hal-vocab.pyjar)
Warning |
---|
Il incombe donc aux établissements gérant leurs publications scientifiques avec ORI-OAI de mettre à jour leurs vocabulaires au moyen de ce scriptcette jar. |
Utilisation
...
de la jar ori-oai-ext-hal-vocab.jar
Le plus simple est d’exécuter la target Ant fournie avec le module ori-oai-vocabulary. Donc à la racine des sources de ce dernier, exécuter :
Code Block |
---|
ant gen-hal-vocabs
|
Il est bien sûr également possible d'appeler la jar directement en ligne de commande de la manière suivante :
Code Block |
---|
java -Xms256m -Xmx256m -jar ori-oai-ext-hal-vocab.jar
|
Warning |
---|
Le processus de génération des vocabulaires est long. À titre d'exemple, sur une machine dotée de 8GB de mémoire vive et d'un processeur Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz, il dure une quarantaine de minutes. |
Certains des vocabulaires listés ci-dessus sont susceptibles d'évolutions fréquentes. C'est le cas par exemple des vocabulaires issus des référentiels de laboratoires (dcfr_labs_*), de tutelles (dcfr_affiliations) ou de revues (dcfr_reviews). Pour chacun de ces vocabulaires, on donne ci-dessous la ligne de commande nécessaire à sa génération.
Info |
---|
Le script get_ws_vocab.py étant écrit en python, il nécessite bien sûr une installation fonctionnelle de python sur la machine où seront générés les vocabulaires. Notez que ce script fait appel aux modules SOAPpy et lxml qui ne sont pas fournis avec les distributions python. Il faudra donc prendre soin d'installer également ces modules. |
Info |
---|
Une description des paramètres à passer au script get_ws_vocab.py peut être obtenue avec la ligne de commande suivante : Code Block |
---|
get_ws_vocab.py --help
|
|
Warning |
---|
La génération des vocabulaires de tailles importantes (dcfr_labs_*, dcfr_affiliations, dcfr_reviews) est un processus long ! Pour le seul vocabulaire dcfr_affiliations, il peut prendre environ 45 minutes (test effectué sur une machine Intel i7-720QM, 8Go RAM) Mais cela est essentiellement dû aux nombreux appels web services qui y sont réalisés ; par conséquent, ce même processus reste peu gourmand en ressources mémoire et cpu. |
Commandes de génération des vocabulaires HAL
Code Block |
---|
title | dcfr_affiliations.xml |
---|
|
get_ws_vocab.py -l fr -n "Affiliations des laboratoires HAL" -i hal_affis -M getRefLab_byId -K knownLabid -L affiliation -G id:affi -B knownLabid -P getRefLab -Z '' "http://hal.archives-ouvertes.fr/ws/ref.php?wsdl" /repertoire/dcfr_affiliations.xml
|
Code Block |
---|
|
get_ws_vocab.py -l "fr" -n "Noms des laboratoires HAL" -i hal_labs_names -M getRefLab_byId -K knownLabid -L name -B knownLabid -P getRefLab -Z '' "http://hal.archives-ouvertes.fr/ws/ref.php?wsdl" /repertoire/dcfr_labs_names.xml
|
Code Block |
---|
title | dcfr_labs_short_names.xml |
---|
|
get_ws_vocab.py -l "fr" -n "Sigles des laboratoires HAL" -i hal_labs -M getRefLab_byId -K knownLabid -L shortName -B knownLabid -P getRefLab -Z '' "http://hal.archives-ouvertes.fr/ws/ref.php?wsdl" /repertoire/dcfr_labs_short_names.xml
|
Code Block |
---|
title | dcfr_labs_countries.xml |
---|
|
get_ws_vocab.py -l "fr" -n "Pays des laboratoires HAL" -i hal_labs_countries -M getRefLab_byId -K knownLabid -L pays -B knownLabid -P getRefLab -Z '' "http://hal.archives-ouvertes.fr/ws/ref.php?wsdl" /repertoire/dcfr_labs_countries.xml
|
Code Block |
---|
title | dcfr_labs_addresses.xml |
---|
|
get_ws_vocab.py -l "fr" -n "Adresses des laboratoires HAL" -i hal_labs_addresses -M getRefLab_byId -K knownLabid -L address -B knownLabid -P getRefLab -Z '' "http://hal.archives-ouvertes.fr/ws/ref.php?wsdl" /repertoire/dcfr_labs_addresses.xml
|
Code Block |
---|
|
get_ws_vocab.py -l "fr" -n "Hal Reviews" -i dcfr_reviews -M getRefReview_byId -K ISSN -L name -B id -P getRefReview -Z '' "http://hal.archives-ouvertes.fr/ws/ref.php?wsdl" /repertoire/dcfr_reviews.xml
|