Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)

Doc/BM-Orléans/Conversion CSV vers BMO-XML

De AJLSM
Version datée du 18 mai 2012 à 13:08 par Groche (discussion | contributions) (→CSV-XML -> BMO-XML : ajout argument et corrections)
Aller à la navigation Aller à la recherche

Pré-requis

les données doivent être à jour et converti en CSV. On aura besoin des fichiers suivants :

  • toolbox.sh # fourni des fonctions communes
  • 01-bmoAllCsv2Xml.sh # converti tous les documents disponible dans la cible
    • bmocsv2xml.sh # converti 1 document
  • 02-bmoCsvXml2Xml.sh
  • 03-bmoUpdate2Last.sh

Configuration

Important :
Cette section ne sera valable que quand la chaine de conversion sera intégrer à l'application.

On modifiera le fichier <app>/WEB-INF/properties/bm-orleans.properties selon nos besoins et notamment les valeurs :

  • L'emplacement des données soumis par BM-Orléans, converti en CSV :
bmo.import-csv-dir=/mnt/data/projets-eclipse/bm-orleans/projet/donnees/Donnees-a-reprendre/


  • La destination de la conversion CSV vers CSV-XML et la source de la conversion CSV-XML vers XML-BMO :
bmo.export-csv-xml-dir=/mnt/data/data/bm-orleans/csv-xml/

Remarques : Shell-script must use this path as input/output-directory.


  • La destination de la conversion CSV-XML vers XML-BMO :
bmo.export-xml-bmo-dir=/mnt/data/data/bm-orleans/csv-xml/

Remarques : Shell-script must use this path as input/output-directory.

Emplacement des données sources

Le dossier source est le dossier parent de tous les dossiers de collection, par exemple : ~/projets-eclipse/bm-orleans/projet/donnees/Donnees-a-reprendre/ contient :

 ├── almanachs
 │   ├── almanachs-2012-mar-20.csv
 │   ├── almanachs-2012-mar-20.xls
 │   └── ...
 ├── cartes-plans
 │   ├── cartes-plans-2012-mar-20.csv
 │   ├── cartes-plans-2012-mar-20.xls
 │   └── ...
 ├── cartes-postales
 │   ├── cartes-postales-2012-mar-20.csv
 │   ├── cartes-postales-2012-mar-20.xls
 │   └── ...
 ├── gravures
 │   ├── gravures-2012-mar-20.csv
 │   ├── gravures-2012-mar-20.xls
 │   └── ...
 ├── hubert -> ./vassal-hubert
 │   └── ...
 ├── journal-loiret
 │   └── 452346101_18660110110289
 ├── lenoir
 │   └── ...
 ├── vassal -> ./vassal-hubert
 │   └── ...
 └── vassal-hubert
     └── ...

CSV -> CSV-XML

./01-bmoAllCsv2Xml.sh <dossier-source> <dossier-destination> <dossier-xsl>
  • <dossier-source> : dossier contenant les différentes collections (cf. Emplacement des données sources) ;
  • <dossier-destination> : dossier de sortie du script ;
  • <dossier-xsl> : dossier contenant les feuilles de transformation des collections (une xsl par collection).
Notice :
les fichiers de sorties sont placés dans le sous-dossier <dossier-destination>/csv-xml/ et non dans <dossier-destination>, car on a besoin de distinguer les fichiers CSV-XML des fichiers BMO-XML :
  • csv-xml/ pour les fichiers CSV-XML,
  • bmo-xml/ pour les fichiers BMO-XML.

Exemple

./01-bmoAllCsv2Xml.sh \
  ~/projets-eclipse/bm-orleans/projet/donnees/Donnees-a-reprendre/ \
  /mnt/data/data/bm-orleans/ \
  ~/bm-orleans/src/web/pleade/module-csv/xsl/

CSV-XML -> BMO-XML

La commande est de la même forme que le premier script :

./02-bmoCsvXml2Xml.sh <dossier-source-collections> <dossier-source/destination>> <dossier-xsl>
  • <dossier-source-collections> : dossier parent contenant les sous-dossiers des collections ;
  • <dossier-source/destination> : dossier parent au dossiers csv-xml/ et bmo-xml ;
  • <dossier-xsl> : dossier contenant les feuilles de transformation des collections (une xsl par collection).


Notice :
Ce script attends des fichiers non horodatés, si c'est la première fois que vous faite cette conversion, il faudra d'abord exécuter la commande 03-bmoUpdate2Last.sh qui met à jour le fichier non-horodaté à partir d'un fichier horodaté du genre : csv-toc-hubert-2012-mar-20.xml
./03-bmoUpdate2Last.sh ~/projets-eclipse/bm-orleans/dev/src/convertisseur/xsl/
Notez, que le format de date attendu est YYYY-mon-dd, i.e. l'expression régulière suivante : [0-9]{4}-[a-z]{3}-[0-9]{2}. Par exemple, 2012-mar-20).

Exemple

./02-bmoCsvXml2Xml.sh \
  ~/projets-eclipse/bm-orleans/projet/donnees/Donnees-a-reprendre/ \
  /mnt/data/data/bm-orleans/ \
  ~/bm-orleans/src/web/pleade/module-csv/xsl