You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by chanhangfai <ch...@hotmail.com> on 2011/09/28 23:11:35 UTC

UIMA DictionaryAnnotator partOfSpeach

Hi all,

I have the dictionary Annotator UIMA-solr running, 
used my own dictionary file and it works, 
it will match all the words (Nouns, Verbs and Adjectives) from my dictionary
file.

*but now, if I only want to match "Nouns",  (ignore other part of speech)*

how can I configure it?


http://uima.apache.org/d/uima-addons-current/DictionaryAnnotator/DictionaryAnnotatorUserGuide.html

>From the above user guide, in section (3.3. Input Match Type Filters),
i added the following code to my DictionaryAnnotatorDescriptor.xml,

<nameValuePair>
   <name>InputMatchFilterFeaturePath</name>
   <value>
      <string>*partOfSpeach*</string> 
   </value>
</nameValuePair>      

<nameValuePair>
   <name>FilterConditionOperator</name>
   <value>
      <string>EQUALS</string> 
   </value>
</nameValuePair>      

<nameValuePair>
   <name>FilterConditionValue</name>
   <value>
      <string>noun</string> 
   </value>
</nameValuePair>


but it fails, and the error said featurePathElementNames "*partOfSpeach*" is
invalid.

org.apache.uima.annotator.dict_annot.impl.DictionaryAnnotatorProcessException:
EXCEPTION MESSAGE LOCALIZATION FAILED: java.util.MissingResourceException:
Can't find bundle for base name
org.apache.uima.annotator.dict_annot.dictionaryAnnotatorMessages, locale
en_US
	at
org.apache.uima.annotator.dict_annot.impl.FeaturePathInfo_impl.typeSystemInit(FeaturePathInfo_impl.java:110)
	at
org.apache.uima.annotator.dict_annot.impl.DictionaryAnnotator.typeSystemInit(DictionaryAnnotator.java:383)
	at
org.apache.uima.analysis_component.CasAnnotator_ImplBase.checkTypeSystemChange(CasAnnotator_ImplBase.java:100)
	at
org.apache.uima.analysis_component.CasAnnotator_ImplBase.process(CasAnnotator_ImplBase.java:55)
	at
org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentProcess(PrimitiveAnalysisEngine_impl.java:377)
	at
org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:295)
	at
org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:567)
	at
org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.<init>(ASB_impl.java:409)
	at
org.apache.uima.analysis_engine.asb.impl.ASB_impl.process(ASB_impl.java:342)
	at
org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.processAndOutputNewCASes(AggregateAnalysisEngine_impl.java:267)
	at
org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:267)
	at
org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:280)
	


Any idea please, 
Thanks in advance..

Frankie


--
View this message in context: http://lucene.472066.n3.nabble.com/UIMA-DictionaryAnnotator-partOfSpeach-tp3377440p3377440.html
Sent from the Solr - User mailing list archive at Nabble.com.

Re: UIMA DictionaryAnnotator partOfSpeach

Posted by Tommaso Teofili <to...@gmail.com>.
I think one problem is that the featurePath is not set correctly.
Note that you are assuming PoS are written somewhere in some annotation
feature so this mean you should've setup the UIMA pipeline to include also,
for example, the HMM Tagger [1] which adds (by default) the posTag feature
to TokenAnnotations.
However I think this is a question that fits better the UIMA dev mailing
list ( dev@uima.apache.org ).
My 2 cents.
Tommaso

[1] : http://uima.apache.org/sandbox.html#tagger.annotator

2011/9/29 Pulkit Singhal <pu...@gmail.com>

> At first glance it seems like a simple localization issue as indicated by
> this:
>
> >
> org.apache.uima.annotator.dict_annot.impl.DictionaryAnnotatorProcessException:
> > EXCEPTION MESSAGE LOCALIZATION FAILED:
> java.util.MissingResourceException:
> > Can't find bundle for base name
> > org.apache.uima.annotator.dict_annot.dictionaryAnnotatorMessages, locale
> > en_US
>
> Perhaps you can get the source code for UIMA and run the server
> hosting Solr in debug mode then remote connect to it via eclipse or
> some other IDE and use a breakpoint to figure out which resource is
> the issue.
>
> After that it would be UIMA specific solution, I think.
>
> On Wed, Sep 28, 2011 at 4:11 PM, chanhangfai <ch...@hotmail.com>
> wrote:
> > Hi all,
> >
> > I have the dictionary Annotator UIMA-solr running,
> > used my own dictionary file and it works,
> > it will match all the words (Nouns, Verbs and Adjectives) from my
> dictionary
> > file.
> >
> > *but now, if I only want to match "Nouns",  (ignore other part of
> speech)*
> >
> > how can I configure it?
> >
> >
> >
> http://uima.apache.org/d/uima-addons-current/DictionaryAnnotator/DictionaryAnnotatorUserGuide.html
> >
> > From the above user guide, in section (3.3. Input Match Type Filters),
> > i added the following code to my DictionaryAnnotatorDescriptor.xml,
> >
> > <nameValuePair>
> >   <name>InputMatchFilterFeaturePath</name>
> >   <value>
> >      <string>*partOfSpeach*</string>
> >   </value>
> > </nameValuePair>
> >
> > <nameValuePair>
> >   <name>FilterConditionOperator</name>
> >   <value>
> >      <string>EQUALS</string>
> >   </value>
> > </nameValuePair>
> >
> > <nameValuePair>
> >   <name>FilterConditionValue</name>
> >   <value>
> >      <string>noun</string>
> >   </value>
> > </nameValuePair>
> >
> >
> > but it fails, and the error said featurePathElementNames "*partOfSpeach*"
> is
> > invalid.
> >
> >
> org.apache.uima.annotator.dict_annot.impl.DictionaryAnnotatorProcessException:
> > EXCEPTION MESSAGE LOCALIZATION FAILED:
> java.util.MissingResourceException:
> > Can't find bundle for base name
> > org.apache.uima.annotator.dict_annot.dictionaryAnnotatorMessages, locale
> > en_US
> >        at
> >
> org.apache.uima.annotator.dict_annot.impl.FeaturePathInfo_impl.typeSystemInit(FeaturePathInfo_impl.java:110)
> >        at
> >
> org.apache.uima.annotator.dict_annot.impl.DictionaryAnnotator.typeSystemInit(DictionaryAnnotator.java:383)
> >        at
> >
> org.apache.uima.analysis_component.CasAnnotator_ImplBase.checkTypeSystemChange(CasAnnotator_ImplBase.java:100)
> >        at
> >
> org.apache.uima.analysis_component.CasAnnotator_ImplBase.process(CasAnnotator_ImplBase.java:55)
> >        at
> >
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentProcess(PrimitiveAnalysisEngine_impl.java:377)
> >        at
> >
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:295)
> >        at
> >
> org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:567)
> >        at
> >
> org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.<init>(ASB_impl.java:409)
> >        at
> >
> org.apache.uima.analysis_engine.asb.impl.ASB_impl.process(ASB_impl.java:342)
> >        at
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.processAndOutputNewCASes(AggregateAnalysisEngine_impl.java:267)
> >        at
> >
> org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:267)
> >        at
> >
> org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:280)
> >
> >
> >
> > Any idea please,
> > Thanks in advance..
> >
> > Frankie
> >
> >
> > --
> > View this message in context:
> http://lucene.472066.n3.nabble.com/UIMA-DictionaryAnnotator-partOfSpeach-tp3377440p3377440.html
> > Sent from the Solr - User mailing list archive at Nabble.com.
> >
>

