You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
William Petit a231b72dc9 Initial commit 1 year ago
cmd/mt Initial commit 1 year ago
lexer Initial commit 1 year ago
parser Initial commit 1 year ago
script Initial commit 1 year ago
testdata Initial commit 1 year ago
.gitignore Initial commit 1 year ago
README.md Initial commit 1 year ago
metatext_test.go Initial commit 1 year ago
modd.conf Initial commit 1 year ago

README.md

Metatext

Librairie d’analyse lexicale pour les données textes “augmentées” par des informations structurées.

Démarrer à partir des sources

Dépendances

go get forge.cadoles.com/wpetit/metatext
cd metatext
modd

Données structurées

Metatext cherche à extraire des “instructions” d’un flux de texte. Un “instruction” est une séquence de termes sur 1 seule ligne.

L’objectif est d’identifier des informations exploitables par un programme pour déclencher des opérations automatisées en examinant des conversations entre humains.

La structuration des données devrait être la plus simple d’accès pour l’utilisateur et ne pas polluer la conversation.

Types de données

Directive

Une directive est un “ordre” ou une “action”.

Une directive est préfixée par le caractère !.

Exemple !todo

Référence

Une référence est une mention d’une entité.

Une référence est préfixée par le caractère @.

Exemple @john

Mot clé (ou Tag)

Un mot clé est une catégorisation de l’instruction.

Une référence est préfixée par le caractère #.

Exemple #work

Attribut

TODO

Texte

Le texte est toute donnée non compréhensible par l’analyseur lexical.

Exemple

Soit le texte suivant

!remind @alice Implement the base algorithm

We're pivoting !
!todo @john @david Review the algorithm

L’utilisation de l’utilitaire mt sur le texte suivant produira la structure suivante

[
 {
  "directives": [
   "remind"
  ],
  "tags": [],
  "references": [
   "alice"
  ],
  "attributes": {},
  "text": [
   "Implement the base algorithm"
  ]
 },
 {
  "directives": [],
  "tags": [],
  "references": [],
  "attributes": {},
  "text": [
   "We're pivoting !"
  ]
 },
 {
  "directives": [
   "todo"
  ],
  "tags": [],
  "references": [
   "john",
   "david"
  ],
  "attributes": {},
  "text": [
   "Review the algorithm"
  ]
 }
]