You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ctakes.apache.org by "Finan, Sean" <Se...@childrens.harvard.edu> on 2018/08/15 13:18:06 UTC

Re: Confusion regarding licensing of UMLS [EXTERNAL]

Hi Abhishek,

There is a very short introduction to building pipelines in ctakes 4.0 in a pamphlet that can be found at https://cwiki.apache.org/confluence/display/CTAKES/cTAKES+4.0 , section "Documentation", second link.  Pamphlet section 5.2, page 5.

There is a runnable example that prints discovered mentions and properties using a code-built pipeline.  ctakes-examples project, class ProcessDirBuilderRunner.  It uses the newer Cleartk engines instead of the Assertion engines.

Sean
________________________________________
From: Abhishek De <ab...@gmail.com>
Sent: Tuesday, August 14, 2018 11:23 PM
To: dev@ctakes.apache.org
Subject: Re: Confusion regarding licensing of UMLS [EXTERNAL]

Hi Peter,

Thanks for all the help you provided me even from your vacation. If someone
else is following this thread, please help me in this regard. I had hoped
that 4 years later, there would be some decent literature as well as
tutorials on the web, but sadly, it isn't the case. So could anyone please
help me in this regard?

Thanks and Regards,
Abhishek

On Wed, Aug 15, 2018 at 2:37 AM Peter Abramowitsch <pa...@gmail.com>
wrote:

