peinture ICATeL:
Indexation et Conversion SGML Automatiques pour le traitement documentaire de Textes de Loi

Page précédente Paged'accueil Page suivante

Analyse des résultats
Auteures: Cynthia Delisle, Marie Hélène Vézina
Mots-clés: automatisation, balisage SGML, indexation, NOMINO, OmniMark, SATO, textes juridiques.
URL: http://www.ling.uqam.ca/ato/activites/icatel/resultat.htm
Date de création: 22 août 1997
Dernière version: 4 décembre 1997
Date de la prochaine révision: non prévue pour le moment

I. Volet indexation: analyses effectuées avec SATO

La nature des textes ayant définitivement empêché l'indexation automatique globale et locale des 37 lois du corpus, nous avons résolu, en cours de projet, de constituer à l'aide de quatre lois un corpus d'expérimentation et de tenter la vérification des deux hypothèses de recherche suivantes (hypothèses simples, compte tenu du fait que nous visions principalement une initiation aux procédures impliquant SATO):

  1. L’utilisation combinée des deux dictionnaires de lexies (sujets de loi et termes juridiques) lors des opérations menant au choix des candidats-descripteurs donnera de meilleurs résultats qu’une indexation restreinte à un seul de ces dictionnaires.
  2. Il est possible d'analyser un ensemble de lois diverses quant à la longueur et à la structure à l'aide d'une combinaison unique de propriétés et de seuils d’extraction. Cette seconde hypothèse, évidemment, se révèle d’un intérêt tout particulier dans la perspective d’automatisation du processus d’indexation qui a constitué un des leitmotivs du projet ICATeL.

Après avoir élaboré et appliqué les procédures décrites à la section Choix des candidats-descripteurs avec SATO de la méthodologie, nous avons analysé à la lumière de ces deux hypothèses les différentes séries de candidats-descripteurs obtenues. Suite à cet examen, on peut formuler les commentaires suivants:

  • Les hypothèses de recherche semblent confirmées par nos résultats. D'une part, les deux dictionnaires de lexies s'avèrent effectivement complémentaires: le dictionnaire de sujets de loi fournit les thèmes centraux évoqués dans les textes alors que le dictionnaire de termes juridiques extrait les concepts légaux qui y sont traités (encore que l'attribution de certaines lexies à un dictionnaire spécifique ait parfois été un peu arbitraire). À titre d'exemple, voici les candidats-descripteurs globaux obtenus relativement au Code de l'aviation civile du Mali suite aux différentes extractions effectuées:

    Emploi du seul dictionnaire de sujets de loi

    aérodrome
    aéronautique_civile
    aéronef
    bord
    code
    collectivité
    commandant_de_bord
    mali
    pilote
    président
    
    
    Emploi du seul dictionnaire de termes juridiques
    association
    autorisation
    cas
    contrôle
    état
    exploitant
    exploitation
    gestion
    immatriculation
    ministre
    personne
    président
    service
    vol
    
    

    Haut de la page

    Emploi combiné des deux dictionnaires

    NB: les lettres en caractères gras indiquent le dictionnaire d'origine: s pour sujets de loi et t pour termes juridiques.

    s aérodrome
    s aéronautique_civile
    s aéronef
    t cas
    s collectivité
    t état
    t exploitant
    t immatriculation
    s mali
    t ministre
    s pilote
    t président
    t service
    t vol
    
    

    D'autre part, il est en effet possible d'effectuer des extractions intéressantes en utilisant les mêmes critères sur plusieurs lois, à condition cependant de ne pas incorporer parmi ces critères de spécifications relatives à la fréquence d'apparition (qu'elle soit totale ou limitée au sous-corpus des intitulés textuels), cette propriété étant par trop dépendante de la taille de la loi. Les valeurs discriminante et de Chi2 semblent suffire. Voici, toujours pour le Code de l'aviation civile du Mali, les candidats-descripteurs globaux extraits suite à une combinaison de ces deux propriétés:

    aéronautique_civile
    aéronef
    association
    collectivité
    exploitant
    mali
    vol
    

    Voici les résultats obtenus pour une autre loi, ayant pour sujet le Statut des huissiers de Justice:

    appel
    association
    chambre_nationale
    chambre_nationale_des_huissiers
    chambre_régionale
    cour
    huissier
    huissier_ad_hoc
    huissier_de_justice
    huissier_titulaire 
    justice
    procureur_général
    profession
    

  • Comme les exemples ci-dessus permettent de le constater, les résultats sont faussés en partie par un important bruit documentaire dû à des erreurs commises lors de la conception des dictionnaires de lexies: inclusion d'unitermes trop généraux et/ou trop vagues, particulièrement en ce qui concerne le dictionnaire de termes juridiques (association, autorisation, bord, contrôle, exploitation, gestion, ministre, personne, président, service, etc.), absence de liens entre les formes au pluriel et au singulier pour plusieurs lexies, etc.

  • Le problème du choix de l'unité d'indexation locale demeure en grande partie non résolu dans le cas de notre corpus. S'il s'avère difficile, pour une loi donnée, de repérer un niveau de subdivision qui soit à la fois relativement précis et réparti à peu près uniformément sur l'ensemble du texte, il est pratiquement impossible, à plus forte raison, d'effectuer un choix pouvant aisément être appliqué à l'ensemble des 37 lois du corpus dans une perspective de mise au point de procédures automatiques. Trois solutions nous semblent envisageables - toutes imparfaites. Il y a tout d'abord la possibilité de varier le choix de l'unité d'indexation locale selon la loi à traiter, mais ce parti pris, naturellement, rend impossible l'automatisation du processus et la comparaison des résultats d'une loi à l'autre. On peut également envisager une indexation locale de tous les textes au niveau de l'article de loi, seule subdivision commune à l'ensemble du corpus, mais cela constituerait fort probablement un niveau de détail trop pointu (il faut aussi tenir compte du fait que certaines lois se composent de plusieurs centaines d'articles). Enfin, il serait aussi possible d'indexer le corpus localement au niveau de la partie, en omettant l'indexation locale pour la minorité de lois qui, composées uniquement d'articles ou de chapitres et d'articles, ne comportent pas cette subdivision. Il s'agit peut-être là de la meilleure solution, bien que le découpage ainsi effectué soit parfois très large.

