BAO 2

Présentation

L'objectif de cette étape est de produire un étiquetage des données textuelles extraites dans l'arborescence. Ici on utilise deux outils: Tree-tagger et Cordial. Avec Cordial, on génère en sortie un fichier texte avec 3 colonnes (forme, lemme, catégorie); Avec Tree-tagger, on produit un fichier XML.

Pour cela, basé sur BAO1, on a ajouté la partie de l'étiquetage. On vérifie si l'article traité existe déjà dans notre dico. Si oui, on vide les variables et on recommence; Si non, on passe les valeurs dans les variables $titre,$description au sous-programme etiquetageXML.

Ce qui reste à faire, c'est de passer le fichier de sortie de Tree-tagger au format XML. Pour faire cela, on y ajoute une sous-routine treetagger2xml.

Quant à l'étiquetage avec Cordial, pour préparer nos fichier, nous avons converti nos sorties en iso-latin 9 avec la ligne :

system ("iconv -f UTF-8 -t ISO8859-15 SORTIE/sortie_".$liste_des_rubriques{$nom}.".txt
> SORTIE/sortie_iso_".$liste_des_rubriques{$nom}.".txt");

On a choisi l'iso latin 9 car il est aussi bien traité que l'iso latin 1 par Cordial et qu'il permet aussi de traiter le caractère 'œ'.

Problèmes rencontrés

* Après avoir obtenu tous les fichiers de sortie, on s'est rendu compte que ces fichiers étaient beaucoup plus légers que ce qu'on avait attendu. Après une bonne réflexion, on a dévoilé la cause mystérieuse. Au départ notre script traitait tous les fichiers en entier, mais qu'il n'écrivait en sortie que le dernier article de chaque fichier. On a réglé ce problème en déplaçant un bloc de code dans la deuxième sous-routine de BAO1 vers la troisième sous-routine de BAO2.

print des résultats dans la BAO1 => print des résultats dans la BAO2

* Pour étiqueter les données avec cordial, on a eu un problème avec les fichiers Rendez-Vous et Environnement. Le traitement se bloquait toujours à la même étape du processus. Ce blocage doit correspondre à un caractère précis, mais on ne peut pas savoir lequel. On laissera de côté ces deux fichiers pour la suite du traitement.