> Hi Abhishek,
>
> I sympathize with your problem, and believe I’ve had the same one with the
> Assertion Engine.  I think there are indeed resource lookup issues and have
> had the same ones including that engine in a piper file.  Creating a
> resource description from a class only works for engine sources that have
> specific constant paths defined, and even then the resources need to be
> present at those paths.   However, I’m on vacation at the moment, and so I
> really don’t have the time or sources to help you.  Perhaps someone else on
> this mailing list can.
>
> Peter
>
> Sent from my iPad
>
> > On Aug 14, 2018, at 05:16, Abhishek De <ab...@gmail.com> wrote:
> >
> > Hi Peter,
> >
> > Thanks a lot for bearing with me. Actually, I'm working on a tight
> > deadline, and going through the entire codebase and the wiki meticulously
> > would take me over a month!! I'm sincerely hoping you would understand
> and
> > bear with me.
> >
> > As an update, I had applied for a UMLS license which got rejected, don't
> > know why!! I have re-applied for it, fingers crossed, this time, may the
> > UMLS gods accept my prayer!!
> >
> > My sole aim, for now is to get a pipeline working from Java code, whose
> > output I can see on the console window. I had a look at this for the
> order
> > in which the components are to be set up for a working pipeline:
> >
> >
> https://urldefense.proofpoint.com/v2/url?u=https-3A__cwiki.apache.org_confluence_display_CTAKES_cTAKES-2B4.0-2BComponent-2BUse-2BGuide&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=tED25FbW6NUUIcd3GeshS4b_FhLDAbcTqMf7lwnAVOw&e=
> >
> > As assertion comes first, I attempted to attack it first. I took the
> > TokenProcessingPipeline in ClinicalPipelineFactory and added the
> > AssertionAnalysisEngine to it. However, since the class was missing
> > a createAnnotatorDescription() method like the others, which is required
> by
> > the builder, I copied and pasted it there.
> >
> > public static AnalysisEngineDescription createAnnotatorDescription()
> throws
> > ResourceInitializationException{
> >  return
> >
> AnalysisEngineFactory.createEngineDescription(AssertionAnalysisEngine.class);
> > }
> >
> > The TokenProcessingPipeline now looked like this:
> >
> > public static AnalysisEngineDescription getTokenProcessingPipeline()
> throws
> > ResourceInitializationException, MalformedURLException {
> >      AggregateBuilder builder = new AggregateBuilder();
> >      builder.add(AssertionAnalysisEngine.createAnnotatorDescription());
> >      builder.add( SimpleSegmentAnnotator.createAnnotatorDescription() );
> >      builder.add( SentenceDetector.createAnnotatorDescription() );
> >      builder.add( TokenizerAnnotatorPTB.createAnnotatorDescription() );
> >      builder.add( LvgAnnotator.createAnnotatorDescription() );
> >      builder.add(
> > ContextDependentTokenizerAnnotator.createAnnotatorDescription() );
> >      builder.add( POSTagger.createAnnotatorDescription() );
> >      return builder.createAggregateDescription();
> >   }
> >
> > However, when I tried to run this pipeline, I got an exception:
> >
> > Exception in thread "main"
> > org.apache.uima.resource.ResourceInitializationException: Initialization
> of
> > annotator class
> > "org.apache.ctakes.assertion.medfacts.AssertionAnalysisEngine" failed.
> > (Descriptor: <unknown>)
> > at
> >
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.initializeAnalysisComponent(PrimitiveAnalysisEngine_impl.java:271)
> > at
> >
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.initialize(PrimitiveAnalysisEngine_impl.java:170)
> > at
> >
> org.apache.uima.impl.AnalysisEngineFactory_impl.produceResource(AnalysisEngineFactory_impl.java:94)
> > at
> >
> org.apache.uima.impl.CompositeResourceFactory_impl.produceResource(CompositeResourceFactory_impl.java:62)
> > at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:279)
> > at
> >
> org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:407)
> > at
> >
> org.apache.uima.analysis_engine.asb.impl.ASB_impl.setup(ASB_impl.java:256)
> > at
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initASB(AggregateAnalysisEngine_impl.java:429)
> > at
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initializeAggregateAnalysisEngine(AggregateAnalysisEngine_impl.java:373)
> > at
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initialize(AggregateAnalysisEngine_impl.java:186)
> > at
> >
> org.apache.uima.impl.AnalysisEngineFactory_impl.produceResource(AnalysisEngineFactory_impl.java:94)
> > at
> >
> org.apache.uima.impl.CompositeResourceFactory_impl.produceResource(CompositeResourceFactory_impl.java:62)
> > at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:279)
> > at
> >
> org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:407)
> > at
> >
> org.apache.uima.analysis_engine.asb.impl.ASB_impl.setup(ASB_impl.java:256)
> > at
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initASB(AggregateAnalysisEngine_impl.java:429)
> > at
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initializeAggregateAnalysisEngine(AggregateAnalysisEngine_impl.java:373)
> > at
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initialize(AggregateAnalysisEngine_impl.java:186)
> > at
> >
> org.apache.uima.impl.AnalysisEngineFactory_impl.produceResource(AnalysisEngineFactory_impl.java:94)
> > at
> >
> org.apache.uima.impl.CompositeResourceFactory_impl.produceResource(CompositeResourceFactory_impl.java:62)
> > at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:279)
> > at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:331)
> > at
> >
> org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:448)
> > at
> >
> org.apache.uima.fit.factory.AnalysisEngineFactory.createEngine(AnalysisEngineFactory.java:205)
> > at
> >
> org.apache.uima.fit.pipeline.SimplePipeline.runPipeline(SimplePipeline.java:227)
> > at
> >
> org.apache.uima.fit.pipeline.SimplePipeline.runPipeline(SimplePipeline.java:260)
> > at
> >
> org.apache.ctakes.clinicalpipeline.ClinicalPipelineFactory.main(ClinicalPipelineFactory.java:169)
> > Caused by: java.lang.NullPointerException
> > at java.io.File.<init>(File.java:277)
> > at
> >
> org.apache.ctakes.assertion.medfacts.AssertionAnalysisEngine.initialize(AssertionAnalysisEngine.java:89)
> > at
> >
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.initializeAnalysisComponent(PrimitiveAnalysisEngine_impl.java:266)
> > ... 26 more
> >
> > Upon tracing the root of the problem, I found that the
> > AssertionAnalysisEngine tries to initialize certain model resources, and
> > tries to obtain their file paths from a UimaContext:
> >
> > String assertionModelResourceKey = "assertionModelResource";
> >        String assertionModelFilePath = getContext().getResourceFilePath(
> >            assertionModelResourceKey);
> >        assertionModelFile = new File(assertionModelFilePath);
> >
> > I'm thinking that perhaps this context itself is not getting resolved. I
> > tried to search for some answers on the web, like this:
> >
> >
> https://urldefense.proofpoint.com/v2/url?u=http-3A__mail-2Darchives.apache.org_mod-5Fmbox_ctakes-2Ddev_201804.mbox_-253CCAO1JDHhf0Uo3eDYxoTWKWWM00-2BWWpwyJvEAQGDE35OpMwNGAzw-40mail.gmail.com-253E&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=XPOTgHDUlUgpsedWj9qYsYJHII55hgKJsCVVIwxEaxE&e=
> >
> > However, here, the file was being directly asked for by name, and I don't
> > have a concrete filename to search for. The ctakes-assertion-res module
> > contains some model files, but I can't correlate them to the files being
> > sought here. Please help.
> >
> > Thanks and Regards,
> > Abhishek
> >
> > On Sun, Aug 12, 2018 at 10:27 PM Peter Abramowitsch <
> pabramowitsch@gmail.com>
> > wrote:
> >
> >> Hi Abhishek, not meaning to offend, but I think you need to spend more
> time
> >> on the wiki site, a lot of what you are asking about is documented there
> >>
> >>
> >>
> https://urldefense.proofpoint.com/v2/url?u=https-3A__cwiki.apache.org_confluence_display_CTAKES_cTAKES-2B4.0-2BUser-2BInstall-2BGuide-23cTAKES4.0UserInstallGuide-2DcTAKESPipelineFabricatorGUI-28CreatingPiperFiles-29&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=iBAUHJUdzDa5-5hR0YZbvNcJlKvT5g60Ee_fUKoPrxY&e=
> >>
> >> If you have the binary release, you'll find the launch scripts in ./bin,
> >> if you have source you'll find it all in
> >> ./ctakes-distribution/src/main/bin
> >>
> >> The piper files are sprinkled throughout based on the modules that use
> them
> >> and are grouped under a common resource folder in the binary release
> >>
> >>
> >>
> ./ctakes/trunk/ctakes-assertion-res/target/classes/org/apache/ctakes/assertion/pipeline/TsAttributeCleartkSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-assertion-res/target/classes/org/apache/ctakes/assertion/pipeline/AssertionSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-assertion-res/target/classes/org/apache/ctakes/assertion/pipeline/AttributeCleartkSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-assertion-res/src/main/resources/org/apache/ctakes/assertion/pipeline/TsAttributeCleartkSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-assertion-res/src/main/resources/org/apache/ctakes/assertion/pipeline/AssertionSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-assertion-res/src/main/resources/org/apache/ctakes/assertion/pipeline/AttributeCleartkSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-core-res/target/classes/org/apache/ctakes/core/pipeline/DefaultTokenizerPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-core-res/target/classes/org/apache/ctakes/core/pipeline/FullTokenizerPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-core-res/target/classes/org/apache/ctakes/core/pipeline/TsDefaultTokenizerPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-core-res/target/classes/org/apache/ctakes/core/pipeline/TsFullTokenizerPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-core-res/src/main/resources/org/apache/ctakes/core/pipeline/DefaultTokenizerPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-core-res/src/main/resources/org/apache/ctakes/core/pipeline/FullTokenizerPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-core-res/src/main/resources/org/apache/ctakes/core/pipeline/TsDefaultTokenizerPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-core-res/src/main/resources/org/apache/ctakes/core/pipeline/TsFullTokenizerPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-clinical-pipeline-res/target/classes/org/apache/ctakes/clinical/pipeline/DefaultFastPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-clinical-pipeline-res/target/classes/org/apache/ctakes/clinical/pipeline/SectionedFastPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-clinical-pipeline-res/target/classes/org/apache/ctakes/clinical/pipeline/TsSectionedFastPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-clinical-pipeline-res/target/classes/org/apache/ctakes/clinical/pipeline/TsDefaultFastPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-clinical-pipeline-res/src/main/resources/org/apache/ctakes/clinical/pipeline/DefaultFastPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-clinical-pipeline-res/src/main/resources/org/apache/ctakes/clinical/pipeline/SectionedFastPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-clinical-pipeline-res/src/main/resources/org/apache/ctakes/clinical/pipeline/TsSectionedFastPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-clinical-pipeline-res/src/main/resources/org/apache/ctakes/clinical/pipeline/TsDefaultFastPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-ne-contexts-res/target/classes/org/apache/ctakes/necontexts/pipeline/NeContextsSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-ne-contexts-res/src/main/resources/org/apache/ctakes/necontexts/pipeline/NeContextsSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/HelloWorldAssertProps.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/HelloWorldCui.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/HelloWorld.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/ThreadSafeFullPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/FullPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/HelloWorldProps.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/ProcessDir.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/AssertionDefaults.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/HelloWorldTkProps.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/HelloWorldAssertProps.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/HelloWorldCui.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/HelloWorld.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/ThreadSafeFullPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/FullPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/HelloWorldProps.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/ProcessDir.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/AssertionDefaults.piper
> >>
> >>
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/HelloWorldTkProps.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/DefaultRelationTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/DefaultTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TsTemporalSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TsDefaultRelationTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/SectionedRelationTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TemporalSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TsDefaultTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TsSectionedRelationTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TsSectionedTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/SectionedTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/DefaultRelationTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/DefaultTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TsTemporalSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TsDefaultRelationTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/SectionedRelationTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TemporalSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TsDefaultTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TsSectionedRelationTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TsSectionedTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/SectionedTemporalPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/SectionedCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/DefaultAdvancedPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsDefaultCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsDefaultTemporalCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsSectionedCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/DefaultRelationCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsDefaultAdvancedPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsCorefSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsDefaultRelationCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/DefaultTemporalCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/DefaultCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsSectionedRelationCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/SectionedRelationCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/CorefSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/SectionedAdvancedPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsSectionedTemporalCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsSectionedAdvancedPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/SectionedTemporalCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/SectionedCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/DefaultAdvancedPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsDefaultCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsDefaultTemporalCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsSectionedCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/DefaultRelationCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsDefaultAdvancedPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsCorefSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsDefaultRelationCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/DefaultTemporalCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/DefaultCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsSectionedRelationCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/SectionedRelationCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/CorefSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/SectionedAdvancedPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsSectionedTemporalCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsSectionedAdvancedPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/SectionedTemporalCorefPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/RelationSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/DefaultRelationPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/TsDefaultRelationPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/TsRelationSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/TsSectionedRelationPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/SectionedRelationPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/RelationSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/DefaultRelationPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/TsDefaultRelationPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/TsRelationSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/TsSectionedRelationPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/SectionedRelationPipeline.piper
> >>
> >>
> ./ctakes/trunk/ctakes-dictionary-lookup-fast-res/target/classes/org/apache/ctakes/dictionary/lookup/fast/pipeline/DictionarySubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-dictionary-lookup-fast-res/target/classes/org/apache/ctakes/dictionary/lookup/fast/pipeline/TsDictionarySubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-dictionary-lookup-fast-res/src/main/resources/org/apache/ctakes/dictionary/lookup/fast/pipeline/DictionarySubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-dictionary-lookup-fast-res/src/main/resources/org/apache/ctakes/dictionary/lookup/fast/pipeline/TsDictionarySubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-chunker-res/target/classes/org/apache/ctakes/chunker/pipeline/ChunkerSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-chunker-res/target/classes/org/apache/ctakes/chunker/pipeline/TsChunkerSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-chunker-res/src/main/resources/org/apache/ctakes/chunker/pipeline/ChunkerSubPipe.piper
> >>
> >>
> ./ctakes/trunk/ctakes-chunker-res/src/main/resources/org/apache/ctakes/chunker/pipeline/TsChunkerSubPipe.piper
> >>
> >>
> >>
> >> On Sun, Aug 12, 2018 at 6:04 AM Abhishek De <ab...@gmail.com>
> >> wrote:
> >>
> >>> Hi Peter,
> >>>
> >>> I found the PiperCreator class in the ctakes-gui module which is
> opening
> >> up
> >>> the Pipeline Fabricator GUI with a lot of pipe bits which are seeming
> to
> >> be
> >>> overwhelming!! If I could get the piper samples which you are talking
> >>> about, I could have got a taste of how this thing works. But the
> >> resources
> >>> for this module does not contain those, nor does the ctakes-resources
> >>> separate download which contains the dictionaries. Also, you said
> >> "script"
> >>> and not "class". That makes me think you are speaking of something else
> >>> entirely, since there is no class named PiperRunner. So could you
> please
> >>> point me where to download these scripts and the resources?
> >>>
> >>> Thanks and Regards,
> >>> Abhishek
> >>>
> >>> On Sat, Aug 11, 2018 at 7:10 PM Peter Abramowitsch <
> >>> pabramowitsch@gmail.com>
> >>> wrote:
> >>>
> >>>> I would suggest looking into the piper system - the scripts
> >> piperCreator
> >>>> and piperRunner so you can construct/run pipelines with the bits you
> >>> want.
> >>>> Also look for the piper samples scattered throughout the resources
> >> area.
> >>>> But assembling pipelines using Java is simple too.   You just need to
> >>> learn
> >>>> the flow and the upstream dependencies of the parsers and annotators.
> >>>>
> >>>> Peter
> >>>>
> >>>> On Sat, Aug 11, 2018 at 3:28 PM Abhishek De <abhishekde1986@gmail.com
> >
> >>>> wrote:
> >>>>
> >>>>> Hi Peter,
> >>>>>
> >>>>> As you said, even if I don't use the UMLS dictionaries, I should be
> >>> able
> >>>> to
> >>>>> run the pipeline, right? But the class ClinicalPipelineFactory in the
> >>>>> ctakes-clinical-pipeline module, which initializes multiple pipelines
> >>> for
> >>>>> these various use cases, only defines a getDefaultPipeline() and
> >>>>> getFastPipeline() which have some annotating components in them. The
> >>>>> getDefaultPipeline() method defines a UmlsDictionaryLookupAnnotator
> >> in
> >>>> its
> >>>>> workflow. Even the fast pipeline defines a DefaultJCasTermAnnotator
> >> in
> >>>> its
> >>>>> workflow. When I try to run the sample main() method with either of
> >>> these
> >>>>> pipelines, they throw an error requiring the UMLS credentials. I
> >> mean,
> >>>> the
> >>>>> ClinicalPipelineWithUmls class is already present for handling the
> >> UMLS
> >>>>> path. Why do the rest of the pipelines also require UMLS
> >>> authentication?
> >>>>> Please suggest a pipeline which I might run and get some annotations
> >>>>> identified from the text without UMLS.
> >>>>>
> >>>>> Thanks and Regards,
> >>>>> Abhishek
> >>>>>
> >>>>> On Sat, Aug 11, 2018 at 1:36 PM Peter Abramowitsch <
> >>>>> pabramowitsch@gmail.com>
> >>>>> wrote:
> >>>>>
> >>>>>> Hi, yes there are a lot of details and use cases that are not
> >>>> documented,
> >>>>>> but there are quite a few bits of information if you take the time.
> >>>>>>
> >>>>>> To give some quick "answers" to your questions...  (I put that in
> >>>> quotes
> >>>>>> because these are interpretations and not legal opinions)
> >>>>>>
> >>>>>> You do not need a UMLS license if you don't include the UMLS lookup
> >>>>>> mechanism.    In this case only the Apache license probably applies
> >>>>>> https://urldefense.proofpoint.com/v2/url?u=http-3A__www.apache.org_licenses_&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=PNhVnlh9hNMfqAAGTKvP6G93qRkqYdtu4z4e0tdIceo&e=
> >>>>>>
> >>>>>> But if you do use UMLS, start by reading
> >>>>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__www.nlm.nih.gov_databases_umls.html&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=wZ4jnQCgtFW8RRLThNAhlpc2uN1lJOwHupR-f73Fsuk&e=
> >>>>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__uts.nlm.nih.gov_license.html&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=O8DfCU5pLsbDa13cTslYHxBeHFdmmgCN5h8-OnrrOFg&e=
> >>>>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__uts.nlm.nih.gov__help_license_validateumlsuserhelp.html&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=QDew7-hh7PJ7kyj5MwovZb0n5BTdtXLsj1h6_TvswbY&e=
> >>>>>>
> >>>>>> There are options for situations where you would centralize a
> >> ctakes
> >>>>>> service.  Some of the provisions have to do with the fact that
> >>>>>> that SNOMED vocabulary details are included in the UMLS output, and
> >>> the
> >>>>>> SNOMED organizations have specific licensing requirements that you
> >>> can
> >>>>> see
> >>>>>> on their site.
> >>>>>>
> >>>>>> I am nearly positive that you cannot use the UMLS mechanism in a
> >>>>> for-profit
> >>>>>> setting without an explicit license from SNOMED.  Also, regardless
> >> of
> >>>>>> whether the service as you deliver it is centralized, as I
> >> understand
> >>>> the
> >>>>>> language and diagrams on these sites, each and every end user needs
> >>> to
> >>>>>> have, and actively validate a current UMLS license.
> >>>>>>
> >>>>>> I've been involved in something similar to what you describe, but
> >> in
> >>> a
> >>>>>> non-commercial setting, and it does validate every end user.
> >>>>>>
> >>>>>> Peter
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> On Sat, Aug 11, 2018 at 7:45 AM Abhishek De <
> >>> abhishekde1986@gmail.com>
> >>>>>> wrote:
> >>>>>>
> >>>>>>> Hi all,
> >>>>>>>
> >>>>>>> I am Abhishek De, a newcomer to the CTAKES community. I had
> >> worked
> >>>> with
> >>>>>>> CTAKES over 4 years ago, but now I am trying to incorporate it
> >> into
> >>>> my
> >>>>>> Java
> >>>>>>> application as a senior developer, so I need to know a lot of
> >>> things
> >>>>>> about
> >>>>>>> it. For starters, I can see that even the pipeline without UMLS
> >>> needs
> >>>>>> UMLS
> >>>>>>> credentials in order to run. So I have the following questions:
> >>>>>>>
> >>>>>>> 1. Is there a certain fee which is required in order to apply
> >> for a
> >>>>> UMLS
> >>>>>>> license?
> >>>>>>>
> >>>>>>> 2. My organization is building this pharmacovigilance app which
> >>> will
> >>>>>>> internally use CTAKES for its client. Is it okay for only my
> >> parent
> >>>>>>> organization to have the UMLS license or do the client needs to
> >>> have
> >>>> it
> >>>>>>> too? If I expose the application as a service, with the servers
> >>>>> residing
> >>>>>> in
> >>>>>>> our organization's premises, would the client still need to have
> >> a
> >>>>>> licnse?
> >>>>>>>
> >>>>>>> 3. As there is precious little documentation on CTAKES, and many
> >>>> links
> >>>>>>> there are now dead including the ones giving instructions on how
> >> to
> >>>>>> install
> >>>>>>> dictionaries for RxNorm or SNOMED-CT, could anyone please help me
> >>> in
> >>>>> this
> >>>>>>> regard?
> >>>>>>>
> >>>>>>> 4. Also, I would like to know if there are any small dictionaries
> >>>> which
> >>>>>>> could be used free of charge or licensing, for my PoC.
> >>>>>>>
> >>>>>>> Thanks and Regards,
> >>>>>>> Abhishek De
> >>>>>>>
> >>>>>>
> >>>>>
> >>>>
> >>>
> >>
>


