Repository - Installation

Recommandation

Il existe plusieurs modes d'installation de ce module. Le mode recommandé est l'utilisation ori-oai-quick-install. Ceci vous permettra de déployer la suite ori-oai avec un minimum de personnalisation tout ceci en utilisant un seul fichier de configuration.

L'installation manuelle vous fera éditer manuellement différents fichiers afin de configurer au mieux votre application.

Il est préférable d'utiliser la première solution. En effet, celle-ci vous apportera un déploiement rapide de ORI-OAI sur un serveur de production avec une configuration de base. Vous pourrez toutefois après cette installation apporter toutes les configurations avancées que vous souhaitez à vos modules.

Reportez-vous à la documentation en ligne d'installation de ORI-OAI pour une installation centralisée avec ori-oai-quick-install.

Installation en mode "filesystem"

Par défaut, la configuration proposée utilise le module ORI-OAI-indexing, qui permet d'exposer les fiches indexées, qui sont soient issues du workflow, soit du moissonnage, et définit des dépendances à ces modules.

Dans un certain nombre de cas d'utilisation, rendre moissonnable un ensemble de fiches simplement en les mettant dans un répertoire donné est intéressant.

Parmi ces cas d'utilisation, on retiendra notamment le cas d'un système de référencement/indexation pré-existant que l'on souhaiterait rendre rapidement moissonnable.

Utilisé seul (mode standalone), ori-oai-repository permet de rendre moissonnable un répertoire contenant des fiches de métadonnées (LOM par exemple) ... Ce répertoire joue alors le rôle d'un entrepôt OAI-PMH.

L'installation et la configuration de ce seul module sont alors rapides !

Pour activer le mode standalone "File System", il faut suivre les étapes suivantes :

Rendre moissonnable un système pré-existant

On notera que quelque soit la solution envisagée, être capable de générer depuis ce système pré-existant des fiches XML dans le format souhaité (format manipulé usuellement par les entrepôts OAI-PMH) est une nécessité. Cela passe par l'élaboration d'une "moulinette" permettant l'export des informations en format XML d'un schéma donné.
Dans le cas d'un entrepôt OAI-PMH dédié aux ressources pédagogiques, le schéma sera le LOM (LOMFR / SupLOMFR).

  • Une fois que l'on sait faire cela, on peut alors envisager de rendre moissonnable son système en ajoutant les fonctionnalités "entrepôt OAI-PMH" directement dans l'applicatif, cela en redéveloppant toute la couche logicielle adéquate. On peut utiliser des bibliothèques adapatés déjà développés et disponibles dans le langage de son applicatif, celles-ci contenant tout l'aspect métier d'OAI-PMH. il existe de telles bibliothèques dans la plupart des langages et donc pour la plupart des "plateformes web" (php, python/zope, perl ... et bien sûr Java/J2EE) .
    On obtient alors une intégration dite forte de la couche logicielle OAI-PMH dans son applicatif.
  • On peut aussi, et au moins dans une première étape, se constituer rapidement un entrepôt OAI-PMH en mettant en place un outil spécialisé permettant de rendre accessible via OAI-PMH l'ensemble de fichiers XML prédisposés dans un répertoire donné. Ces fiches seront régulièrement mis à jour simplement via une moulinette (telle que décrite plus haut) :
    le mieux ici est que la moulinette puisse tourner régulièrement et mettre à jour ou ajouter si nécessaire les fiches XML dans le répertoire indiqué.

Fonctionnement en configuration FileSystem

Dans sa configuration FileSystem, ori-oai-repository fonctionne seul : aucun des autres modules ORI-OAI n'est nécessaire, il permet de rendre accessible rapidement via OAI-PMH un ensemble de fichiers XML (LOM par exemple) stockés dans un dossier de son ordinateur, de son serveur.

Voici ses caractéristiques :

  • il se base sur la date de modification du système de fichiers ; il est donc préférable (mais cependant pas obligatoire) de modifier/remplacer un fichier seulement si nécessaire,
  • il permet de répondre au protocole OAI-PMH sans le support des suppressions de fiches (comportement autorisé par le protocole OAI-PMH),
  • il permet d'utiliser les Sets OAI-PMH (comportement autorisé par le protocole OAI-PMH), en reproduisant l'arborescence des répertoires
  • il ne permet pas d'utiliser les fonctions de filtrage qui sont liées à l'indexation
  • il utilise les fonctionnalités usuelles apportées par ORI-OAI, notamment :
    • une configuration aisée des paramètres importants dans la mise en place d'un entrepôt OAI-PMH,
    • la conversion des fiches en OAI_DC via des XSL adapatés.
      => dans le cas de fiches LOM, disposer uniquement les fiches LOM dans un dossier permet aussi de répondre en OAI_DC

Préparer la configuration

Depuis le module ORI-OAI-quick-install, lancez la commande suivante :

ant init-config-repository

Ceci va créer l'arborescence des dossiers et fichiers servant à personnaliser le module dans le dossier [PATH_CUSTOM_CONFIG]/ori-oai-repository.

Attention

C'est au sein de ce dossier, et uniquement dans ce dossier que vous devrez personnaliser le module.

Paramétrer les propriétés

Il faut ensuite paramétrer ce mode dans le fichier suivant : [PATH_CUSTOM_CONFIG]/ori-oai-repository/config/custom-config.properties :

filesystem.mode=true

filesystem.directory=/path/to/records/directory
filesystem.md.namespace=http://www.openarchives.org/OAI/2.0/oai_dc/
filesystem.filter=*.xml
filesystem.validXml=true
  • filesystem.directory : définit le répertoire dans lequel on va disposer les fiches à exposer
  • filesystem.md.namespace : spécifie le format de métadonnées exposé (http://ltsc.ieee.org/xsd/LOM pour le LOM)
  • filesystem.filter : spécifie un filtrage des fichiers considérés, à l'aide d'une expression régulière, par défaut "*.xml" (voir documentation WilcardFileFilter )
  • filesystem.validXml : permet de valider ou non que le XML est bien formé avant de l'exposer

Déployer le module

Il suffit alors de lancer la tâche suivante depuis le module ORI-OAI-quick-install pour déployer le module :

ant all-repository

Il ne reste plus qu'à démarrer le serveur Tomcat.

  • No labels