Outils pour utilisateurs

Outils du site


public:specs_ts

Spécification de l'intégration du moteur TIGER Search

Objectif

Il s'agit de finaliser une version publique de la production de concordances syntaxiques à partir de la combinaison TS+XSL :

  • dans la version portail : a priori déjà fait, donc il s'agit de finaliser un accès dans le portail démo fiable ;
  • dans la version bureau : a priori sous forme de macro KNICMacro dans un premier temps, associée à un script de préparation de corpus TS et à un tutoriel dans la page https://groupes.renater.fr/wiki/txm-users/public/macros.

Méthode

Alexis peut nous aider à finaliser dans le portail démo :

  • dernière version du GRAAL ;
  • dernière version des XSL ;
  • tutoriel HTML KNIC facilement accessible aux anonymes ;
  • accès disponible 24/7 à partir du moment où l'article est soumis.

Tom vérifie les requêtes de l'article dans le portail démo.

Matthieu peut nous aider à finaliser la macro KNICMacro et un corpus binaire à mettre avec nos corpus exemples. (mais pas sûr vue la release 0.7.5 en cours)

Requête TIGER

une requete TIGER peut retouner des noeuds terminaux (mots) et des noeuds non-terminaux NT.

Pour TXM, on peut récupérer les terminaux recouvert par les NT.

Dans le cas où il y a plusieurs NT, la requête peut retourner plusieurs match dont certains qui se recouvrent. L'utilisateur peut alors préciser le ou les noeuds qui l’intéresse en labellisant sa requête avec des variables “pivot<n>” avec n un numéro.

Dans les concordance Knic, les colonnes du tableau conteneur sont drivées par des labels “block<n>”.

Propriétés TIGER

Les Terminaux (T) de TIGERSearch sont les mots. Les non-terminaux de TIGERSearch sont les noeuds syntaxiques. Les NT et les T peuvent avoir des propriétés.

Les structures de CQP reposent sur les positions des tokens CQP, mais pas les NT de TIGERSearch.

problème : les outils de TXM s'appuient tous sur les séquences de positions de mots pour afficher des valeurs de propriétés et faire des liens entre les commandes

problème : l’accès aux propriétés des T ne pose pas de soucis, par contre pour les propriétés de NT il faut préciser la façon de remonter à l'information:

  • faut-il prendre la propriété du premier NT en remontant dans l'arbre ?
  • faut-il partir de la racine de l'arbre et prendre le premier NT ?
  • faut-il retourner toutes les valeurs de propriété des NT qui dominent un T ?
  • … [autres méthodes de récupération]

Alignement corpus CQP et corpus TIGER

L'import XML-TS s'assure que les token CQP et TIGER sont bien alignés. Pour s'assurer de l'alignement la commande “Import TIGERSearch annotations…” doit créer un registre de décalage de positions de mots.

problèmes :

  • le corpus CQP est + gros que le corpus TIGERSearch
  • le corpus TIGERSearch est + gros que le corpus CQP → le décalage peut être négatif
  • comment s'assurer de l'ordre des textes ?

algo :

  • pour tous les tokens des sentences du corpus TIGERSearch
  • récupérer la position dans le corpus TIGERSearch
  • récupérer la position dans le corpus CQP → on utilise d'identifiant du mot TIGERSearch
  • on sauvegarde dans une table la présence ou l'absence du mot dans le corpus CQP : 0 absence, 1 présence
    • la longueur de la table est le nombre de mot du corpus TIGERSearch
    • la table stockée dans le fichier “$TXM/corpora/$CORPUS/tiger/$CORPUS/presences.data”
  • on sauvegarde dans une table le décalage (entier négatif ou positif)
    • la longueur de la table est le nombre de mot du corpus TIGERSearch
    • la table stockée dans le fichier “$TXM/corpora/$CORPUS/tiger/$CORPUS/offsets.data”

Commande Import d'annotations CoNLL-U

Commandes pour importer des propriétés CoNLL-U dans un corpus TXM. L'import s'appuie sur l'alignement exact des mots par leurs identifiants et par l'identifiants de leur texte.

Si un ligne mot ne contient par le paramètre misc “XmlId”, un message d'alerte est affiché en console. Si des annotations n'ont pas été importés un message de Warning est affiché avec la liste des identifiants XmlID qui n'ont pas matché.

Import CoNNL-U annotation from a CoNLL-U file...

Paramètres :

  • (le corpus TXM sélectionné)
  • CoNLL-U
    • fichier unique CoNLL-U source
  • identifiant du texte à annoter
  • préfixe des propriétés CoNLL-U à ajouter au corpus TXM : par défaut 'ud-'
  • overwrite (true/false) : par défaut 'false'
    • si 'false' et propriété déjà existante : message d'erreur “” et abandon

