Le format TSX
Le format TSX est utilisé dans Apertium pour définir un fichier de description de tagger. Le fichier est utilisé dans l'entraînement d'un tagueur afin de fournir des définitions de balises grossières, et pour supporter des contraintes basiques comme des règles interdire ou forcer.
Définition de balises[edit]
La section 'tagset' définit la correspondance entre les catégories morphologiques simples ou multiples définissant une forme lexicale et la forme plus grossière avec laquelle le tagger de partie de discours travaille.
Voici un morceau de fichier TSX pour Norvégien Bokmål :
<?xml version="1.0" encoding="UTF-8"?> <tagger name="Norwegian Bokmål"> <tagset> <def-label name="NOMM"> <tags-item tags="n.m.*"/> </def-label> <def-label name="BARE-ADV"> <tags-item lemma="bare" tags="adv"/> </def-label> <def-label name="DETF" closed="true"> <tags-item tags="det.*.f.*"/> </def-label> </tagset> ... </tagger>
Chaque élément def-label
définit une balise grossière en terme de liste de balises d'attributs et a un nom unique obligatoire. L'attribut optionnel closed="true"
peut être utilisé pour spécifier si les balises d'attributs définies appartiennent à une liste fermée. Chaque élément tags-item
peut être une sous-séquence séparée par les points des balises morphologiques correspondant à une une balise grossière optionnellement en association avec un lemme donné.
Sous l'élément tagset
vous pouvez aussi définir des séquences de balises d'attributs et de balises grossières, en utilisant def-mult
. Chaque def-mult
définit une balise grossière en terme de séquence de balises grossières définies au préalable comme def-label
s ou une séquence de balises d'attributs. Un nom obligatoire est requis pour chaque def-mult
qui peut être aussi un attribut optionnel closed="true"
s'il appartient à une liste fermée.
Par exemple si on veut définir un groupe de "préposition"s suivi par un article défini masculin :
<def-mult name="PREPDET" closed="true"> <sequence> <label-item label="PREP"/> <tags-item tags="det.def.m.*"/> </sequence> </def-mult>
L'élément sequence
englobe un ensemble de balises ou d'étiquettes qui définissent une unité avec plus d'une étiquette (label). Chaque label
du label-item
correspond à une balise grossière définie au préalable comme 'def-label' par un nom.
Interdire[edit]
L'élément 'forbid' contient des séquences de catégories morphologiques qui ne sont pas permises dans une langue donnée.
Chaque 'label-sequence' est limitée à deux 'label-items'
Forcer[edit]
L'élément 'enforce-rules' définit un ensemble de balises grossières qui doit suivre celles spécifiées
Chaque 'enforce-after' englobe l'ensemble de balises grossières ('label-set') qui doit suivre celle définie dans 'label', comme attribut obligatoire
L'ensemble des 'label-items' forcés après un 'label' est inclus dans l'élément 'label-set'
Préférence[edit]
L'élément 'preferences' permet de décider entre deux séquences de balises d'attributs ou plus qui sont groupées dans la même balise grossière.
Chaque élément 'prefer' a un attribut obligatoire 'tags' fait d'une séquence de balises d'attributs