Sure, Sean. Please !

On 28 November 2017 at 23:16, Finan, Sean <sean.fi...@childrens.harvard.edu>
wrote:

> Hi Bhagwat,
>
> I will try to answer this over the next day or two.  Somebody else may
> have some free time and get to you first ...
>
> Sean
>
> -----Original Message-----
> From: Bhagwat Posane [mailto:bhagwat.pos...@gmail.com]
> Sent: Tuesday, November 28, 2017 12:11 AM
> To: dev@ctakes.apache.org
> Subject: Re: Interpret context out of clinical note [EXTERNAL]
>
> Hello Sean,
>
> Thank you very much for your patience and bare with my basic queries.
>
> 1) What information you are trying to obtain from a note.  An example
> sentence would help.
>
> >> Here are some example sentence from which I want to make out weather
> >> cystoscopy
> is done or not.
> >> ex:
> Note 1:
> In addition he has bilateral stones, non-obstructing and bilateral renal
> cysts.     I have been recommended that he
> obtain a CT scan for staging, office cystoscopy for diagnosis,  and
> subsequently a bladder biopsy excision of the bladder tumor.
> ----> cystoscopy not done
>
>
> Note 2:
> He has incidental bilateral renal stones 4.4 mm on the right and 2 mm on
> the left.    Cystoscopy showed a bladder
> tumor on the floor of the bladder right side sessile 3 cm. suspicious for
> invasion  .  Biopsy showed no invasion but high grade.
> ---> cystoscopy done
>
>
> Note 3:
> Cystoscopy 2/10/16 shows the fistula, BPH, and no bladder lesions.    Will
> proceed with the fistula closure.    CT
> DONE IN THE HOSPITAL 2/24/16 SHOWED  INVASIVE BLADDER CANCER INTRA-MURAL
> OBSTRUCTING BOTH KIDNEYS.  PATIENT WILL REQURIE A CYSTECTOMY AND URINARY
> DIVERSION.
> ---> Cystoscopy done / CYSTECTOMY  not done
>
>
> Note 4:
> Other medical history in this patient includes diabetes, high blood
> pressure.  Surgical history includes gallbladder,
> liver biopsy, bladder tumor resection as stated above.    Return in 12 mos.
> for repeat cystoscopy.
> ---> cystoscopy done
>
>
> Note 5:
> Medical history in this patient is left blank except for thyroid disease.
>   Surgical history includes some hand
> surgery. He also had some kind of eye surgery in 1987.    Plan will be
> cystoscopy, resection of bladder tumor for staging and retrograde
> pyelogram.  This is scheduled to be done at Medical City on July 20 at 7:30
> in the morning.
> ----> cystoscopy done
>
> ************************************************************
> ************************************************************
> ********************************************************************
>
> 2) What you have already done to successfully or unsuccessfully obtain the
> information.
>
> >> I had checked outputs on web api of ctakes by giving some notes, I
> suspected TLINK must be helpful component to get the above work done.
> >> so I followed the path how to get the TLINK statement output  and I
> achieved it using piper file.
>
> ************************************************************
> ************************************************************
> ********************************************************************
>
> 3) What you do understand at this point in time.
> >> I understood only how to run particular pipeline using piper file and
> get the output in HTML file.
> >> I have gone through the ctakes-wiki, I have brief idea about each
> module.
>
> ************************************************************
> ************************************************************
> ********************************************************************
>
> 4) What you think is missing from your understanding.
> >>Till now I had thought of using TLINKS to capture the context out of
> note. I think so because of categories in TLINKS. After fetching TLINKS in
> HTML format, while interpreting context, I feel mere TLINK wont help and I
> need something else to get my work done.
> >>At present I think I am lost somewhere and not able to figure out the
> pipeline that needs to be used to get my work done
>
> ************************************************************
> ************************************************************
> ********************************************************************
> 5) What you really need from us.  A workflow?  A pipeline?  Pointers
> toward existing code?  Pointers toward datatypes?  A deeper explanation of
> existing code (pick 1 class)?  Help writing new ctakes code of your own?
>
> >> More precisely, I need a pipeline to do above task, and deeper
> explanation of code of this pipeline. Having code insight I will have a
> better control on the output, i.e. instead of having output in xmi/html, I
> can prepare collection or so for the output. This may need to write new
> cTakes        code, not sure though.
>
>
>
> On 27 November 2017 at 19:02, Finan, Sean <Sean.Finan@childrens.harvard.
> edu>
> wrote:
>
> > Hi Bhagwat.
> >
> > You wrote:
> > > Now coming back to our original question for which this thread has
> > > been
> > initiated.
> > > I was trying to get the context out of clinical notes. for ex. If
> > > any
> > procedure is happened or not on patient.
> > >  ...
> > > By following this clues, I am nowhere.
> > > Could you please provide information on which pipeline I should have
> > > to
> > run to achieve this goal, and how?
> >
> > Your snippet of my previous message is incomplete.  The sentence that
> > I wrote following what you copied was:
> > ---  In those files each "add" statement is followed by an annotator
> > class name.
> >
> > Those were your clues.   Those annotator classes provide the information
> > that you were asking about.  Here are the contents of the
> > AttributeClearTkSubPipe.piper:
> > ==========================================
> > // Commands and parameters to create a default entity attributes
> > processing sub-pipeline.  This is not a full pipeline.
> >
> > // Add the Dependency parser for use by cleartk addDescription
> > ClearNLPDependencyParserAE // Add the Semantic Role Labeler parser for
> > use by cleartk addLogged ClearNLPSemanticRoleLabelerAE
> >
> > // Add the cleartk package for cleartk class lookups package
> > org.apache.ctakes.assertion.medfacts.cleartk
> >
> > // Add the cleartk attribute engines, logging for them as a block add
> > StartFinishLogger LOGGER_NAME=CleartkAnalysisEngine
> > LOGGER_TASK="Assigning Attributes" IS_START=true addDescription
> > PolarityCleartkAnalysisEngine addDescription
> > UncertaintyCleartkAnalysisEngine addDescription
> > HistoryCleartkAnalysisEngine addDescription
> > ConditionalCleartkAnalysisEngine addDescription
> > GenericCleartkAnalysisEngine addDescription
> > SubjectCleartkAnalysisEngine add StartFinishLogger
> > LOGGER_NAME=CleartkAnalysisEngine LOGGER_TASK="Assigning Attributes"
> > ==========================================
> >
> > The comments in the file provide hints, and the names of the annotator
> > classes should give an even greater indication of function.  "
> PolarityCleartkAnalysisEngine"
> > assigns polarity (negation), "UncertaintyCleartkAnalysisEngine"
> > assigns uncertainty, etc.
> >
> > It is far from exhaustive, but you should always browse the ctakes
> > wiki before posting to the dev list.  The page on Assertion:
> > https://urldefense.proofpoint.com/v2/url?u=https-3A__cwiki.apache.org_
> > confluence_display_CTAKES_cTAKES-2B4.0-2B-2D-2BAssertion&d=DwIBaQ&c=qS
> > 4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6
> > r0bcpKGd4f7d4gTao&m=xI09LL4AitA-w9uu3DF3OBqlDGFKNeuB7wCAi5UxnYY&s=7oBh
> > A5oVMUlUqetkOGeynSeay1WE4SnfhRU9agGr8gs&e=
> >
> > If you visit the page on the default clinical pipeline you will see
> > that it extracts negation, uncertainty and subject (right at the top,
> > plus a diagram).
> > https://urldefense.proofpoint.com/v2/url?u=https-3A__cwiki.apache.org_
> > confluence_display_CTAKES_&d=DwIBaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMS
> > dioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=xI09LL4Ait
> > A-w9uu3DF3OBqlDGFKNeuB7wCAi5UxnYY&s=HOuzDHk2YB6nz0Lm-E0TR2oSxUA-j30dPj
> > 4PXUR-aeY&e=
> > Default+Clinical+Pipeline
> >
> >  Near the bottom of that wiki page is stated "... runClinicalPipeline
> > runs the piper file DefaultFastPipeline.piper ...", and "piper file" is
> a link.
> > https://urldefense.proofpoint.com/v2/url?u=https-3A__cwiki.apache.org_
> > confluence_display_CTAKES_Piper-2BFiles&d=DwIBaQ&c=qS4goWBT7poplM69zy_
> > 3xhKwEW14JZMSdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao
> > &m=xI09LL4AitA-w9uu3DF3OBqlDGFKNeuB7wCAi5UxnYY&s=c2wUBjNt1mjoFtkAx1kKb
> > nDiMv7PSkXF5HBv1j-pOXg&e=
> >
> > Near the bottom of the piper files wiki page is a diagram of the
> > DefaultFastPipeline.piper that clearly indicates that it uses the
> > AttributeClearTkSubPipe.piper, and it even lists the contents (as
> > above) of that sub-pipeline.
> >
> > So, I am really confused as to what information you really want.  You
> > actually started this topic with:
> > > I have seen the results of user installation of cTakes , the output
> > > is
> > pretty interesting.
> > > Can anybody point to the source code of the same?
> >
> > Gandi pointed you towards the ctakes source repository.
> >
> > You apparently got the source code for ctakes, and then stated:
> > > Now I am looking for the source-code that gives this result for a
> > clinical note.
> >
> > Tim pointed you to Apache UIMA and the different modules that make up
> > the default clinical pipeline.
> > I pointed you toward the wiki page for some additional information.
> >
> > You then stated:
> > > I have run ctakes-example project that internally executes
> > ClinicalPipelineFactory.getDefaultPipeline() method.
> > > This has given results like POS tag, Polarity, etc.
> > > Now, I am more interested in finding Procedure, Medication, Drug, etc.
> > > Could you please point me to the code file ...
> >
> > At this point Gandhi pointed to some helpful code.
> >
> > Then later you asked about temporal links because you thought that you
> > needed them to provide certain information.
> > > I think TLINKS  values on web API maybe helpful to get the required
> > result, not sure though. Please confirm
> > > I am not able to find the code to generate TLINKS, could you please
> > > help
> > me locate the code.
> >
> >  Tim (correctly) stated that you might be more interested in
> > event/entity attributes such as negation and pointed you towards
> > modules that make up the default pipeline.
> >
> > Then, in your last message you ask:
> > > Could you please provide information on which pipeline I should have
> > > to
> > run to achieve this goal, and how?
> >
> > Since we seem to have gone back and forth on this, I think that it
> > might help everybody trying to help you if you could start over and
> clearly state:
> > 1) What information you are trying to obtain from a note.  An example
> > sentence would help.
> > 2) What you have already done to successfully or unsuccessfully obtain
> > the information.
> > 3) What you do understand at this point in time.
> > 4) What you think is missing from your understanding.
> > 5) What you really need from us.  A workflow?  A pipeline?  Pointers
> > toward existing code?  Pointers toward datatypes?  A deeper
> > explanation of existing code (pick 1 class)?  Help writing new ctakes
> code of your own?
> >
> >
> > Thank you,
> > Sean
> >
> >
> > -----Original Message-----
> > From: Bhagwat Posane [mailto:bhagwat.pos...@gmail.com]
> > Sent: Monday, November 27, 2017 12:49 AM
> > To: dev@ctakes.apache.org
> > Subject: Re: Interpret context out of clinical note [EXTERNAL]
> >
> > Hello Sean,
> >
> > Thank you for the inputs, Now coming back to our original question for
> > which this thread has been initiated.
> >
> > I was trying to get the context out of clinical notes. for ex. If any
> > procedure is happened or not on patient.
> >
> > To achieve this you mentioned some points :
> >
> > You can visit the ctakes-assertion-res module for some clues.
> > > Navigate to ctakes-assertion-res    src/main/resources/
> > > org/apache/ctakes/assertion/pipeline/
> > > There are two .piper files there.  Each one covers a different way
> > > to get the information that you mentioned.
> >
> >
> > By following this clues, I am nowhere.
> > Could you please provide information on which pipeline I should have
> > to run to achieve this goal, and how?
> >
> >
> > On 24 November 2017 at 21:24, Finan, Sean <Sean.Finan@childrens.harvard.
> > edu>
> > wrote:
> >
> > > Hi Bhagwat,
> > >
> > > Ok, a couple of things are problematic.
> > >
> > > 1.  the DefaultFastPipeline already contains attribute detection
> > > using the AttributeClearTkSubPipe.piper.  That sub- pipeline adds
> > > the ClearNLPSemanticRoleLabelerAE.  So does the AssertionSubPipe.piper.
> > > The pipeline cannot have two instances of that annotator.  The fix
> > > for this is to just add the AssertionEngines that are at the bottom
> > > of the AssertionSubPipe.piper.
> > >
> > > 2.  The assertion engines don't work.  They will spit out some log
> > > messages about not being usable until ctakes-76 is implemented.
> > > Then you will get a NullPointerException and ctakes will happily crash.
> > >
> > > James Masanz made the last comment on ctakes-76:
> > > https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.o
> > > rg
> > > _jira_browse_CTAKES-2D76&d=DwIBaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMS
> > > di
> > > oCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=wGmqUbPS3-
> > > WJ
> > > RSYmkNbjZ1e-OfMJTOVk6wbzOElQUrE&s=ZyPD1MbOImp08cCdSo0HeecCXAqUatZEZm
> > > hA
> > > W-cJVtc&e=
> > > which includes the information:
> > > "when this issue gets resolved (the jars are available from maven
> > > central) then ctakes-assertion could be updated again to use"
> > >
> > > So, what to do?
> > > Well, my advice would be to just skip the Assertion engines.  The
> > > default ClearTk attribute engines will produce the same types of
> > > event and entity attributes and they are already in the default
> pipeline.
> > > Is there a reason that you wanted to use the older Assertion engines?
> > > Was it just listed in (unfortunately) outdated documentation?
> > >
> > > Sean
> > >
> > >
> > > -----Original Message-----
> > > From: Bhagwat Posane [mailto:bhagwat.pos...@gmail.com]
> > > Sent: Friday, November 24, 2017 8:58 AM
> > > To: dev@ctakes.apache.org
> > > Subject: Re: Interpret context out of clinical note [EXTERNAL]
> > >
> > > Hello Sean,
> > >
> > > As you mentioned in previous email The annotators in the Assertion
> > > piper require several other annotators to run first, so to run
> > > AssertionSubPipe.piper I have added DefaultFastPipeline and
> > > AssertionDefaults piper file before that.
> > >
> > > for reference below text is from my piper file:
> > >
> > > ************************************************************
> > > *********************
> > > reader FileTreeReader InputDirectory=D:\Bhagwat\Notes load
> > > org/apache/ctakes/clinical/pipeline/DefaultFastPipeline.piper
> > > load org/apache/ctakes/examples/pipeline/AssertionDefaults.piper
> > > load AssertionSubPipe.piper
> > >
> > > // Temporal (event, time, dtr, tlink) load TemporalSubPipe.piper
> > >
> > > // Html output
> > > set OutputDirectory=D:\Bhagwat\HTMLoutput
> > > add pretty.html.HtmlTextWriter
> > >
> > > //XMI output
> > > //writeXmis D:\Bhagwat\XMI
> > > ************************************************************
> > > *********************
> > >
> > > As I run this piper file the command addLogged
> > > ClearNLPSemanticRoleLabelerAE  It is showing started processing....
> > > and never finished. when I debugged the code I found it is going in
> > > infinite loop for one of the sentence from clinical note.
> > >
> > > The code which goes in Infinite loop is in DEPNode.class file
> > > ************************************************************
> > > ************************************************************
> > > ********************
> > > public boolean isDescendentOf(DEPNode node) { DEPNode head =
> > > getHead(); while (head != null) { if (head == node) return true;
> > > head = head.getHead(); } return false; }
> > > ************************************************************
> > > ************************************************************
> > > ********************
> > > if (head == node) this condition never becomes true !
> > >
> > >
> > > I have added clinical notes for your reference,for the highlighted
> > > line the ClearNLPSemanticRoleLablerAE goes in infinite loop.
> > >
> > > ************************************************************
> > > ************************************************************
> > > *********************
> > > Note 1:
> > > The patient is XX years old with gross hematuria beginning  ten days
> ago.
> > > He has pain over the bladder.
> > > He smoked until XXXX.  His country of  origin is XXXX.  He has been
> > > here for two years.
> > > Ultrasound is planned on 3/26/2015 shows a mass in the  bladder 3.4
> > > x
> > > 3.8 x
> > > 3.1 cm.
> > >
> > >
> > >
> > > Note 2:
> > > This is a 67-year-old patient followed for erectile dysfunction and
> > benign
> > > prostatic hyperplasia.     Prostate symptoms consist of slow stream and
> > NX
> > > X 2. TUMT explained to the patient.
> > > Urinalysis showed 2+ sugar before and trace of blood. No retention,
> > > burning or blood. He  is up perhaps once at night to void depending
> > > upon his fluid
> > > intake.    PSA was .3 on 1/12.
> > > The patient use to take AndroGel squirt three a day. T was 483 in Nov.
> > > 2011. T was 531 on 1/13 by internist. He has been off the Androgel.
> > > Testosterone is rechecked.  He may choose to use IM testosterone at
> home
> > > self administered.     He also uses TriMix for ED.
> > > He has diminished number and frequency of erections.  Duration is
> years.
> > > Modifying factors include Diabetes. Severity is 8 of 10. He no
> > > logner uses Dialis.  TriMix refilled.
> > > Patient has lost 40 lbs on Victosa administered by his endocrinologist.
> > >
> > > ************************************************************
> > > ************************************************************
> > > *********************
> > >
> > > The Interesting thing is when I run only the highlighted sentence as
> > > a note it executes successfully, it means to get into infinite loop
> > > the highlighted sentence should have at least one sentence with it.
> > > Could you please provide your thoughts on it.
> > >
> > > Sorry for lengthy explanation, but I thought it is necessary.
> > >
> > >
> > >
> > > On 24 November 2017 at 01:22, Finan, Sean
> <Sean.Finan@childrens.harvard.
> > > edu>
> > > wrote:
> > >
> > > > Hi Bhagwat,
> > > >
> > > > Thanks for the heads up on the "file:" issue.  I will check to see
> > > > if the usage has changed and fix the piper.
> > > >
> > > > Sean
> > > >
> > > > -----Original Message-----
> > > > From: Bhagwat Posane [mailto:bhagwat.pos...@gmail.com]
> > > > Sent: Thursday, November 23, 2017 9:17 AM
> > > > To: dev@ctakes.apache.org
> > > > Subject: Re: Interpret context out of clinical note [EXTERNAL]
> > > >
> > > > Thanks James, It worked using cast to Map. !
> > > >
> > > > Sean,
> > > > In AssertionDefaults.piper you set the file like:
> > > >
> > > > set
> > > > assertionModelResource=file:org/apache/ctakes/assertion/models/i2b2.
> > > > mo
> > > > del
> > > >
> > > > As I run this piper file it throws file not found exception, it
> > > > resolved for me by removing "file:" from command, I suppose this
> > > > needs
> > > to be fixed.
> > > >
> > > >
> > > > On 22 November 2017 at 23:21, Finan, Sean
> > <Sean.Finan@childrens.harvard.
> > > > edu>
> > > > wrote:
> > > >
> > > > > Wow, that is really strange.
> > > > >
> > > > > https://urldefense.proofpoint.com/v2/url?u=https-3A__uima.apache
> > > > > .o
> > > > > rg
> > > > > _d
> > > > > _uimafit-2Dcurrent_api_org_&d=DwIBaQ&c=qS4goWBT7poplM69zy_3xhKwE
> > > > > W1
> > > > > 4J
> > > > > ZM
> > > > > SdioCoppxeFU&r=fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=1A9
> > > > > as
> > > > > f1
> > > > > ga
> > > > > bEGz-5fQfVfXbp2BcZEJaZIiJ4zSk09P1M&s=jo0yN7BJTt98IHerLXLK4aQvmSO
> > > > > An
> > > > > 90
> > > > > pU
> > > > > lzHg00ynFI&e=
> > > > > apache/uima/fit/util/JCasUtil.html
> > > > >
> > > > >
> > > > >
> > > > > -----Original Message-----
> > > > > From: James Masanz [mailto:masanz.ja...@gmail.com]
> > > > > Sent: Wednesday, November 22, 2017 12:50 PM
> > > > > To: dev@ctakes.apache.org
> > > > > Subject: Re: Interpret context out of clinical note [EXTERNAL]
> > > > >
> > > > > If I use Eclipse, at build time I also get the error
> > > > >
> > > > > method putAll(Map<? extends Annotation,? extends
> > > > > List<IdentifiedAnnotation>>) in the type Map<Annotation,List<
> > > > > IdentifiedAnnotation>>
> > > > > is not applicable for the arguments (Map)
> > > > >
> > > > > I haven't looked into why.
> > > > >
> > > > > A quick workaround is to add a cast to Map
> > > > >
> > > > > allCovering.putAll( (Map)JCasUtil.indexCovering( jCas, covered,
> > > > > covering ) );
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > On Wed, Nov 22, 2017 at 8:40 AM, Finan, Sean <
> > > > > sean.fi...@childrens.harvard.edu> wrote:
> > > > >
> > > > > > Hi Bhagwat,
> > > > > >
> > > > > >  I have no idea what is going on with your system.
> > > > > >
> > > > > > > The method putAll(Map<? extends Annotation,? extends
> > > > > > > List<IdentifiedAnnotation>>) in the type
> > > > > > > Map<Annotation,List<IdentifiedAnnotation>> is not applicable
> > > > > > > for the arguments (Map)
> > > > > >
> > > > > > That doesn't make any sense to me.  That is exactly what
> > > > > > putAll is for ...  Unless your uimafit does not return a typed
> > > > > > map?  In which case it is an old version?  I am not sure how
> > > > > > that would
> > > happen.
> > > > > >
> > > > > > > When I run AssertionSubPipe.piper I am getting below error:
> > > > > > The .piper files should all have line comments in them.  The
> > > > > > *SubPipe pipers should all have something like "This is not a
> > > > > > complete pipeline" at the top.  This means that it cannot be
> > > > > > run alone.  The annotators in the Assertion piper require
> > > > > > several other annotators to run first.  In addition to the
> > > > > > default clinical piper I think that there are some piper files
> > > > > > in ctakes-example-res that you can look at to
> > > > > start.
> > > > > >
> > > > > > >, I don't find any variables value in understandable format
> > > > > > >like (JCas
> > > > > > jcas) object.  How would I understand JCas object values?
> > > > > >
> > > > > > ctakes is built upon the Apache UIMA framework.
> > > > > >
> > > > > > https://urldefense.proofpoint.com/v2/url?u=https-3A__uima.apac
> > > > > > he
> > > > > > .o
> > > > > > rg
> > > > > > _&
> > > > > > d=DwIBaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs67G
> > > > > > vl
> > > > > > GZ
> > > > > > st
> > > > > > Tp
> > > > > > yIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=rVKcbkbznwk6V-PLUy56sA4hGgN0F
> > > > > > 4q
> > > > > > rL
> > > > > > N5 Ik 6FIDnM&s=ebIFQbW0D4VLpTWv9a4YQqy_G30S_hDeDEbhCTesFuk&e=
> > > > > >
> > > > > > This should probably be on our wiki ...  Anyway, the best way
> > > > > > to learn about how ctakes pipelines are put together and how
> > > > > > data is passed is to read some of the intro documentation for
> uima.
> > > > > >
> > > > > > The Javadoc for jcas is here:
> > > > > > https://urldefense.proofpoint.com/v2/url?u=https-3A__uima.apac
> > > > > > he
> > > > > > .o
> > > > > > rg
> > > > > > _d
> > > > > > _&d=DwIBaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=fs6
> > > > > > 7G
> > > > > > vl
> > > > > > GZ
> > > > > > st
> > > > > > TpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=rVKcbkbznwk6V-PLUy56sA4hGgN
> > > > > > 0F
> > > > > > 4q
> > > > > > rL
> > > > > > N5 Ik6FIDnM&s=I_7BH2bDGR48vI03bE1dirKGCgq33PKB9vXN2VDrMA8&e=
> > > > > > uimaj-current/apidocs/org/apache/uima/jcas/JCas.html
> > > > > >
> > > > > > Sean
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > -----Original Message-----
> > > > > > From: Bhagwat Posane [mailto:bhagwat.pos...@gmail.com]
> > > > > > Sent: Wednesday, November 22, 2017 3:38 AM
> > > > > > To: dev@ctakes.apache.org
> > > > > > Subject: Re: Interpret context out of clinical note [EXTERNAL]
> > > > > >
> > > > > > Hello Sean,
> > > > > >
> > > > > > Thank you for the inputs. I have gone through both the piper
> > > > > > files which you have mentioned.
> > > > > >
> > > > > > When I run AssertionSubPipe.piper I am getting below error:
> > > > > >
> > > > > > ////////////////////////////////////////////////////////////
> > > > > > ////////////////////////////////////////////////////////////
> > > > > > ////////////////////////////////////////////
> > > > > >
> > > > > > 22 Nov 2017 12:55:31  WARN SingleDocumentProcessor - This
> > > > > > class cannot be used until CTAKES-76 is implemented.
> > > > > > 22 Nov 2017 12:55:31  WARN SingleDocumentProcessor - This
> > > > > > class cannot be used until CTAKES-76 is implemented.
> > > > > > Nov 22, 2017 12:55:31 PM
> > > > > > org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_i
> > > > > > mp
> > > > > > l
> > > > > > callAnalysisComponentProcess(430)
> > > > > > SEVERE: Exception occurred
> > > > > > org.apache.uima.analysis_engine.AnalysisEngineProcessException:
> > > > > > Annotator processing failed.
> > > > > > at org.apache.uima.analysis_engine.impl.
> > > PrimitiveAnalysisEngine_impl.
> > > > > > callAnalysisComponentProcess(PrimitiveAnalysisEngine_impl.java
> > > > > > :4
> > > > > > 12
> > > > > > ) at
> > > > > > org.apache.uima.analysis_engine.impl.
> PrimitiveAnalysisEngine_impl.
> > > > > > processAndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:314
> > > > > > ) at org.apache.uima.analysis_engine.asb.impl.ASB_impl$
> > > > > AggregateCasIterator.
> > > > > > processUntilNextOutputCas(ASB_impl.java:570)
> > > > > > at org.apache.uima.analysis_engine.asb.impl.ASB_impl$
> > > > > > AggregateCasIterator.<init>(ASB_impl.java:412)
> > > > > > at org.apache.uima.analysis_engine.asb.impl.ASB_impl.
> > > > > > process(ASB_impl.java:344)
> > > > > > at org.apache.uima.analysis_engine.impl.
> > > AggregateAnalysisEngine_impl.
> > > > > > processAndOutputNewCASes(AggregateAnalysisEngine_impl.java:265
> > > > > > ) at org.apache.uima.analysis_engine.asb.impl.ASB_impl$
> > > > > AggregateCasIterator.
> > > > > > processUntilNextOutputCas(ASB_impl.java:570)
> > > > > > at org.apache.uima.analysis_engine.asb.impl.ASB_impl$
> > > > > > AggregateCasIterator.<init>(ASB_impl.java:412)
> > > > > > at org.apache.uima.analysis_engine.asb.impl.ASB_impl.
> > > > > > process(ASB_impl.java:344)
> > > > > > at org.apache.uima.analysis_engine.impl.
> > > AggregateAnalysisEngine_impl.
> > > > > > processAndOutputNewCASes(AggregateAnalysisEngine_impl.java:265
> > > > > > )
> > > > > > at
> > > > > > org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.pr
> > > > > > oc
> > > > > > es
> > > > > > s(
> > > > > > AnalysisEngineImplBase.java:269) at
> > > > > > org.apache.uima.fit.pipeline.SimplePipeline.runPipeline(
> > > > > > SimplePipeline.java:150)
> > > > > > at org.apache.ctakes.core.pipeline.PipelineBuilder.run(
> > > > > > PipelineBuilder.java:348)
> > > > > > at org.apache.ctakes.core.pipeline.PiperFileRunner.run(
> > > > > > PiperFileRunner.java:72)
> > > > > > at org.apache.ctakes.core.pipeline.PiperFileRunner.main(
> > > > > > PiperFileRunner.java:30)
> > > > > > Caused by: java.lang.NullPointerException at
> > > > org.apache.ctakes.assertion.
> > > > > > medfacts.AssertionAnalysisEngineFit.process(
> > > > > > AssertionAnalysisEngineFit.java:145)
> > > > > > at
> > > > > > org.apache.uima.analysis_component.JCasAnnotator_ImplBase.proc
> > > > > > es
> > > > > > s(
> > > > > > JCasAnnotator_ImplBase.java:48) at
> > > > > > org.apache.uima.analysis_engine.impl.
> > > PrimitiveAnalysisEngine_impl.
> > > > > > callAnalysisComponentProcess(PrimitiveAnalysisEngine_impl.java
> > > > > > :3
> > > > > > 96
> > > > > > )
> > > > > > ... 14 more
> > > > > >
> > > > > > ////////////////////////////////////////////////////////////
> > > > > > ////////////////////////////////////////////////////////////
> > > > > > ////////////////////////////////////////////////////////////
> > > > > > ///////////////////////
> > > > > >
> > > > > > The error is causing due to the command : add
> > > > > > AssertionAnalysisEngineFit I have comment out this command and
> > > > > > ran it, the html output doesn't have any difference with
> > > > > > previous
> > output.
> > > > > > Could you please help me to resolve this error.
> > > > > >
> > > > > >
> > > > > > On 21 November 2017 at 18:43, Finan, Sean
> > > > <Sean.Finan@childrens.harvard.
> > > > > > edu>
> > > > > > wrote:
> > > > > >
> > > > > > > Hi Bhagwat,
> > > > > > >
> > > > > > > You can visit the ctakes-assertion-res module for some clues.
> > > > > > >
> > > > > > > Navigate to ctakes-assertion-res    src/main/resources/
> > > > > > > org/apache/ctakes/assertion/pipeline/
> > > > > > >
> > > > > > > There are two .piper files there.  Each one covers a
> > > > > > > different way to get the information that Tim mentioned.  In
> > > > > > > those files
> > > each "add"
> > > > > > > statement is followed by an annotator class name.  In
> > > > > > > IntelliJ you can press CTRL-N and enter the class name to view
> the code.
> > > > > > > There are also a few comments in the piper files that may help.
> > > > > > >
> > > > > > > Sean
> > > > > > >
> > > > > > > -----Original Message-----
> > > > > > > From: Bhagwat Posane [mailto:bhagwat.pos...@gmail.com]
> > > > > > > Sent: Tuesday, November 21, 2017 6:21 AM
> > > > > > > To: dev@ctakes.apache.org
> > > > > > > Subject: Interpret context out of clinical note [EXTERNAL]
> > > > > > >
> > > > > > > Hello Sean,Tim, et al,
> > > > > > >
> > > > > > > I would like to Interpret context out of clinical note, e.g.
> > > > > > > interpretation of the procedure, lab tests for a patient.
> > > > > > > For this, I suppose TLINK statements would be of much help.
> > > > > > >
> > > > > > > Ex. for the note- "Cystoscopy is planned on 3 / 26 / 2018."
> > > > > > > I get TLINK as
> > > > > > >  Cystoscopy contains  3 / 26 / 2018,
> > > > > > >   3 / 26 / 2018 contains Cystoscopy
> > > > > > >  3 / 26 / 2018 contains planned we can make out that
> > > > > > > Cystoscopy is not yet done looking at "planned"(in this
> > > > > > > case),
> > > > > > >
> > > > > > > Could you please let me know if I am on right path and also
> > > > > > > help me understand if any other approach to do this.
> > > > > > >
> > > > > > >
> > > > > > > @Tim,
> > > > > > > Couple of days back you mentioned about the context
> > understanding :
> > > > > > >
> > > > > > > "if any procedure is happened or not."
> > > > > > > > I think you need a formal definition of this to understand
> > > > > > > > what you're trying to do.
> > > > > > > > As a guess, you want it to be in the past, related to the
> > > > > > > > patient (not a family member), and not negated or
> > > > > > > > hypothetical or uncertain,
> > > > > > etc.?
> > > > > > > > This would require multiple components, but most of them
> > > > > > > > should run in the temporal pipeline.
> > > > > > >
> > > > > > >
> > > > > > > > Tim
> > > > > > >
> > > > > > >
> > > > > > > Could you please provide some insight on this, as what are
> > > > > > > the multiple components are required and how to use them to
> > > > > > > achieve this
> > > > > > goal.
> > > > > > >
> > > > > > > --
> > > > > > > Thanks,
> > > > > > > Bhagwat Posane
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Thanks,
> > > > > > Bhagwat Posane
> > > > > >
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Thanks,
> > > > Bhagwat Posane
> > > >
> > >
> > >
> > >
> > > --
> > > Thanks,
> > > Bhagwat Posane
> > >
> >
> >
> >
> > --
> > Thanks,
> > Bhagwat Posane
> >
>
>
>
> --
> Thanks,
> Bhagwat Posane
>



-- 
Thanks,
Bhagwat Posane

Reply via email to