NAME
FL3 - A shortcut module for Lingua::FreeLing3.
SYNOPSIS
use FL3 'en';
# This is the usual workflow:
# 1. tokenize your text
$tokens = tokenizer->tokenize($text);
$atomos = tokenizer('pt')->tokenize($texto);
# 2. divide tokens in groups: sentences
$sentences = splitter->split($tokens);
$frases = splitter('pt')->split($atomos);
# 3. use a morphologic analyzer to tag words
$sentences = morph->analyze($sentences);
$frases = morph('pt')->analyze($frases);
# 4. use HMM or RELAX tagger to disambiguate
$sentences = hmm->analyze($sentences);
$frases = relax('pt')->tag($sentences);
# 5. use chart parser to parse tree
$sentences = chart->parse($sentences);
$ptree = $sentences->[0]->parse_tree;
# other utility methods
$word = word("cavalo");
@words = word("cavalo", "alado");
$sentence = sentence(word(qw(gosto muito de ti)));
DESCRIPTION
Implements a set of utility functions to access Lingua::FreeLing3
objects.
Everytime one of the accessors is used just with the language code/language data file (or using the default language), the cached processor is returned if it exists. If any other arguments are used, a new processor is created. This means that if you want to use the morphological analyzer more than once, with different arguments, you should first initialize it, using:
morph( en => (AffixFile => 'myAfixes.dat',
DictionaryFile => 'myFile.src'));
And then, when analyzing sentences, use:
morph('en')->analyze($sentences);
This way, the processor initialized before will be used without reinitialziation.
set_language
Sets the current language for subsequent methods calls. Returns the old set language, if any.
release_language
Some resources take too much space on memory. Use this method to release the resources for a specific language. If you need them again, they will be recreated.
Only one argument is mandatory: the name of the language. Unlike the other method, this method requires that you supply the language name. It does not use the default language.
Extra arguments are the name of the modules to be released (same names as their accessor methods).
tokenizer
Accesses a tokenizer (Lingua::FreeLing3::Tokenizer).
splitter
Accesses a splitter (Lingua::FreeLing3::Splitter).
morph
Accesses a morphological analyzer (Lingua::FreeLing3::MorphAnalyzer).
hmm
Accesses a HMM-based tagger (Lingua::FreeLing3::HMMTagger).
relax
Accesses a Relax-based tagger (Lingua::FreeLing3::RelaxTagger).
chart
Accesses a Chart-based parser (Lingua::FreeLing3::ChartParser).
txala
Accesses a Txala-based dependency parser (Lingua::FreeLing3::DepTxala).
nec
Accesses a Name Entity parser (Lingua::FreeLing3::NEC).
word
Lingua::FreeLing3::Word
object constructor shortcut.
sentence
Lingua::FreeLing3::Sentence
object constructor shortcut.
SEE ALSO
Lingua::FreeLing3(3)
AUTHOR
Alberto Simões, <ambs@cpan.org>
COPYRIGHT AND LICENSE
Copyright (C) 2012 by Alberto Simões