Re: Confusion regarding licensing of UMLS [EXTERNAL]

Posted by Peter Abramowitsch <pa...@gmail.com>.
Thanks Sean.  I too think something is broken with the Assertion Engine
resource lookup.  There are aspects of the Assertion package that I found
useful in the past.  The Zoner for instance.

On Wed, Aug 15, 2018, 3:18 PM Finan, Sean <Se...@childrens.harvard.edu>
wrote:

> Hi Abhishek,
>
> There is a very short introduction to building pipelines in ctakes 4.0 in
> a pamphlet that can be found at
> https://cwiki.apache.org/confluence/display/CTAKES/cTAKES+4.0 , section
> "Documentation", second link.  Pamphlet section 5.2, page 5.
>
> There is a runnable example that prints discovered mentions and properties
> using a code-built pipeline.  ctakes-examples project, class
> ProcessDirBuilderRunner.  It uses the newer Cleartk engines instead of the
> Assertion engines.
>
> Sean
> ________________________________________
> From: Abhishek De <ab...@gmail.com>
> Sent: Tuesday, August 14, 2018 11:23 PM
> To: dev@ctakes.apache.org
> Subject: Re: Confusion regarding licensing of UMLS [EXTERNAL]
>
> Hi Peter,
>
> Thanks for all the help you provided me even from your vacation. If someone
> else is following this thread, please help me in this regard. I had hoped
> that 4 years later, there would be some decent literature as well as
> tutorials on the web, but sadly, it isn't the case. So could anyone please
> help me in this regard?
>
> Thanks and Regards,
> Abhishek
>
> On Wed, Aug 15, 2018 at 2:37 AM Peter Abramowitsch <
> pabramowitsch@gmail.com>
> wrote:
>
> > Hi Abhishek,
> >
> > I sympathize with your problem, and believe I’ve had the same one with
> the
> > Assertion Engine.  I think there are indeed resource lookup issues and
> have
> > had the same ones including that engine in a piper file.  Creating a
> > resource description from a class only works for engine sources that have
> > specific constant paths defined, and even then the resources need to be
> > present at those paths.   However, I’m on vacation at the moment, and so
> I
> > really don’t have the time or sources to help you.  Perhaps someone else
> on
> > this mailing list can.
> >
> > Peter
> >
> > Sent from my iPad
> >
> > > On Aug 14, 2018, at 05:16, Abhishek De <ab...@gmail.com>
> wrote:
> > >
> > > Hi Peter,
> > >
> > > Thanks a lot for bearing with me. Actually, I'm working on a tight
> > > deadline, and going through the entire codebase and the wiki
> meticulously
> > > would take me over a month!! I'm sincerely hoping you would understand
> > and
> > > bear with me.
> > >
> > > As an update, I had applied for a UMLS license which got rejected,
> don't
> > > know why!! I have re-applied for it, fingers crossed, this time, may
> the
> > > UMLS gods accept my prayer!!
> > >
> > > My sole aim, for now is to get a pipeline working from Java code, whose
> > > output I can see on the console window. I had a look at this for the
> > order
> > > in which the components are to be set up for a working pipeline:
> > >
> > >
> >
> https://urldefense.proofpoint.com/v2/url?u=https-3A__cwiki.apache.org_confluence_display_CTAKES_cTAKES-2B4.0-2BComponent-2BUse-2BGuide&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=tED25FbW6NUUIcd3GeshS4b_FhLDAbcTqMf7lwnAVOw&e=
> > >
> > > As assertion comes first, I attempted to attack it first. I took the
> > > TokenProcessingPipeline in ClinicalPipelineFactory and added the
> > > AssertionAnalysisEngine to it. However, since the class was missing
> > > a createAnnotatorDescription() method like the others, which is
> required
> > by
> > > the builder, I copied and pasted it there.
> > >
> > > public static AnalysisEngineDescription createAnnotatorDescription()
> > throws
> > > ResourceInitializationException{
> > >  return
> > >
> >
> AnalysisEngineFactory.createEngineDescription(AssertionAnalysisEngine.class);
> > > }
> > >
> > > The TokenProcessingPipeline now looked like this:
> > >
> > > public static AnalysisEngineDescription getTokenProcessingPipeline()
> > throws
> > > ResourceInitializationException, MalformedURLException {
> > >      AggregateBuilder builder = new AggregateBuilder();
> > >      builder.add(AssertionAnalysisEngine.createAnnotatorDescription());
> > >      builder.add( SimpleSegmentAnnotator.createAnnotatorDescription()
> );
> > >      builder.add( SentenceDetector.createAnnotatorDescription() );
> > >      builder.add( TokenizerAnnotatorPTB.createAnnotatorDescription() );
> > >      builder.add( LvgAnnotator.createAnnotatorDescription() );
> > >      builder.add(
> > > ContextDependentTokenizerAnnotator.createAnnotatorDescription() );
> > >      builder.add( POSTagger.createAnnotatorDescription() );
> > >      return builder.createAggregateDescription();
> > >   }
> > >
> > > However, when I tried to run this pipeline, I got an exception:
> > >
> > > Exception in thread "main"
> > > org.apache.uima.resource.ResourceInitializationException:
> Initialization
> > of
> > > annotator class
> > > "org.apache.ctakes.assertion.medfacts.AssertionAnalysisEngine" failed.
> > > (Descriptor: <unknown>)
> > > at
> > >
> >
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.initializeAnalysisComponent(PrimitiveAnalysisEngine_impl.java:271)
> > > at
> > >
> >
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.initialize(PrimitiveAnalysisEngine_impl.java:170)
> > > at
> > >
> >
> org.apache.uima.impl.AnalysisEngineFactory_impl.produceResource(AnalysisEngineFactory_impl.java:94)
> > > at
> > >
> >
> org.apache.uima.impl.CompositeResourceFactory_impl.produceResource(CompositeResourceFactory_impl.java:62)
> > > at
> org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:279)
> > > at
> > >
> >
> org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:407)
> > > at
> > >
> >
> org.apache.uima.analysis_engine.asb.impl.ASB_impl.setup(ASB_impl.java:256)
> > > at
> > >
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initASB(AggregateAnalysisEngine_impl.java:429)
> > > at
> > >
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initializeAggregateAnalysisEngine(AggregateAnalysisEngine_impl.java:373)
> > > at
> > >
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initialize(AggregateAnalysisEngine_impl.java:186)
> > > at
> > >
> >
> org.apache.uima.impl.AnalysisEngineFactory_impl.produceResource(AnalysisEngineFactory_impl.java:94)
> > > at
> > >
> >
> org.apache.uima.impl.CompositeResourceFactory_impl.produceResource(CompositeResourceFactory_impl.java:62)
> > > at
> org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:279)
> > > at
> > >
> >
> org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:407)
> > > at
> > >
> >
> org.apache.uima.analysis_engine.asb.impl.ASB_impl.setup(ASB_impl.java:256)
> > > at
> > >
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initASB(AggregateAnalysisEngine_impl.java:429)
> > > at
> > >
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initializeAggregateAnalysisEngine(AggregateAnalysisEngine_impl.java:373)
> > > at
> > >
> >
> org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initialize(AggregateAnalysisEngine_impl.java:186)
> > > at
> > >
> >
> org.apache.uima.impl.AnalysisEngineFactory_impl.produceResource(AnalysisEngineFactory_impl.java:94)
> > > at
> > >
> >
> org.apache.uima.impl.CompositeResourceFactory_impl.produceResource(CompositeResourceFactory_impl.java:62)
> > > at
> org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:279)
> > > at
> org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:331)
> > > at
> > >
> >
> org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:448)
> > > at
> > >
> >
> org.apache.uima.fit.factory.AnalysisEngineFactory.createEngine(AnalysisEngineFactory.java:205)
> > > at
> > >
> >
> org.apache.uima.fit.pipeline.SimplePipeline.runPipeline(SimplePipeline.java:227)
> > > at
> > >
> >
> org.apache.uima.fit.pipeline.SimplePipeline.runPipeline(SimplePipeline.java:260)
> > > at
> > >
> >
> org.apache.ctakes.clinicalpipeline.ClinicalPipelineFactory.main(ClinicalPipelineFactory.java:169)
> > > Caused by: java.lang.NullPointerException
> > > at java.io.File.<init>(File.java:277)
> > > at
> > >
> >
> org.apache.ctakes.assertion.medfacts.AssertionAnalysisEngine.initialize(AssertionAnalysisEngine.java:89)
> > > at
> > >
> >
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.initializeAnalysisComponent(PrimitiveAnalysisEngine_impl.java:266)
> > > ... 26 more
> > >
> > > Upon tracing the root of the problem, I found that the
> > > AssertionAnalysisEngine tries to initialize certain model resources,
> and
> > > tries to obtain their file paths from a UimaContext:
> > >
> > > String assertionModelResourceKey = "assertionModelResource";
> > >        String assertionModelFilePath =
> getContext().getResourceFilePath(
> > >            assertionModelResourceKey);
> > >        assertionModelFile = new File(assertionModelFilePath);
> > >
> > > I'm thinking that perhaps this context itself is not getting resolved.
> I
> > > tried to search for some answers on the web, like this:
> > >
> > >
> >
> https://urldefense.proofpoint.com/v2/url?u=http-3A__mail-2Darchives.apache.org_mod-5Fmbox_ctakes-2Ddev_201804.mbox_-253CCAO1JDHhf0Uo3eDYxoTWKWWM00-2BWWpwyJvEAQGDE35OpMwNGAzw-40mail.gmail.com-253E&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=XPOTgHDUlUgpsedWj9qYsYJHII55hgKJsCVVIwxEaxE&e=
> > >
> > > However, here, the file was being directly asked for by name, and I
> don't
> > > have a concrete filename to search for. The ctakes-assertion-res module
> > > contains some model files, but I can't correlate them to the files
> being
> > > sought here. Please help.
> > >
> > > Thanks and Regards,
> > > Abhishek
> > >
> > > On Sun, Aug 12, 2018 at 10:27 PM Peter Abramowitsch <
> > pabramowitsch@gmail.com>
> > > wrote:
> > >
> > >> Hi Abhishek, not meaning to offend, but I think you need to spend more
> > time
> > >> on the wiki site, a lot of what you are asking about is documented
> there
> > >>
> > >>
> > >>
> >
> https://urldefense.proofpoint.com/v2/url?u=https-3A__cwiki.apache.org_confluence_display_CTAKES_cTAKES-2B4.0-2BUser-2BInstall-2BGuide-23cTAKES4.0UserInstallGuide-2DcTAKESPipelineFabricatorGUI-28CreatingPiperFiles-29&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=iBAUHJUdzDa5-5hR0YZbvNcJlKvT5g60Ee_fUKoPrxY&e=
> > >>
> > >> If you have the binary release, you'll find the launch scripts in
> ./bin,
> > >> if you have source you'll find it all in
> > >> ./ctakes-distribution/src/main/bin
> > >>
> > >> The piper files are sprinkled throughout based on the modules that use
> > them
> > >> and are grouped under a common resource folder in the binary release
> > >>
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-assertion-res/target/classes/org/apache/ctakes/assertion/pipeline/TsAttributeCleartkSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-assertion-res/target/classes/org/apache/ctakes/assertion/pipeline/AssertionSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-assertion-res/target/classes/org/apache/ctakes/assertion/pipeline/AttributeCleartkSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-assertion-res/src/main/resources/org/apache/ctakes/assertion/pipeline/TsAttributeCleartkSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-assertion-res/src/main/resources/org/apache/ctakes/assertion/pipeline/AssertionSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-assertion-res/src/main/resources/org/apache/ctakes/assertion/pipeline/AttributeCleartkSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-core-res/target/classes/org/apache/ctakes/core/pipeline/DefaultTokenizerPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-core-res/target/classes/org/apache/ctakes/core/pipeline/FullTokenizerPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-core-res/target/classes/org/apache/ctakes/core/pipeline/TsDefaultTokenizerPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-core-res/target/classes/org/apache/ctakes/core/pipeline/TsFullTokenizerPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-core-res/src/main/resources/org/apache/ctakes/core/pipeline/DefaultTokenizerPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-core-res/src/main/resources/org/apache/ctakes/core/pipeline/FullTokenizerPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-core-res/src/main/resources/org/apache/ctakes/core/pipeline/TsDefaultTokenizerPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-core-res/src/main/resources/org/apache/ctakes/core/pipeline/TsFullTokenizerPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-clinical-pipeline-res/target/classes/org/apache/ctakes/clinical/pipeline/DefaultFastPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-clinical-pipeline-res/target/classes/org/apache/ctakes/clinical/pipeline/SectionedFastPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-clinical-pipeline-res/target/classes/org/apache/ctakes/clinical/pipeline/TsSectionedFastPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-clinical-pipeline-res/target/classes/org/apache/ctakes/clinical/pipeline/TsDefaultFastPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-clinical-pipeline-res/src/main/resources/org/apache/ctakes/clinical/pipeline/DefaultFastPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-clinical-pipeline-res/src/main/resources/org/apache/ctakes/clinical/pipeline/SectionedFastPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-clinical-pipeline-res/src/main/resources/org/apache/ctakes/clinical/pipeline/TsSectionedFastPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-clinical-pipeline-res/src/main/resources/org/apache/ctakes/clinical/pipeline/TsDefaultFastPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-ne-contexts-res/target/classes/org/apache/ctakes/necontexts/pipeline/NeContextsSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-ne-contexts-res/src/main/resources/org/apache/ctakes/necontexts/pipeline/NeContextsSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/HelloWorldAssertProps.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/HelloWorldCui.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/HelloWorld.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/ThreadSafeFullPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/FullPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/HelloWorldProps.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/ProcessDir.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/AssertionDefaults.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/target/classes/org/apache/ctakes/examples/pipeline/HelloWorldTkProps.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/HelloWorldAssertProps.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/HelloWorldCui.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/HelloWorld.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/ThreadSafeFullPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/FullPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/HelloWorldProps.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/ProcessDir.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/AssertionDefaults.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-examples-res/src/main/resources/org/apache/ctakes/examples/pipeline/HelloWorldTkProps.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/DefaultRelationTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/DefaultTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TsTemporalSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TsDefaultRelationTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/SectionedRelationTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TemporalSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TsDefaultTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TsSectionedRelationTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/TsSectionedTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/target/classes/org/apache/ctakes/temporal/pipeline/SectionedTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/DefaultRelationTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/DefaultTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TsTemporalSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TsDefaultRelationTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/SectionedRelationTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TemporalSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TsDefaultTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TsSectionedRelationTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/TsSectionedTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-temporal-res/src/main/resources/org/apache/ctakes/temporal/pipeline/SectionedTemporalPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/SectionedCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/DefaultAdvancedPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsDefaultCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsDefaultTemporalCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsSectionedCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/DefaultRelationCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsDefaultAdvancedPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsCorefSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsDefaultRelationCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/DefaultTemporalCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/DefaultCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsSectionedRelationCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/SectionedRelationCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/CorefSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/SectionedAdvancedPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsSectionedTemporalCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/TsSectionedAdvancedPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/target/classes/org/apache/ctakes/coreference/pipeline/SectionedTemporalCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/SectionedCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/DefaultAdvancedPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsDefaultCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsDefaultTemporalCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsSectionedCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/DefaultRelationCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsDefaultAdvancedPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsCorefSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsDefaultRelationCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/DefaultTemporalCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/DefaultCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsSectionedRelationCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/SectionedRelationCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/CorefSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/SectionedAdvancedPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsSectionedTemporalCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/TsSectionedAdvancedPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-coreference-res/src/main/resources/org/apache/ctakes/coreference/pipeline/SectionedTemporalCorefPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/RelationSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/DefaultRelationPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/TsDefaultRelationPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/TsRelationSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/TsSectionedRelationPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/target/classes/org/apache/ctakes/relationextractor/pipeline/SectionedRelationPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/RelationSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/DefaultRelationPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/TsDefaultRelationPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/TsRelationSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/TsSectionedRelationPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-relation-extractor-res/src/main/resources/org/apache/ctakes/relationextractor/pipeline/SectionedRelationPipeline.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-dictionary-lookup-fast-res/target/classes/org/apache/ctakes/dictionary/lookup/fast/pipeline/DictionarySubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-dictionary-lookup-fast-res/target/classes/org/apache/ctakes/dictionary/lookup/fast/pipeline/TsDictionarySubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-dictionary-lookup-fast-res/src/main/resources/org/apache/ctakes/dictionary/lookup/fast/pipeline/DictionarySubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-dictionary-lookup-fast-res/src/main/resources/org/apache/ctakes/dictionary/lookup/fast/pipeline/TsDictionarySubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-chunker-res/target/classes/org/apache/ctakes/chunker/pipeline/ChunkerSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-chunker-res/target/classes/org/apache/ctakes/chunker/pipeline/TsChunkerSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-chunker-res/src/main/resources/org/apache/ctakes/chunker/pipeline/ChunkerSubPipe.piper
> > >>
> > >>
> >
> ./ctakes/trunk/ctakes-chunker-res/src/main/resources/org/apache/ctakes/chunker/pipeline/TsChunkerSubPipe.piper
> > >>
> > >>
> > >>
> > >> On Sun, Aug 12, 2018 at 6:04 AM Abhishek De <abhishekde1986@gmail.com
> >
> > >> wrote:
> > >>
> > >>> Hi Peter,
> > >>>
> > >>> I found the PiperCreator class in the ctakes-gui module which is
> > opening
> > >> up
> > >>> the Pipeline Fabricator GUI with a lot of pipe bits which are seeming
> > to
> > >> be
> > >>> overwhelming!! If I could get the piper samples which you are talking
> > >>> about, I could have got a taste of how this thing works. But the
> > >> resources
> > >>> for this module does not contain those, nor does the ctakes-resources
> > >>> separate download which contains the dictionaries. Also, you said
> > >> "script"
> > >>> and not "class". That makes me think you are speaking of something
> else
> > >>> entirely, since there is no class named PiperRunner. So could you
> > please
> > >>> point me where to download these scripts and the resources?
> > >>>
> > >>> Thanks and Regards,
> > >>> Abhishek
> > >>>
> > >>> On Sat, Aug 11, 2018 at 7:10 PM Peter Abramowitsch <
> > >>> pabramowitsch@gmail.com>
> > >>> wrote:
> > >>>
> > >>>> I would suggest looking into the piper system - the scripts
> > >> piperCreator
> > >>>> and piperRunner so you can construct/run pipelines with the bits you
> > >>> want.
> > >>>> Also look for the piper samples scattered throughout the resources
> > >> area.
> > >>>> But assembling pipelines using Java is simple too.   You just need
> to
> > >>> learn
> > >>>> the flow and the upstream dependencies of the parsers and
> annotators.
> > >>>>
> > >>>> Peter
> > >>>>
> > >>>> On Sat, Aug 11, 2018 at 3:28 PM Abhishek De <
> abhishekde1986@gmail.com
> > >
> > >>>> wrote:
> > >>>>
> > >>>>> Hi Peter,
> > >>>>>
> > >>>>> As you said, even if I don't use the UMLS dictionaries, I should be
> > >>> able
> > >>>> to
> > >>>>> run the pipeline, right? But the class ClinicalPipelineFactory in
> the
> > >>>>> ctakes-clinical-pipeline module, which initializes multiple
> pipelines
> > >>> for
> > >>>>> these various use cases, only defines a getDefaultPipeline() and
> > >>>>> getFastPipeline() which have some annotating components in them.
> The
> > >>>>> getDefaultPipeline() method defines a UmlsDictionaryLookupAnnotator
> > >> in
> > >>>> its
> > >>>>> workflow. Even the fast pipeline defines a DefaultJCasTermAnnotator
> > >> in
> > >>>> its
> > >>>>> workflow. When I try to run the sample main() method with either of
> > >>> these
> > >>>>> pipelines, they throw an error requiring the UMLS credentials. I
> > >> mean,
> > >>>> the
> > >>>>> ClinicalPipelineWithUmls class is already present for handling the
> > >> UMLS
> > >>>>> path. Why do the rest of the pipelines also require UMLS
> > >>> authentication?
> > >>>>> Please suggest a pipeline which I might run and get some
> annotations
> > >>>>> identified from the text without UMLS.
> > >>>>>
> > >>>>> Thanks and Regards,
> > >>>>> Abhishek
> > >>>>>
> > >>>>> On Sat, Aug 11, 2018 at 1:36 PM Peter Abramowitsch <
> > >>>>> pabramowitsch@gmail.com>
> > >>>>> wrote:
> > >>>>>
> > >>>>>> Hi, yes there are a lot of details and use cases that are not
> > >>>> documented,
> > >>>>>> but there are quite a few bits of information if you take the
> time.
> > >>>>>>
> > >>>>>> To give some quick "answers" to your questions...  (I put that in
> > >>>> quotes
> > >>>>>> because these are interpretations and not legal opinions)
> > >>>>>>
> > >>>>>> You do not need a UMLS license if you don't include the UMLS
> lookup
> > >>>>>> mechanism.    In this case only the Apache license probably
> applies
> > >>>>>>
> https://urldefense.proofpoint.com/v2/url?u=http-3A__www.apache.org_licenses_&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=PNhVnlh9hNMfqAAGTKvP6G93qRkqYdtu4z4e0tdIceo&e=
> > >>>>>>
> > >>>>>> But if you do use UMLS, start by reading
> > >>>>>>
> https://urldefense.proofpoint.com/v2/url?u=https-3A__www.nlm.nih.gov_databases_umls.html&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=wZ4jnQCgtFW8RRLThNAhlpc2uN1lJOwHupR-f73Fsuk&e=
> > >>>>>>
> https://urldefense.proofpoint.com/v2/url?u=https-3A__uts.nlm.nih.gov_license.html&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=O8DfCU5pLsbDa13cTslYHxBeHFdmmgCN5h8-OnrrOFg&e=
> > >>>>>>
> https://urldefense.proofpoint.com/v2/url?u=https-3A__uts.nlm.nih.gov__help_license_validateumlsuserhelp.html&d=DwIFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=paY_XjRKMyWf-1kr-_W9Z2jh1wQvymH2PIyF4_tBow0&s=QDew7-hh7PJ7kyj5MwovZb0n5BTdtXLsj1h6_TvswbY&e=
> > >>>>>>
> > >>>>>> There are options for situations where you would centralize a
> > >> ctakes
> > >>>>>> service.  Some of the provisions have to do with the fact that
> > >>>>>> that SNOMED vocabulary details are included in the UMLS output,
> and
> > >>> the
> > >>>>>> SNOMED organizations have specific licensing requirements that you
> > >>> can
> > >>>>> see
> > >>>>>> on their site.
> > >>>>>>
> > >>>>>> I am nearly positive that you cannot use the UMLS mechanism in a
> > >>>>> for-profit
> > >>>>>> setting without an explicit license from SNOMED.  Also, regardless
> > >> of
> > >>>>>> whether the service as you deliver it is centralized, as I
> > >> understand
> > >>>> the
> > >>>>>> language and diagrams on these sites, each and every end user
> needs
> > >>> to
> > >>>>>> have, and actively validate a current UMLS license.
> > >>>>>>
> > >>>>>> I've been involved in something similar to what you describe, but
> > >> in
> > >>> a
> > >>>>>> non-commercial setting, and it does validate every end user.
> > >>>>>>
> > >>>>>> Peter
> > >>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>>> On Sat, Aug 11, 2018 at 7:45 AM Abhishek De <
> > >>> abhishekde1986@gmail.com>
> > >>>>>> wrote:
> > >>>>>>
> > >>>>>>> Hi all,
> > >>>>>>>
> > >>>>>>> I am Abhishek De, a newcomer to the CTAKES community. I had
> > >> worked
> > >>>> with
> > >>>>>>> CTAKES over 4 years ago, but now I am trying to incorporate it
> > >> into
> > >>>> my
> > >>>>>> Java
> > >>>>>>> application as a senior developer, so I need to know a lot of
> > >>> things
> > >>>>>> about
> > >>>>>>> it. For starters, I can see that even the pipeline without UMLS
> > >>> needs
> > >>>>>> UMLS
> > >>>>>>> credentials in order to run. So I have the following questions:
> > >>>>>>>
> > >>>>>>> 1. Is there a certain fee which is required in order to apply
> > >> for a
> > >>>>> UMLS
> > >>>>>>> license?
> > >>>>>>>
> > >>>>>>> 2. My organization is building this pharmacovigilance app which
> > >>> will
> > >>>>>>> internally use CTAKES for its client. Is it okay for only my
> > >> parent
> > >>>>>>> organization to have the UMLS license or do the client needs to
> > >>> have
> > >>>> it
> > >>>>>>> too? If I expose the application as a service, with the servers
> > >>>>> residing
> > >>>>>> in
> > >>>>>>> our organization's premises, would the client still need to have
> > >> a
> > >>>>>> licnse?
> > >>>>>>>
> > >>>>>>> 3. As there is precious little documentation on CTAKES, and many
> > >>>> links
> > >>>>>>> there are now dead including the ones giving instructions on how
> > >> to
> > >>>>>> install
> > >>>>>>> dictionaries for RxNorm or SNOMED-CT, could anyone please help me
> > >>> in
> > >>>>> this
> > >>>>>>> regard?
> > >>>>>>>
> > >>>>>>> 4. Also, I would like to know if there are any small dictionaries
> > >>>> which
> > >>>>>>> could be used free of charge or licensing, for my PoC.
> > >>>>>>>
> > >>>>>>> Thanks and Regards,
> > >>>>>>> Abhishek De
> > >>>>>>>
> > >>>>>>
> > >>>>>
> > >>>>
> > >>>
> > >>
> >
>
>