IRC3 / IRC3sp /
@besagni besagni authored on 18 Nov 2022
..
EnglishVersion.md Ébauche de version anglaise du README.md de IRC3sp 4 years ago
IRC3sp.pl Nouvelle version du script 1 year ago
README.md Nouvelle version du script 1 year ago
README.md

IRC3sp

IRC3sp est une version de l’outil IRC3 dédiée à la recherche des noms scientifiques — ou noms binominaux — d’espèces animales, végétales ou autres dans un corpus de textes en se référant à une liste finie (mais, aussi exhaustive que possible).

N.B. : la liste et les textes doivent être en UTF-8 (sans BOM).

Nom binominal

Pour mémoire, en taxonomie, un nom binominal est formé de deux noms latins (ou latinisés) comprenant le nom de genre et le nom spécifique, comme “Canis lupus” pour le loup. Ce nom est normalement écrit en italique avec une initiale en majuscule pour le nom de genre et il peut être présent sous une forme abrégée où seule l'initiale du nom de genre est indiquée, comme “C. lupus”. À l'exception d'espèces très connues comme Escherichia coli qui est souvent simplement écrit E. coli, la forme abrégée ne doit être utilisée que si la forme longue est déjà apparue au moins une fois. De plus, si un nom de genre a été cité, toutes les espèces appartenant à ce même genre peuvent ensuite être citées sous forme abrégée, comme “Canis lupus, C. latrans et C. aureus” (pour “Canis lupus, Canis latrans et Canis aureus”).

Cependant, les formes abrégées peuvent être ambigües. Par exemples, on a deux espèces de poissons, Cyprinus carpio et Carpiodes carpio, qui ont la même abréviation : C. carpio. Pour éviter les erreurs, IRC3sp commence par faire la liste des noms de genre présents dans le document analysé pour obtenir l'ensemble des espèces correspondantes dans la ressource, et donc, l’ensemble des abréviations possibles. Malgré cela, si une ambigüité demeure, on considère comme valide le dernier nom de genre cité in extenso avant l'occurrence de la forme abrégée.

Usage

    IRC3sp.pl -t table -r répertoire [ -e extension ]* [ -s fichier_sortie ] [ -l log ] [ -cq ]
    IRC3sp.pl -t table -f (fichier_entrée|-) [ -s fichier_sortie ] [ -l log ] [ -cq ]
    IRC3sp.pl -t table -j [ -f fichier_entrée ] [ -s fichier_sortie ] [ -l log ] [ -cq ]
    IRC3sp.pl -h

N.B. : contrairement à IRC3, cet outil a besoin d’avoir comme argument un fichier texte ou un répertoire de fichiers textes. Comme l’analyse du texte se fait en deux passes, IRC3sp ne peut pas lire les données sur l’entrée standard.

Dernièrement, le programme a été modifié pour pouvoir être utilisé par un webservice. Dans cette configuration, le programme est lancé par la commande suivante :

    IRC3sp.pl -t table -p FIFO -w [ -l log ] [ -c ]

Options

    -c  tient compte de la casse (majuscule/minuscule) des termes recherchés
    -e  indique l'extension (e.g. “.txt”) du ou des fichiers textes à traiter
        (possibilité d’avoir plusieurs extensions en répétant l'option)
    -f  indique le nom du fichier texte à traiter (pour lire les données sur
        l’entrée standard, utilisez un tiret “-” comme argument)
    -h  affiche cette aide
    -j  indique que les données en entrée, dans un fichier ou sur l’entrée standard,
        sont en JSON ainsi que le résultat en sortie
    -l  indique le nom du fichier récapitulatif où sera écrit pour chaque fichier
        traité le nombre de termes et d’occurrences trouvés
    -p  indique le nom du tube nommé (“named pipe”) ou FIFO utilisé pour transmettre
        les données
    -q  supprime l’affichage de la progression du travail
    -r  indique le répertoire contenant les fichiers textes à traiter
    -s  indique le nom du fichier où sera écrit le résultat du traitement
    -t  indique le nom du fichier contenant la ressource, c'est-à-dire la liste
        des termes à rechercher
    -w  indique que le programme est utilisé par un “webservice” qui modifie le fichier
        envoyé en ne gardant que les objets JSON

À noter que les options -p et -w ont été ajoutées pour permettre d’utiliser ce programme dans un webservice. Ne pas en tenir compte si vous travaillez en ligne de commande.

Ressource

Le fichier de ressource contient un terme par ligne. On peut indiquer pour un terme sa forme préférentielle en ajoutant après le terme une ou plusieurs tabulations et le préférentiel.

Les lignes vides et celles commençant par le caractère “#” ne sont pas prises en compte. De plus, la ressource peut être un fichier compressé par “gzip” ou “bzip2”.

Résultat

Le fichier résultat contient une ligne par occurrence trouvée. Chaque ligne est formée de 5 champs séparés par une tabulation. On a respectivement le nom du fichier traité (“STDIN” dans le cas de l'entrée standard), le terme tel qu'il apparait dans le texte analysé, la forme abrégée du terme tel qu'il est dans la ressource si c’est une forme abrégée qui a été trouvée, le terme tel qu'il est dans la ressource et, dans le cas d'un synonyme, la forme préférentielle du terme.

Le fichier résultat contient une ligne par occurrence trouvée. Chaque ligne est formée de 5 champs séparés par une tabulation.

On a respectivement :

  • le nom du fichier traité (“STDIN” dans le cas de l'entrée standard),
  • le nom binominal (forme longue) tel qu’il apparait dans le texte analysé,
  • le nom binominal (forme abrégée) généré par l’outil à partir de la ressource,
  • le nom binominal (forme longue) tel qu’il est dans la ressource,
  • le nom binominal (forme longue) de la forme préférentielle.

Évidemment, le troisième champ reste vide dans le cas où le nom trouvé n’est pas sous sa forme abrégée. De même, le cinquième champ reste vide si le nom d’espèce ou de sous-espèce n’a pas de forme préférentielle.