Re: UIMA DictionaryAnnotator partOfSpeach

Posted by Pulkit Singhal <pu...@gmail.com>.
At first glance it seems like a simple localization issue as indicated by this:

> org.apache.uima.annotator.dict_annot.impl.DictionaryAnnotatorProcessException:
> EXCEPTION MESSAGE LOCALIZATION FAILED: java.util.MissingResourceException:
> Can't find bundle for base name
> org.apache.uima.annotator.dict_annot.dictionaryAnnotatorMessages, locale
> en_US

Perhaps you can get the source code for UIMA and run the server
hosting Solr in debug mode then remote connect to it via eclipse or
some other IDE and use a breakpoint to figure out which resource is
the issue.

After that it would be UIMA specific solution, I think.

On Wed, Sep 28, 2011 at 4:11 PM, chanhangfai <ch...@hotmail.com> wrote:
> Hi all,
>
> I have the dictionary Annotator UIMA-solr running,
> used my own dictionary file and it works,
> it will match all the words (Nouns, Verbs and Adjectives) from my dictionary
> file.
>
> *but now, if I only want to match "Nouns",  (ignore other part of speech)*
>
> how can I configure it?
>
>
> http://uima.apache.org/d/uima-addons-current/DictionaryAnnotator/DictionaryAnnotatorUserGuide.html
>
> From the above user guide, in section (3.3. Input Match Type Filters),
> i added the following code to my DictionaryAnnotatorDescriptor.xml,
>
> <nameValuePair>
>   <name>InputMatchFilterFeaturePath</name>
>   <value>
>      <string>*partOfSpeach*</string>
>   </value>
> </nameValuePair>
>
> <nameValuePair>
>   <name>FilterConditionOperator</name>
>   <value>
>      <string>EQUALS</string>
>   </value>
> </nameValuePair>
>
> <nameValuePair>
>   <name>FilterConditionValue</name>
>   <value>
>      <string>noun</string>
>   </value>
> </nameValuePair>
>
>
> but it fails, and the error said featurePathElementNames "*partOfSpeach*" is
> invalid.
>
> org.apache.uima.annotator.dict_annot.impl.DictionaryAnnotatorProcessException:
> EXCEPTION MESSAGE LOCALIZATION FAILED: java.util.MissingResourceException:
> Can't find bundle for base name
> org.apache.uima.annotator.dict_annot.dictionaryAnnotatorMessages, locale
> en_US
>        at
> org.apache.uima.annotator.dict_annot.impl.FeaturePathInfo_impl.typeSystemInit(FeaturePathInfo_impl.java:110)
>        at
> org.apache.uima.annotator.dict_annot.impl.DictionaryAnnotator.typeSystemInit(DictionaryAnnotator.java:383)
>        at
> org.apache.uima.analysis_component.CasAnnotator_ImplBase.checkTypeSystemChange(CasAnnotator_ImplBase.java:100)
>        at
> org.apache.uima.analysis_component.CasAnnotator_ImplBase.process(CasAnnotator_ImplBase.java:55)
>        at
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentProcess(PrimitiveAnalysisEngine_impl.java:377)
>        at
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:295)
>        at
> org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:567)
>        at
> org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.<init>(ASB_impl.java:409)
>        at
> org.apache.uima.analysis_engine.asb.impl.ASB_impl.process(ASB_impl.java:342)
>        at
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.processAndOutputNewCASes(AggregateAnalysisEngine_impl.java:267)
>        at
> org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:267)
>        at
> org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:280)
>
>
>
> Any idea please,
> Thanks in advance..
>
> Frankie
>
>
> --
> View this message in context: http://lucene.472066.n3.nabble.com/UIMA-DictionaryAnnotator-partOfSpeach-tp3377440p3377440.html
> Sent from the Solr - User mailing list archive at Nabble.com.
>