Browse Source

Ecriture readme

Arthur Brandao 5 năm trước cách đây
mục cha
commit
35368f72d4
1 tập tin đã thay đổi với 98 bổ sung1 xóa
  1. 98 1
      README.md

+ 98 - 1
README.md

@@ -1,3 +1,100 @@
 # Projet XML : TP SAX
 
-## Arthur Brandao & Maxence Bacquet - M2 ILI
+## Arthur Brandao & Maxence Bacquet - M2 ILI
+
+Programme pour interroger la base de données DBLP au format XML pour trouver les co-auteurs d'un auteur donné. Le programme possède deux fonctions, la première permet de faire un pré-traitement de la base dans un fichier .ppf, le second permet d'effectuer la recherche depuis le fichier obtenu suite au pré-traitement.
+
+## Documentation des commandes
+
+La documentation suivante pars du principe qu'un terminal est ouvert dans le dossier du projet et que nodejs est installé
+
+### Commande de pré-traitement de la base
+
+Cette commande permet de générer un fichier .ppf (si aucune destination n'est indiquée le chemin vers le fichier seras le quivant : `./data/data.ppf`)
+
+La commande est :
+
+```bash
+node main.js prepare <source> [destination]
+```
+
+- `<source>` : correspond au chemin vers la base de données au format xml
+- `[destination]` : Le chemin et le nom du fichier .ppf à créer suite au pré-traitement de la base de données (si l'extension n'est pas .pff elle seras automatiquement ajoutée), cet argument est optionel
+
+Une commande npm est aussi disponible, elle est l'équivalent de la commande en dessous d'elle :
+
+```bash
+npm run prepare
+# <=>
+node main.js prepare ./data/dblp.xml ./data/data.ppf
+```
+
+### Commande de recherche des co-auteurs
+
+La recherche des co-auteurs ne peut avoir lieu qu'après avoir executé une fois la commande de pré-traitement car elle nécéssite un fichier .ppf pour fonctionner
+
+La commande de base est la suivante :
+
+```bash
+node main.js
+```
+
+Avec cette commande le programme considère que le fichier .ppf est dans `./data/data.ppf`. Le nom de l'auteur dont il faut chercher les co-auteurs seras demandé par le programme dans la console.
+
+La commande admet plusieurs options :
+
+- `-n <string>` ou `--name <string>` ou `--name=<string>` : Pour indiquer le nom de l'auteur pour la recherche
+- `-f <source>` ou `--file <string>` ou `--file=<string>` : Pour indiquer le chemin vers le fichier .ppf à utiliser
+- `-v` ou `--verbose` : Permet d'afficher plus d'informations dans la console
+- `-h` ou `--help` : Affiche l'aide
+- `-V` ou `--version` : Affiche la version du programme
+
+Voici quelques exemples avec des options :
+
+```bash
+node main.js -n "Fabien Delorme"
+node main.js --name="Anne-Cécile Caron" -f "./data/data.ppf"
+node main.js --name "Francis Bossut" --file "./tmp/coauth.ppf" -v
+```
+
+Le retour du programme sans l'option verbose est similaire au retour du programme de reference fournit. Attention la recherche sur le nom est sensible à la casse.
+
+Il existe aussi une commande npm pour executer le programme, elle est équivalente à la commande en dessous d'elle :
+
+```bash
+npm start
+# <=>
+node main.js -f "./data/data.ppf"
+```
+
+### Commande d'éxecution du pré-traitement puis de la recherche
+
+En ajoutant l'option `-p <source>` ou `--process <source>` il est possible d'effectuer le pré-traitement puis une recherche des co-auteurs. `<source>` correspond au chemin vers le fichier de base de données en XML. De plus l'option process est utilisable avec les autres options du programme, la seul différence est que l'option file sert en plus à indiquer le chemin pour créer le fichier de pré-traitement (fichier qui seras utilisé pour la recherche).
+
+Voici quelques exemples expliqués de la commande avec l'option process :
+
+```bash
+# Lance le pré-traitement sur le fichier ./data/dblp.xml, génere le fichier ./data/data.ppf et le nom de l'auteur pour la recherche est demandé dans la console
+node main.js --process ./data/dblp.xml
+
+# Lance le pré-traitement sur le fichier ./data/dblp.xml, génere le fichier ./data/data.ppf et fait la recherche sur Fabien Delorme
+node main.js -p ./data/dblp.xml -n "Fabien Delorme"
+
+# Lance le pré-traitement sur le fichier ./data/dblp.xml, génere le fichier ./tmp/coauth.ppf et fait la recherche sur Fabien Delorme
+node main.js -p ./data/dblp.xml -n "Fabien Delorme" -f ./tmp/coauth.ppf
+```
+
+Une commande avec npm est aussi disponible, elle est équivalente à la commande en dessous d'elle :
+
+```bash
+npm run process
+# <=>
+node main.js --process ./data/dblp.xml
+```
+
+## Temps d'execution
+
+Les temps d'executions des commandes sur nos PC sont de :
+
+- **Préparation** : entre 5 et 6 minutes
+- **Recherche** : entre 5 et 8 secondes