Gestion des identifiants :

  • Si une ligne mot ne contient par le paramètre misc “XmlId”, un message d'alerte est affiché en console.
  • Les identifiants sont normalisés par TXM (utilise la normalisation des modules d'import)
  • Question AL 2020-10-13 : Comment on indique s'il faut écraser les propriétés “ud-import-” ? Peut-être, ajouter une case “overwrite” à côté de chaque propriété ? Proposition :
    • si la case est cochée, la propriété définie remplace toujours “ud-import-” correspondant
    • si la case est décochée, seule la valeur “_” est remplacée
    • si defaultXxxPropertyName est vide, “ud-import-” est utilisé tel quel
    • Pour info, j'utiliserais les réglages :
      • overwrite : word, lemma, cattex-pos
      • no overwrite : ud-pos, ud-feats
        • en particulier, à cause de AUX (verbe auxiliaire, sans correspondance en Cattex)
        • une vérification de l'index [cattex-pos != ud-import-pos] est à faire systématiquement sous TXM

Import CoNNL-U annotation from directory...

Paramètres :

  • (le corpus TXM sélectionné)
  • CoNLL-U
    • répertoire de fichiers CoNLL-U sources (le nom des fichiers CoNLL-U est utiliser pour construire l'identifiant du texte à annoter)
  • préfixe des propriétés CoNLL-U à ajouter au corpus TXM : par défaut 'ud-'
  • overwrite (true/false) : par défaut 'false'
    • si 'false' et propriété déjà existante : message d'erreur “” et abandon

Si un ligne mot ne contient par le paramètre misc “XmlId”, un message d'alerte est affiché en console.

Commande Export de corpus au format CoNLL-U

L'export produit un fichier CoNLL-U par texte TXM. Si les mots ont des propriétés CQP de la forme prefix + “id|form|lemma|upos|xpos|head|deprel|deps|misc”, elles seront utiliser pour remplir les propriétés UD des mots.

Si la propriété CQP prefix + “sentid existe, elle sera utilisée pour encodé les début de phrases UD. Si la propriété CQP prefix + “newdocid” existe, elle sera utilisée pour encodé la ligne commentaire # newdoc id” des phrases

Paramètres :

  • (le corpus TXM sélectionné)
  • répertoire résultat
  • préfixe des propriétés CoNLL-U à exporter dans le répertoire : par défaut 'ud-' (?)
  • options des commentaires
    • insérer les paragraphes “# newpar id=” en utilisant les positions des paragraphes du corpus encodés dans les structures “p”
    • insérer des lignes commentaires “# gap” lorsqu'un mot encode la valeur “next” dans sa propriété CQP “gap”
  • options des tokens
    • insérer les propriétés SpaceAfter selon les règle typographique de TXM et la langue du corpus
    • insérer les tokens sans relation syntaxique : oui/non
      → va ajouter les tokens de ponctuations et les tokens de non-phrases pour le corpus PROFITEROLE
      • si cette option est sélectionnée, “defaultFormPropertyName” (ci-dessous) doit être renseigné pour pouvoir alimenter la propriété ud “FORM”
      • les mots se trouvant au milieu d'une phrase UD seront intégrés à la phrase
      • les mots entre la fin et le début d'une phrase UD seront insérés dans une nouvelle phrase identifiée
    • defaultFormPropertyName : propriété CQP à utiliser si la 'form' ud n'est pas renseignée
    • defaultLemmaPropertyName : propriété CQP à utiliser si le 'lemma' ud n'est pas renseignée
    • defaultUposPropertyName : propriété CQP à utiliser si la 'upos' ud n'est pas renseignée
    • defaultXposPropertyName : propriété CQP à utiliser si la 'xpos' ud n'est pas renseignée
  • options de corrections des ponctuations de phrases
    • expression régulière de la forme des tokens de ponctuations ouvrante
      • toutes les nouvelles ponctuations non-ouvrantes se trouvant en début de phrases sont déplacées dans la phrase précédente
      • toutes les nouvelles ponctuations non-ouvrantes se trouvant en fin de phrases sont déplacées dans la phrase précédente

État de la plateforme

Avancement dans l'élaboration de la solution

Solution

État de l'art

Éléments de solution

Prototypes

Version finale

Recette

Protocole de test

Alpha

Beta

État courant

Qui Quand Quoi

public/specs_ts.txt · Dernière modification: 2020/10/19 15:34 par alexei.lavrentev@ens-lyon.fr