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
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
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-parent-source-destination> <dossier-xsl>
- <dossier-parent-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
Notez, que le format de date attendu est YYYY-mon-dd, i.e. l'expression régulière suivante :
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/
[0-9]{4}-[a-z]{3}-[0-9]{2}. Par exemple, 2012-mar-20).Exemple
./02-bmoCsvXml2Xml.sh \
/mnt/data/data/bm-orleans/ \
~/bm-orleans/src/web/pleade/module-csv/xsl