I had a mistake, I needed to added this line: <property 
key="luceneFilterExtResrcKey" value="NamedEntityLookupConsumer"/>

I worked now, Many thanks for your help.
-Nick



-----Original Message-----
From: Chen, Pei [mailto:[email protected]] 
Sent: Wednesday, June 25, 2014 12:14 PM
To: [email protected]
Subject: RE: OrangeBookFilterConsumerImpl

1) Could you debug/confirm that MedicationMentions are created by Annotator and 
the new consumer?   If not, attach the db config xml and version of cTAKES you 
are using?
2) Just an FYI: did you know you can use uimaFIT's JCasUtil to simplify the 
example code you had?
Collection< MedicationMention> mentions = JCasUtil.select(jcas, 
MedicationMention.class);
            for(MedicationMention mention : mentions) {
                //some work here
            }

> -----Original Message-----
> From: Nick Nikandish [mailto:[email protected]]
> Sent: Wednesday, June 25, 2014 12:04 PM
> To: [email protected]
> Subject: RE: OrangeBookFilterConsumerImpl
> 
> Hi Pei,
> 
> Thanks, I used NamedEntityLookupConsumerImpl that you mentioned now 
> that but I am getting an error here:
> 
> Map<String, org.apache.ctakes.typesystem.type.refsem.OntologyConcept>
> medicationAnnotator(JCas aJCas){
>       Map<String,
> org.apache.ctakes.typesystem.type.refsem.OntologyConcept> ocMap =
>                       new HashMap<String,
> org.apache.ctakes.typesystem.type.refsem.OntologyConcept>();
>         FSIndex medIndex =
> aJCas.getAnnotationIndex(MedicationMention.type);
>         Iterator<MedicationMention> medIter = medIndex.iterator();
> 
>         while (medIter.hasNext())
>         {
>               MedicationMention medMen = medIter.next();
>               ocMap.put(medMen.getCoveredText().toLowerCase(),
> medMen.getOntologyConceptArr(0));
>       }
>         System.out.println("Medication: "+ 
> patternLists.createPatternList(ocMap.keySet()).toLowerCase());
>         return ocMap;
> 
>     }
> 
> I wrote this code in my own annotator to retrieve  the medication 
> names but this is not returning anything now. Which class should I  
> use now to get medication names?
> 
> -----Original Message-----
> From: Chen, Pei [mailto:[email protected]]
> Sent: Wednesday, June 25, 2014 11:53 AM
> To: [email protected]
> Subject: RE: OrangeBookFilterConsumerImpl
> 
> Nick,
> If I'm reading it correctly, that code change essentially tells it to 
> bypass the OrangeBookFilter completely.
> If that is the behavior you're looking for (i.e. return all of the 
> drugs bypassing the OrangeBookFilter, then you can just modify the 
> lookupConsumer className in your LookupDesc_Db.xml.  Try something 
> like the NamedEntityLookupConsumerImpl.class or similar (i.e. no 
> filters) I don't recall the exact name on the top of my head.
> --Pei
> 
> From: Nick Nikandish [mailto:[email protected]]
> Sent: Wednesday, June 25, 2014 11:38 AM
> To: [email protected]
> Subject: OrangeBookFilterConsumerImpl
> 
> Hi There,
> 
> I am using Ctakes and have added my own annotators that utilize 
> CTakes. I need to use the medication annotator so I can retrieve the 
> medication names. In OrangeBookFilterConsumerImpl class , 
> consumeHits() method has a statements:
> final boolean isValid = isValid( "trade_name", text ) || isValid( 
> "ingredient", text );
> 
> It filters out some medication that I actually need. I made this 
> change "boolean isValid= ture"  to the code and made it work but I was 
> wondering if there was another way like changing something in the xml 
> files that  have the same impact  without changing the code?
> 
> 
> Thanks,
> Nick Nikandish
> Product Development Software Engineer
> Clinical Research Informatics
> 
> Emerging Health
> Montefiore Information Technology
> 6 Executive Blvd. Suite 290, Yonkers, NY 10701
> 914-457-6792 Office
> [email protected]<mailto:[email protected]>
> www.emerginghealthit.com<http://www.emerginghealthit.com/>
> www.montefiore.org<http://www.montefiore.org/>
> 
> [logo-montefiore-it]

Reply via email to