You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ctakes.apache.org by Vicky Chawda <vi...@praxify.com> on 2016/09/12 09:48:18 UTC

Ctakes Temporal demo - XML response

Hi,

I am using "Ctakes-Temporal"
Link :
https://github.com/healthnlp/examples/tree/master/ctakes-temporal-demo
http://52.27.22.206:8080/index.jsp

Can anyone please suggest how to interpret the XML response? is there any
documentation available for it?

ViCky

Re: Ctakes Temporal demo - XML response

Posted by "Abramowitsch, Peter" <pa...@hearst.com>.
Hi Vicky

There are two Time related annotation types and neither of them are
incredibly useful on their own and there's no documentation that I've
found, so far.  What I've deduced is by trial and error with short
phrases, trying to reverse engineer the behavior

TimeMention attempts to link a time/date assertion with one or more
events.  They use a pointer system where the Mention, whose range is a
time or date expression, has a unique ID that is pointed to from a
"TemporalTextRelation" node that links the time with an event through
another ID.  At the same time, there will be an event object (or sub
object of one of the major semantic types like SignSymptomMention, which
is annotated with "before" or "after" another Event.  Something like "A
occurred <before/after/during> B through time mention T

DateAnnotation is a more simplistic Annotator that just identifies the
range in which a date or time assertion occurs.  Unfortunately neither are
completely reliable, and you might get false negatives or false positives
with either.  Sometimes clinical statements can also be ambiguous and
might be a pair of lab values interpreted as a date

If you have both of these annotators in place, and you parse a phrase such
as   "On 12/24/1995 he had an embolism",  you will get both annotation
types.   I suggest drawing out the pointer relationships from the output.

I take the serialized CAS and pass it through a rather extensive
post-processing phase (written in ruby) where I use both annotation types,
a ruby temporal gem "Chronic" and some magic with the ConllDependency
nodes to try to get a useful date in most cases, where it may not be
obvious.   

Imagine the following "Patient admitted 4/6/2003 for observation.  He will
be sent to the Cath lab tomorrow"  While the TimeMention correctly
identifies "tomorrow",  it doesn't interpret what absolute date it refers
too.  This is where one can try to infer the date as 4/7/2003 with
post-processing tricks.   It can get very tricky.

Peter

   



On 9/12/16, 2:48 AM, "Vicky Chawda" <vi...@praxify.com> wrote:

>Hi,
>
>I am using "Ctakes-Temporal"
>Link :
>https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_healthnlp_
>examples_tree_master_ctakes-2Dtemporal-2Ddemo&d=DQIBaQ&c=B73tqXN8Ec0ocRmZH
>MCntw&r=5LM1YwNyMUq7CWiSepCCsjTjwuVF4uswNF8BK5Orm10&m=6DaS2ZEk2UDo6JWBiHqY
>5n-R2kteT52ZrkFYAQUCCJ8&s=tEj7xdiF4QISneiA7Qh1VNu1FYLoHEfYhTTMk4AMGuY&e=
>https://urldefense.proofpoint.com/v2/url?u=http-3A__52.27.22.206-3A8080_in
>dex.jsp&d=DQIBaQ&c=B73tqXN8Ec0ocRmZHMCntw&r=5LM1YwNyMUq7CWiSepCCsjTjwuVF4u
>swNF8BK5Orm10&m=6DaS2ZEk2UDo6JWBiHqY5n-R2kteT52ZrkFYAQUCCJ8&s=wEMSC-0bNN6h
>xP6VeyTddfUmTA8ZEcbYzesAfIXtL7Y&e=
>
>Can anyone please suggest how to interpret the XML response? is there any
>documentation available for it?
>
>ViCky