NAME
WordLists::Tag::Tagger
SYNOPSIS
my $tagger = WordLists::Tag::Tagger->new();
my $wl = $tagger->get_wordlist('The quick brown fox jumped over the lazy dog');
DESCRIPTION
Uses Lingua::EN::Tagger to do various things with strings, chielfly to create a WordLists::WordList out of a document, e.g. to use as a basis for a glossary.
METHODS
get_wordlist
Uses Lingua::EN::Tagger to create a WordLists::WordList out of a string (e.g. a manuscript).
Lingua::EN::Tagger allows splitting into sentences, and these sentences become eg
fields in the WordLists::Senses generated.
Only the first instance of each headword / part of speech combination is entered into the list, unless the third argument has a key keep_repeats
with a true value.
The fields populated are: hw
, pos
, eg
, and poscode
, which is the original part of speech code outputted by the tagger.
The third argument is a hashref which allows you to configure several options.
callback_on_add_sense
should be a coderef. It is passed the sense immediately before it is added to the wordlist, e.g. if you want to add a unit.
callback_on_make_sense
should be a coderef. It is passed the sense before the wordlist is tested for inclusion. This is an opportunity to further normalise parts of speech.
keep_repeats
is a flag, which, if set, prevents the code from removing repetitions.
TODO
ignore
is a wordlist or arrayref whose elements are WordLists::Sense objects or plain hashrefs of the form {hw=>'head', pos =>'n'}
, or headwords as strings. If these words are found, they are not added to the list. (not yet implemented!)
BUGS
Please use the Github issues tracker.
LICENSE
Copyright 2011-2012 © Cambridge University Press. This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.