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

De AJLSM
Aller à la navigation Aller à la recherche
m →Pré-requis : typo section: CSV -> CSV-XML
m →Exemple : update paths
 
(16 versions intermédiaires par le même utilisateur non affichées)
Ligne 7 : Ligne 7 :
* {{path|03-bmoUpdate2Last.sh}}
* {{path|03-bmoUpdate2Last.sh}}


== CSV -> CSV-XML ==
== Configuration ==
<syntaxhighlight lang="bash">./01-bmoAllCsv2Xml.sh <dossier-source> <dossier></syntaxhighlight>
{{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 ==
Le dossier source est le dossier parent de tous les dossiers de collection, par exemple : {{path|~/projets-eclipse/bm-orleans/projet/donnees/Donnees-a-reprendre/}} contient :
Le dossier source est le dossier parent de tous les dossiers de collection, par exemple : {{path|~/projets-eclipse/bm-orleans/projet/donnees/Donnees-a-reprendre/}} contient :
   ├── almanachs
   ├── almanachs
Ligne 37 : Ligne 52 :
       └── ...
       └── ...


== Exemple de commande ==
== CSV -> CSV-XML ==
<syntaxhighlight lang="bash">./01-bmoAllCsv2Xml.sh <dossier-source> <dossier-destination> <dossier-xsl></syntaxhighlight>
* {{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-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}} :
* {{path|csv-xml/}} pour les fichiers {{var|CSV-XML}},
* {{path|bmo-xml/}} pour les fichiers {{var|BMO-XML}}}}
 
=== Exemple ===
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
  ./01-bmoAllCsv2Xml.sh \   ~/projets-eclipse/bm-orleans/projet/donnees/Donnees-a-reprendre/ \   ~/projets-eclipse/bm-orleans/dev/src/convertisseur/xsl/</syntaxhighlight>
./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/
</syntaxhighlight>


== CSV-XML -> BMO-XML ==
== CSV-XML -> BMO-XML ==
{{important|Ce script attends des fichiers non horodatés, si c'est la première fois que vous faite cette conversion, il faudra d'abord executé la commande 03-bmoUpdate2Last.sh qui met à jour le fichier non-horodaté avec la dernière version.}}
La commande est de la même forme que le premier script :
<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}}
<syntaxhighlight lang="bash">./03-bmoUpdate2Last.sh ~/projets-eclipse/bm-orleans/dev/src/convertisseur/xsl/</syntaxhighlight>
<syntaxhighlight lang="bash">./03-bmoUpdate2Last.sh ~/projets-eclipse/bm-orleans/dev/src/convertisseur/xsl/</syntaxhighlight>
Notez, que le format de date attendu est {{var|YYYY-'''mon'''-dd}}, i.e. l'expression régulière suivante : {{cmd|<nowiki>[0-9]{4}-[a-z]{3}-[0-9]{2}</nowiki>}}. Par exemple, {{var|2012-mar-20}})}}
=== Exemple ===
<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>
[[category:Doc]]
[[category:BM-Orléans]]
[[category:Script]]

Dernière version du 27 février 2013 à 11:42

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
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.
./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 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).
./02-bmoCsvXml2Xml.sh \
  ~/projets-eclipse/bm-orleans/projet/donnees/Donnees-reprise/ \
  /mnt/data/data/bm-orleans/ \
  ~/bm-orleans/src/webapp/pleade/module-csv/xsl/