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 » : différence entre les versions
Aller à la navigation
Aller à la recherche
m →Exemple : update paths |
|||
| (6 versions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 6 : | Ligne 6 : | ||
* {{path|02-bmoCsvXml2Xml.sh}} | * {{path|02-bmoCsvXml2Xml.sh}} | ||
* {{path|03-bmoUpdate2Last.sh}} | * {{path|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 {{path|{{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 {{var|CSV}} : | |||
<syntaxhighlight lang="ini">bmo.import-csv-dir=/mnt/data/projets-eclipse/bm-orleans/projet/donnees/Donnees-a-reprendre/</syntaxhighlight> | |||
* La destination de la conversion CSV vers {{var|CSV-XML}} et la source de la conversion CSV-XML vers {{var|XML-BMO}} : | |||
<syntaxhighlight lang="ini">bmo.export-csv-xml-dir=/mnt/data/data/bm-orleans/csv-xml/</syntaxhighlight> | |||
{{remarque|Shell-script must use this path as input/output-directory}} | |||
* La destination de la conversion CSV-XML vers {{var|XML-BMO}} : | |||
<syntaxhighlight lang="ini">bmo.export-xml-bmo-dir=/mnt/data/data/bm-orleans/csv-xml/</syntaxhighlight> | |||
{{remarque|Shell-script must use this path as input/output-directory}} | |||
== Emplacement des données sources == | == Emplacement des données sources == | ||
| Ligne 40 : | Ligne 56 : | ||
* {{var|<dossier-source>}} : dossier contenant les différentes collections (cf. [[#Emplacement des données sources|Emplacement des données sources]]) ; | * {{var|<dossier-source>}} : dossier contenant les différentes collections (cf. [[#Emplacement des données sources|Emplacement des données sources]]) ; | ||
* {{var|<dossier-destination>}} : dossier de sortie du script ; | * {{var|<dossier-destination>}} : dossier de sortie du script ; | ||
* {{var|<dossier-xsl>}} : dossier contenant les | * {{var|<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 {{path|{{var|<dossier-destination>}}/csv-xml/}}''' et non dans {{var|<dossier-destination>}}, car on a besoin de distinguer les fichiers {{var|CSV-XML}} des fichiers {{var|BMO-XML}} : | {{notice|les fichiers de sorties sont placés dans le '''sous-dossier {{path|{{var|<dossier-destination>}}/csv-xml/}}''' et non dans {{var|<dossier-destination>}}, car on a besoin de distinguer les fichiers {{var|CSV-XML}} des fichiers {{var|BMO-XML}} : | ||
* {{path|csv-xml/}} pour les fichiers {{var|CSV-XML}}, | * {{path|csv-xml/}} pour les fichiers {{var|CSV-XML}}, | ||
* {{path|bmo-xml/}} pour les fichiers {{var|BMO-XML}}}} | * {{path|bmo-xml/}} pour les fichiers {{var|BMO-XML}}}} | ||
=== Exemple | === Exemple === | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
./01-bmoAllCsv2Xml.sh \ | ./01-bmoAllCsv2Xml.sh \ | ||
| Ligne 55 : | Ligne 71 : | ||
== CSV-XML -> BMO-XML == | == CSV-XML -> BMO-XML == | ||
La commande est de la même forme que le premier script : | La commande est de la même forme que le premier script : | ||
<syntaxhighlight lang="bash">./02-bmoCsvXml2Xml.sh <dossier-source> <dossier-destination></syntaxhighlight> | <syntaxhighlight lang="bash">./02-bmoCsvXml2Xml.sh <dossier-source-collections> <dossier-source/destination>> <dossier-xsl></syntaxhighlight> | ||
* {{var|<dossier-source-collections>}} : dossier parent contenant les sous-dossiers des collections ; | |||
* {{var|<dossier-source/destination>}} : dossier parent au dossiers {{path|csv-xml/}} et {{path|bmo-xml}} ; | |||
* | * {{var|<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 {{cmd|03-bmoUpdate2Last.sh}} qui met à jour le fichier non-horodaté à partir d'un fichier horodaté du genre : {{path|csv-toc-hubert-2012-mar-20.xml}} | {{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 {{cmd|03-bmoUpdate2Last.sh}} qui met à jour le fichier non-horodaté à partir d'un fichier horodaté du genre : {{path|csv-toc-hubert-2012-mar-20.xml}} | ||
| Ligne 65 : | Ligne 81 : | ||
=== Exemple === | === Exemple === | ||
<syntaxhighlight lang="bash">./02-bmoCsvXml2Xml.sh \ | <syntaxhighlight lang="bash"> | ||
./02-bmoCsvXml2Xml.sh \ | |||
~/projets-eclipse/bm-orleans/projet/donnees/Donnees-reprise/ \ | |||
/mnt/data/data/bm-orleans/ \ | |||
~/bm-orleans/src/webapp/pleade/module-csv/xsl/ | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Dernière version du 27 février 2013 à 11:42
Pré-requis
[modifier | modifier le wikicode]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
[modifier | modifier le wikicode]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
[modifier | modifier le wikicode]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
[modifier | modifier le wikicode]./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
[modifier | modifier le wikicode]./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
[modifier | modifier le wikicode]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
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
[modifier | modifier le wikicode]./02-bmoCsvXml2Xml.sh \
~/projets-eclipse/bm-orleans/projet/donnees/Donnees-reprise/ \
/mnt/data/data/bm-orleans/ \
~/bm-orleans/src/webapp/pleade/module-csv/xsl/