Haut de la page

II. Volet "SGMLisation"

Les résultats obtenus sont très concluants quant à l'atteinte des objectifs propres à l'automatisation de la "SGMLisation". En effet, nous avons instauré avec succès un mécanisme de balisage des styles afin de conserver ce type d'information typographique (comme le souhaitait le demandeur) et avons pu baliser adéquatement, sur l'ensemble des 37 lois soumises, les éléments figurant dans la DTD finale (basée sur l'esquisse de DTD fournie initialement et enrichie par la suite). Le prototype atteint un rendement très élevé quant à la qualité de la conversion effectuée: une observation rapide nous fait estimer ce rendement à plus de 95%. Le pourcentage restant est dû à des éléments mal balisés ou non reconnus lors de l'étape de "conversion enrichie", c'est-à-dire là où réside l'essentiel de la conversion. Il s'explique surtout par les causes suivantes:

  • Les erreurs les plus courantes sont tributaires de cas d'exception se démarquant radicalement des syntaxes prévues pour l'ensemble des 37 lois. L'utilisation de syntaxes non usuelles peut entraîner de graves erreurs dans le processus de conversion, puisque la reconnaissance de certains éléments dépend de la reconnaissance d'autres éléments. Ainsi, par exemple, la forme "CODE DES DOUANES" n'est pas reconnue en tant que type d'acte (élément <typeacte>) comme il y aurait lieu, puisque la règle prévoit une syntaxe de la forme "Loi N043-076/", syntaxe qui est d'ailleurs observée dans 36 cas sur 37.

    Exemples d'extrant:Formes souhaitées à l'extrant: Causes d'erreur:
    <p>Chapitre I DÉFINITIONS <chapitre> <numchap>Chapitre I <libelle>DÉFINITIONS Il n'y a aucun caractère délimiteur (":" ou "\") après le numéro de chapitre comme le prévoit la règle.
    ex: <chapitre>
    <numchap>Chapitre I : <libelle>DÉFINITIONS
    <p>Fait et délibéré en séance publique à Bamako le 31 mai 1963. <signatur> <p>Fait et délibéré en séance publique à Bamako le 31 mai 1963. La signature d'un texte de loi commence habituellement par le nom de la ville ("Bamako" ou "Koulouba").
    ex: Bamako, le 31 mai 1963.

  • Certaines composantes (ex: intitulés, items de liste, etc.), qui se définissent normalement comme étant terminées par un retour à la ligne, ont été coupées en leur milieu par un retour à la ligne impromptu, de sorte que seule la première partie de la composante apparaît dans l'élément SGML qui lui est destiné. La partie restante est versée à tort dans un autre élément.

    Exemples d'intrant: Exemples d'extrant:Formes souhaitées à l'extrant:
    TITRE V: DE LA
    REPRÉSENTATIVITÉ ¶
    DES COLLECTIVITÉS DU MALI
    <numtitr>TITRE V:<libelle> DE LA REPRÉSENTATIVITÉ
    <p>DES COLLECTIVITÉS DU MALI
    <numtitr>TITRE V:<libelle> DE LA REPRÉSENTATIVITÉ DES COLLECTIVITÉS DU MALI
    - Domaine faunique des Collectivités territoriales ¶
    décentralisées ;
    <item>- Domaine faunique des Collectivités territoriales
    <p> décentralisées ;
    <item>- Domaine faunique des Collectivités territoriales décentralisées ;

    La solution la plus simple à ce type de problème serait une correction au niveau des fichiers d'intrant.

  • Les différents niveaux de listes imbriquées ne sont pas reconnus. Le programme utilisé offre cependant la possibilité de distinguer entre les listes ordonnées et non ordonnées. Ainsi, si le premier niveau de liste présente des items ordonnés et le second niveau des items non ordonnés, il s'effectue une sorte de discrimination artificielle entre ces deux niveaux (notons au passage que la DTD ne prévoit pas la présence de listes imbriquées). Plusieurs niveaux de listes ordonnées (ou exclusivement non ordonnées) vont donc présenter un balisage non différencié de leurs différents items en dépit du fait que l'on ait voulu exprimer, à l'origine, une hiérarchie de niveaux de listes.

    Haut de la page

    Exemples d'intrant: Exemples d'extrant:Formes souhaitées à l'extrant:
    Le conseil se compose de:
    a) deux directeurs
    1. administratif
    2. exécutif
    b) un secrétaire
    [...]
    <p>Le conseil se compose de:
    <listenum>
    <item>a) deux directeurs
    <item>1. administratif
    <item>2. exécutif
    <item>b) un secrétaire
    [...]
    <p>Le conseil se compose de:
    <listenum>
    <item>a) deux directeurs
    <listenum>
    <item>1.administratif
    <item>2. exécutif
    </listenum>
    <item>b) un secrétaire
    [...]

    On pourrait également imaginer l'utilisation en extrant d'un attribut pour l'élément <listenum> (ou <liste>), indiquant le niveau hiérarchique de la liste. Il est difficilement possible d'implanter une solution au niveau de la programmation, vu le large éventail de syntaxes possibles pour les puces d'items de liste, et compte tenu du fait également qu'aucune syntaxe (ou groupe de syntaxes) n'est caractéristique d'un niveau hiérarchique donné. Une uniformisation/correction des corpus en amont de l'étape de conversion automatisée est souhaitable.

  • Les tableaux, tant les "vrais" que les "faux", sont balisés ligne par ligne en tant que paragraphes (i.e. élément <p>) et non comme lignes et cellules de tableaux. Il serait souhaitable, dans un premier temps, de recréer les "faux" tableaux à l'aide des fonctionnalités de création de tableaux intrinsèques au traitement de texte. Cette étape accomplie, on pourrait ensuite penser à transformer les codes WordPerfect spécifiques aux lignes et cellules de tableaux en des balises SGML correspondantes, via une modification de la première macro effectuée dans le processus de conversion.

  • Plusieurs erreurs proviennent de coquilles orthographiques. Par exemple, le programme ne peut reconnaître certains éléments si le patron de reconnaissance propre à ceux-ci est mal orthographié.

    Exemples d'intrant: Exemples d'extrant:Formes souhaitées à l'extrant:
    "ARTI CLE 7: le demandeur...." "<p>ARTI CLE 7: le demandeur...." "<article> <numart>ARTI CLE 7: <p1> le demandeur...."
    "ARTICL 7: le demandeur...." "<p>ARTICL 7: le demandeur...." "<article> <numart>ARTICL 7: <p1> le demandeur...."

    Comme on ne peut élargir le patron de reconnaissance des règles correspondantes au niveau de la programmation pour pallier ce type d'erreur sans risquer d'occasionner du bruit, il vaut mieux faire les corrections nécessaires à l'intrant (préférablement) ou encore dans l'extrant balisé.

  • Enfin, on constate certains problèmes quant à la production d'extrants SGML valides. Bien que nous ayons défini une DTD très permissive quant à la structure hiérarchique des lois, nous ne pouvons empêcher certaines erreurs de survenir lors du balisage de lois présentant des structures pour le moins insolites, par exemple lorsque que la première occurrence d'une subdivision n'est pas désignée explicitement.

    Exemple de structure non usuelle:
    Article 1 : [...]
    Article 2 : [...]
    Article 3 : [...]
    Chapitre 1 : [...]
    Article 4 : [...]
    Article 5 : [...]
    Titre II : [...]

Page précédente Paged'accueil Haut de la page Page suivante

©1997