-*-outline-*-

hOpla : Lien XML-SQL - XML-SQL link
Philippe Roy <ph_roy@yahoo.com>


hOpla est sous licence GNU GPL inclus dans le fichier COPYING.
A dfaut de l'adaptation officielle franaise , l'adaptation franaise (donc) officieuse
de la licence GNU GPL est incluse dans le fichier Doc/GnuGpl-fr.html.

hOpla is licensed under the terms of the GNU GPL included in the file COPYING.


* 0. Prface - Foreword
* 1. Usage
* 2. Ambitions
* 3. Donations & Emploi - Donations & Job
* 4. Dpendances - Requirements
* 5. Installation
* 6. CVS : Gnration de l'arbre source - CVS : Generating source tree


* 0. Prface - Foreword

"hOpla" ou plutt "Hopla !" est une expression alsacienne.
Elle signifie de manire gnrale "Allons-y".
Son emploie est extrment frquent voire passe-partout et entre autres avant de trinquer.

hOpla est donc un logiciel qui assure la logistique entre le ft (un petit Gewurtz vendange tardive, par exemple)
(base de donnes PostgreSQL) et les verres ( blancs dans le cas du Gewurtz) (fichiers phmres de donnes en XML).


"hOpla" rather "Hopla !" is an Alsatian expression (French dialect , used arround Strasbourg, Colmar,  Mulhouse, ...).
It means generally "Let's go !". His use is extremely frequent indeed all-occasion and amoung others things before to clink glasses.

