[ 
https://issues.apache.org/jira/browse/LUCENE-2899?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Steve Rowe updated LUCENE-2899:
-------------------------------
    Attachment: LUCENE-2899.patch

Patch, lots of changes (see below), I think it's ready to go (precommit and all 
Lucene/Solr tests pass).  My plan is to wait a couple days for review, then 
commit if there are no objections.

Changes since the last patch:

* Corrected some test model training data.
* Switched OpenNLPTokenizer to require both the sentence and tokenizer models - 
I couldn't think of a reason to support specification of only one of them.
* OpenNLPTokenizer now extends SegmentingTokenizerBase, and uses an OpenNLP 
sentence segmenter via shim class OpenNLPSentenceBreakIterator.  
End-of-sentence tokens are marked by setting a bit on the FlagsAttribute.  All 
OpenNLP-based filters operate on sentences.
* OpenNLPLemmatizerFilter now supports dictionary-based and/or model-based 
lemmatization; if both are configured, dictionary-based tokenization is 
performed first, and then out-of-vocabulary tokens are lemmatized using the 
model.
* Each analysis operation is now in its own component (previously OpenNLPFilter 
did multiple things).
* Removed the end-of-sentence hack in OpenNLPPOSFilter (described in an earlier 
comment on this issue) - periods are no longer appended to sentences prior to 
pos tagging.
* Named entity recognition is now handled in an update request processor in the 
analysis-extras Solr contrib (though the NER model loading machinery remains in 
OpenNLPOpsFactory in the lucene/analysis/opennlp module).
* Added ref guide docs.
* Added CHANGES.txt entries.

> Add OpenNLP Analysis capabilities as a module
> ---------------------------------------------
>
>                 Key: LUCENE-2899
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2899
>             Project: Lucene - Core
>          Issue Type: New Feature
>          Components: modules/analysis
>            Reporter: Grant Ingersoll
>            Assignee: Grant Ingersoll
>            Priority: Minor
>             Fix For: 4.9, 6.0
>
>         Attachments: LUCENE-2899-6.1.0.patch, LUCENE-2899-RJN.patch, 
> LUCENE-2899.patch, LUCENE-2899.patch, LUCENE-2899.patch, LUCENE-2899.patch, 
> LUCENE-2899.patch, LUCENE-2899.patch, OpenNLPFilter.java, 
> OpenNLPTokenizer.java
>
>
> Now that OpenNLP is an ASF project and has a nice license, it would be nice 
> to have a submodule (under analysis) that exposed capabilities for it. Drew 
> Farris, Tom Morton and I have code that does:
> * Sentence Detection as a Tokenizer (could also be a TokenFilter, although it 
> would have to change slightly to buffer tokens)
> * NamedEntity recognition as a TokenFilter
> We are also planning a Tokenizer/TokenFilter that can put parts of speech as 
> either payloads (PartOfSpeechAttribute?) on a token or at the same position.
> I'd propose it go under:
> modules/analysis/opennlp



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to