Thanks Kean for the suggestions. I could see setReferenceRangeNarrative method 
in LabMention class. Is that the one are you referring?  Also, what is your 
suggestion to create new class similar to LabValueFinder?

Regards,
Abilash Mathew
-----Original Message-----
From: Kean Kaufmann [mailto:k...@recordsone.com]
Sent: Friday, February 9, 2018 10:35 PM
To: dev@ctakes.apache.org
Subject: Re: Lab Value - Range finder

Hi Abilash,

By design, the Lab Value annotator avoids ranges if possible:

https://svn.apache.org/repos/asf/ctakes/trunk/ctakes-core/src/main/java/org/apache/ctakes/core/ae/LabValueFinder.java

            // prefer non-range values, if any
>             value = candidateList.stream()
>                   .filter( a -> !(a instanceof RangeAnnotation) )
>                   .findFirst()
>                   .orElse( candidateList.get( 0 ) );


The design is intended to cope with the widest possible variety of formats, and 
avoid confusion.

If you know where the reference ranges are going to be in your data, I'd 
suggest annotating those separately, using the referenceRangeNarrative feature 
with LabReferenceRange values rather than conflating them with labValue / 
LabMention.

https://svn.apache.org/repos/asf/ctakes/trunk/ctakes-type-system/src/main/resources/org/apache/ctakes/typesystem/types/TypeSystem.xml

Caveat: When I wrote this last year, the range annotator didn't seem to be 
picking up on decimal points.  So, below, the first two got RangeAnnotations, 
and the second two didn't.

"Sodium Latest Range: 135-145 mmol/L 138\n" +
> "Anion Gap Latest Range: 13-16 mmol/L\n" + "Potassium Latest Range:
> 3.5-5.3 mmol/L 3.8\n" + // range not annotated "TSH, High Sensitivity
> Latest Range: 0.450-5.100 uIU/mL 1.939\n" + // range not annotated




On Wed, Feb 7, 2018 at 6:46 AM, <abilash.mat...@cognizant.com> wrote:

> Hi All,
>
> I am trying to extend the current Lab Value finder annotator to
> include the Range annotation also.
>
> "Blood Urea Nitrogen (BUN) 10 mg/dL 8-23"
>
> Using current module , I am able to pull lab value as " BUN 10 mg"
> from above text  and  trying to tag "8-23"  as reference range.
>
>       final Map<Annotation, List<IdentifiedAnnotation>> subsumeMap =
> createCoveringMap( jCas, valueClasses,
>             Arrays.asList( FractionAnnotation.class,
> RangeAnnotation.class, MeasurementAnnotation.class ) );
>
> The range annotator is already added in the Labvalue finder class, but
> only MeasurementAnnotation is getting tagged in the output. Can anyone
> help here?
>
>
> Thanks,
> Abilash Mathew
> This e-mail and any files transmitted with it are for the sole use of
> the intended recipient(s) and may contain confidential and privileged
> information. If you are not the intended recipient(s), please reply to
> the sender and destroy all copies of the original message. Any
> unauthorized review, use, disclosure, dissemination, forwarding,
> printing or copying of this email, and/or any action taken in reliance
> on the contents of this e-mail is strictly prohibited and may be
> unlawful. Where permitted by applicable law, this e-mail and other
> e-mail communications sent to and from Cognizant e-mail addresses may be 
> monitored.
>
This e-mail and any files transmitted with it are for the sole use of the 
intended recipient(s) and may contain confidential and privileged information. 
If you are not the intended recipient(s), please reply to the sender and 
destroy all copies of the original message. Any unauthorized review, use, 
disclosure, dissemination, forwarding, printing or copying of this email, 
and/or any action taken in reliance on the contents of this e-mail is strictly 
prohibited and may be unlawful. Where permitted by applicable law, this e-mail 
and other e-mail communications sent to and from Cognizant e-mail addresses may 
be monitored.

Reply via email to