So hOpla is soft provide the logistical flow between the barrel (a littl' Gewurtz late vintage, for exemple) (PostgreSQL database) and
the glasses (for withe wine in Gewurt case) (fleeting data files in XML format).


* 1. Usage

  hopla [OPTION...]

  --about                       A propos de hOpla
  -i, --interface=INTERFACE     Spcifier l'interface de la base de donnes : pgsql (PostgreSQL) (obligatoire)
  -h, --host=HOTE               Spcifier l'hte (connexion SQL) (optionnel)
  -p, --port=PORT               Spcifier le port (connexion SQL) (optionnel)
  -u, --user=PORT               Spcifier le port (connexion SQL) (optionnel)
  -d, --password=MOT DE PASSE   Spcifier le mot de passe (connexion SQL) (optionnel)
  -b, --base=BASE DE DONNEES    Spcifier la base de donnes (connexion SQL) (obligatoire pour struc2xml, xml2struc, data2xml or xml2data)
  -f, --file=FICHIER            Spcifier le fichier XML servant de source d'importation ou de cible d'exportation (obligatoire)
  -o, --operation=OPERATION     Spcifier le type d'opration entre la base de donnes SQL et le fichier XML : 
				  struc2xml (exporter structure : base vers fichier),
                                  xml2struc (importer structure : fichier vers base), 
				  data2xml (exporter donnes : base vers fichier), 
				  xml2data (importer donnes : fichier vers base), 
				  db2xml (exporter structure et donnes : base vers fichier), 
				  admin2xml (exporter les informations d'administration : base vers fichier) ou 
				  xml2admin (importer les informations d'administration : fichier vers base) (obligatoire)
  -m, --method=METHODE          Spcifier la mthode de mise  jour : 
				  add (addition des items), 
				  remove (suppression des items) ou 
				  update (modifier les items modifis, addition des nouveaux items et suppression des items obsoltes) (obligatoire pour xml2data)
  -q, --query=REQUETE           Spcifier la requte SQL (obligatoire pour data2xml)
  -t, --table=TABLE             Spcifier la table de la requte SQL (obligatoire pour data2xml)
  -g, --template=TEMPLATE       Spcifier le gabarit (fichier XML) (optionnel pour db2xml)
  --obso                        obsolete mode : export all data (with obsoleted) (optional for db2xml)
  --zip                         zip mode : compression du fichier d'exportation XML (optionnel pour struc2xml, data2xml ou admin2xml)
  --test                        test mode : test seulement le fichier d'importation XML (optionnel pour xml2struc, xml2data ou xml2admin)
  -l, --log=FICHIER LOG         gnration d'un fichier de log XML (optionnel)
  --nocolor                     mode sans couleur : echo sans colors

   --about                     About hOpla
  -i, --interface=INTERFACE   Specify the database's interface : pgsql (PostgreSQL) (obligatory)
  -h, --host=HOST             Specify the host (SQL connection) (optional)
  -p, --port=PORT             Specify the port (SQL connection) (optional)
  -u, --user=PORT             Specify the port (SQL connection) (optional)
  -d, --password=PASSWORD     Specify the user's password (SQL connection) (optional)
  -b, --base=DATA BASE        Specify the database (SQL connection) (obligatory for struc2xml, xml2struc, data2xml or xml2data)
  -f, --file=FILE             Specify the data XML used for import's source or export's target (obligatory)
  -o, --operation=OPERATION   Specify the operation type between the SQL database and the XML file : 
			        struc2xml (export structure : base to file), 
				xml2struc (import structure : file to base), 
				data2xml (export data : base to file), 
				xml2data (import data : file to base), 
				db2xml (export structure & data with template : template + base to file), 
				admin2xml (export administration infos : base to file) or   
				xml2admin (import administration infos : file to base) (obligatory)
  -m, --method=METHOD         Specify the refresh method : 
			        add (add items), 
				remove (remove items) or 
				update (change modified, add new and remove obsolted) (obligatory for xml2data)
  -q, --query=QUERY           Specify the SQL query (obligatory for data2xml)
  -t, --table=TABLE           Specify the table of query (obligatory for data2xml)
  -g, --template=TEMPLATE     Specify the template (XML file) (optional for db2xml)
  --obso                      obsolete mode : export all data (with obsoleted) (optional for db2xml)
  --zip                       zip mode : compress the XML output file (optional for struc2xml, data2xml or admin2xml)
  --test                      test mode : only test XML input file (optional for xml2struc, xml2data or xml2admin)
  -l, --log=LOG FILE          generate a XML log file (optional)
  --nocolor                   no colors mode : echo without colors


* 2. Ambitions

	- structure de base de donnes en fichier XML (import-export)
	- donnes de base de donnes en fichier XML (import-export)
	- tats LaTeX de base de donnes en fichier XML (export)
	- cran de saisie ou/et de consultation (Glade)

	- database's structure under XML file (import-export)
	- database's data under XML file (import-export)
	- database's writting statements LaTeX  under XML file (export)
	- reading or/and writting screen (Glade)

* 3. Donations & Emploi - Donations & Job

** 1. Donations

  Programmeurs et techniciens par leurs programmes ou documentations peuvent contribuer
  au dveloppement de ToutDoux. 
  Cependant si vous ne pouvez ou ne voulez contribuer de cette manire, vous pouvez soutenir le
  projet par une donation montaire ou matriel (informatique).
  Comme la liste des auteurs, la liste des supporters est inclue dans le "A propos" du logiciel.

  Programmers and technicians can contribute by writing software and documentation for 
  ToutDoux development. But if you can't or don't contribute in that way, you can support
  the project by donate money or computer hardware.
  Like authors's list, the supporters's list is included in the software's "About"

  mon adresse - my adress :     Philippe ROY
				23, mare aux canards
				67500 HAGUENAU 
				FRANCE

** 2. Emploi - Job

  De formation, je suis plutt un industriel (ingnieur mcanicien) (mon cv est sur le site Lolix). 
  Cependant dans l'industrie, il est dterminant que l'outil informatique soit matris (j'en fait l'exprience)
  et dans cette optique le concept de logiciels libres est extrment puissant : 

  - l'utilisateur peut rellement intervenir dans la conception/ralisation du logiciel,
  - la concurrence entre logiciels est uniquement base sur ses performances, ses possibilites et son ergonomie,
  - coupl  internet, l'open source est un *vrai* mouvement de standardisation,
  - ayant le choix de son quipement logiciel et de ses fournisseurs, l'utilisateur n'est plus soumis a une rente financire,
  - enfin les structures attentives  leurs clients sont favorises.

  Actuelement, je programme ToutDoux de manire indpendante. Or, je souhaite poursuivre ce travail 
   temps complet. En effet, toute proposition d'emploi dans ce sens serait un rel enchantement.

  I'm mechanical ingenieer (my cv is hosted at Lolix). 
  At present, I hacking ToutDoux independently, but I want continue it in full time. 
  So all job proposition along the same lines will be an absolute delight.
  
* 4. Dpendances - Requirements

** 1. Dpendances d'utilisation - Use requirements

	- glib-1.2.1		       : infrastructure (utilitaire C - C utility)
	- gtk+-1.2.1		       : X Window et widgets - X Window and widgets
	- gnome-libs-1.0.8	       : support d'application et widgets - widgets and application support
	- libxml-1.8.6		       : manipulation de fichier XML - XML manipulation
	- gettext-0.10.35	       : internationalisation - internationalization
	- postgresql-7.0.1	       : base de donnes - database
	- postgresql-server-7.0.1      : base de donnes - database

** 2. Dpendances de developpement - Development requirements

	- glib-devel-1.2.1	       : infrastructure (utilitaire C - C utility) 
	- gtk+-devel-1.2.1	       : X Window et widgets - X Window and widgets
	- gnome-libs-devel-1.0.8       : support d'application et widgets - widgets and application support
	- libxml-devel-1.8.6	       : manipulation de fichier XML - XML manipulation
	- stylesheets-0.13-4	       : collection de feuilles de styles (SGML/Docbook) - collection of stylesheets (SGML/Docbook)
	- toutdoux-1.2.3	       : gestionnaire de projet - project manager
	- postgresql-devel-7.0.1       : base de donnes - database

** 3. Complments - Complements


* 5. Installation 

** 1. Scripts de compilation - Makefiles

	./configure			: gnration stantard - standard generating

** 2. Compilation

	make				: compilation
	su				: connexion en administrateur - superuser login
	make install			: installation
	exit				: dconnexion de l'administrateur - superuser logout

** 3. Lancement - Launch

	hopla				: lien XML-PostgreSQL - XML-PostgreSQL link


* 6. CVS : Gnration de l'arbre source - CVS : Generating source tree

	mkdir hOpla
        cd hOpla
        cvs -d:pserver:anonymous@cvs.hopla.sourceforge.net:/cvsroot/hopla login
        cvs -z3 -d:pserver:anonymous@cvs.hopla.sourceforge.net:/cvsroot/hopla co -P .
	chmod u+x ./macros/autogen.sh
	./macros/autogen.sh		
	gzip -d ./macros/intl.tar.gz  	
	tar xf ./macros/intl.tar  	

	Le script autogen.sh ne veut pas gnrer le rpertoire intl de manire pertinente.
	D'o, l'archive intl.zip pour le moins exotique.
	Si vous avez un autogen.sh plus sympathique, dites-le moi !

	It's strange, autogen.sh don't want to generate a good intl directory.
	If you have an autogen.sh more friendly, please tell me about this !

