You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ctakes.apache.org by "Dligach, Dmitriy" <dd...@luc.edu> on 2019/10/24 20:27:42 UTC

duplicate types in ctakes types system?

Dear cTAKES developers,

Does anybody know why quite a few types are defined multiple times in TypeSystem.xml?

E.g. I see this at line 576:

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.LabReferenceRange</name>
      <description>Holds a narrative (i.e. string) reference range</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>

And then I see this at line 2165:

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.LabReferenceRange</name>
      <description>Holds a narrative (i.e. string) reference range</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>

Thank you in advance,

Dima


Re: duplicate types in ctakes types system? [EXTERNAL]

Posted by "Finan, Sean" <Se...@childrens.harvard.edu>.
Hi Dima,

At a guess this is a copy - paste artifact.

Have you tested the type system with copies removed?  It seems like it should work as the types should be compiled into classes with only a single definition.

Sean
________________________________________
From: Dligach, Dmitriy <dd...@luc.edu>
Sent: Thursday, October 24, 2019 4:46 PM
To: cTAKES Developer list
Subject: Re: duplicate types in ctakes types system? [EXTERNAL]

Here’s the full list of the duplicate types:

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.LabReferenceRange</name>
      <description>Holds a narrative (i.e. string) reference range</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>

   <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.BodySide</name>
      <description>Value set: unmarked (default), left, right, bilateral</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.LabValue</name>
      <description>Quantitative results of a laboratory, with number and unit.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>number</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>unit</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationForm</name>
      <description>Form of this medication.  Value set includes tablet, capsule, liquid, inhalant, gel, other, etc.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

     <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.Course</name>
      <description>An indication of progress or decline of a condition.  Value set: unmarked (default), changed, increased, decreased, improved, worsened, resolved</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationStatusChange</name>
      <description>Status refers to the whether the medication is currently being taken or not.  Value set: start, stop, increase, decrease, no change.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description>Indicates the change status of 'stop', 'start', 'increase', 'decrease', or 'noChange'.</description>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationFrequency</name>
      <description>How often a medication should be used. e.g., BID or b.i.d. or "twice-a-day" would have a number=2 and unit=day.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>number</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>unit</name>
          <description>The periodic unit used, e.g day, month, hour, etc.</description>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.LabDeltaFlag</name>
      <description>An indicator to warn that the laboratory test result has changed significantly from the previous identical laboratory test result.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.Severity</name>
      <description>An explicitly-mentioned indication of the seriousness of a condition.  Value Set: unmarked (default), severe, moderate, slight</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationStrength</name>
      <description>Strength indicates the strength number and unit of the prescribed drug.  E.g. "5 mg" in "one 5 mg tablet twice-a-day for 2 weeks"</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>number</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>unit</name>
          <description>the unit of measurement</description>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.ProcedureDevice</name>
      <description>Corresponds to the UMLS Devices semantic group: medical device and research device.
Example: arterial line has a Medical Device semantic type. This is qualifying information on how a procedure was done.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationDuration</name>
      <description>The amount of time after which a medication should stop being used, e.g., "2 weeks" in "one 5 mg tablet twice-a-day for 2 weeks"</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

   <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationDosage</name>
      <description>Dosage indicates how much of a prescribed drug should be taken.  E.g. "one" in "one 5 mg tablet twice-a-day for 2 weeks"</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationRoute</name>
      <description>Means by which the medication was taken or administered.  Value set includes Topical, Enteral_Oral, Parenteral_Intravenous, Other, undetermined, etc.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

     <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.ProcedureMethod</name>
      <description>The way or the equipment used to give or administration something (medication, test). This corresponds to the Procedures UMLS semantic group.
More qualifying information on how the procedure was done.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.BodyLaterality</name>
      <description>The proximity of the location in anatomical terms (distal, proximal, superior, anterior and etc.). This is finer-grained to allow combinations of values.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>



Dima


> On Oct 24, 2019, at 15:27, Dligach, Dmitriy <dd...@luc.edu> wrote:
>
> Dear cTAKES developers,
>
> Does anybody know why quite a few types are defined multiple times in TypeSystem.xml?
>
> E.g. I see this at line 576:
>
>    <typeDescription>
>      <name>org.apache.ctakes.typesystem.type.refsem.LabReferenceRange</name>
>      <description>Holds a narrative (i.e. string) reference range</description>
>      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
>      <features>
>        <featureDescription>
>          <name>value</name>
>          <description/>
>          <rangeTypeName>uima.cas.String</rangeTypeName>
>        </featureDescription>
>      </features>
>    </typeDescription>
>    <typeDescription>
>
> And then I see this at line 2165:
>
>    <typeDescription>
>      <name>org.apache.ctakes.typesystem.type.refsem.LabReferenceRange</name>
>      <description>Holds a narrative (i.e. string) reference range</description>
>      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
>      <features>
>        <featureDescription>
>          <name>value</name>
>          <description/>
>          <rangeTypeName>uima.cas.String</rangeTypeName>
>        </featureDescription>
>      </features>
>    </typeDescription>
>    <typeDescription>
>
> Thank you in advance,
>
> Dima
>


Re: duplicate types in ctakes types system?

Posted by "Dligach, Dmitriy" <dd...@luc.edu>.
Here’s the full list of the duplicate types:

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.LabReferenceRange</name>
      <description>Holds a narrative (i.e. string) reference range</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>

   <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.BodySide</name>
      <description>Value set: unmarked (default), left, right, bilateral</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.LabValue</name>
      <description>Quantitative results of a laboratory, with number and unit.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>number</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>unit</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationForm</name>
      <description>Form of this medication.  Value set includes tablet, capsule, liquid, inhalant, gel, other, etc.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

     <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.Course</name>
      <description>An indication of progress or decline of a condition.  Value set: unmarked (default), changed, increased, decreased, improved, worsened, resolved</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationStatusChange</name>
      <description>Status refers to the whether the medication is currently being taken or not.  Value set: start, stop, increase, decrease, no change.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description>Indicates the change status of 'stop', 'start', 'increase', 'decrease', or 'noChange'.</description>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationFrequency</name>
      <description>How often a medication should be used. e.g., BID or b.i.d. or "twice-a-day" would have a number=2 and unit=day.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>number</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>unit</name>
          <description>The periodic unit used, e.g day, month, hour, etc.</description>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.LabDeltaFlag</name>
      <description>An indicator to warn that the laboratory test result has changed significantly from the previous identical laboratory test result.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.Severity</name>
      <description>An explicitly-mentioned indication of the seriousness of a condition.  Value Set: unmarked (default), severe, moderate, slight</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationStrength</name>
      <description>Strength indicates the strength number and unit of the prescribed drug.  E.g. "5 mg" in "one 5 mg tablet twice-a-day for 2 weeks"</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>number</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>unit</name>
          <description>the unit of measurement</description>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.ProcedureDevice</name>
      <description>Corresponds to the UMLS Devices semantic group: medical device and research device. 
Example: arterial line has a Medical Device semantic type. This is qualifying information on how a procedure was done.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationDuration</name>
      <description>The amount of time after which a medication should stop being used, e.g., "2 weeks" in "one 5 mg tablet twice-a-day for 2 weeks"</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

   <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationDosage</name>
      <description>Dosage indicates how much of a prescribed drug should be taken.  E.g. "one" in "one 5 mg tablet twice-a-day for 2 weeks"</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.MedicationRoute</name>
      <description>Means by which the medication was taken or administered.  Value set includes Topical, Enteral_Oral, Parenteral_Intravenous, Other, undetermined, etc.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

     <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.ProcedureMethod</name>
      <description>The way or the equipment used to give or administration something (medication, test). This corresponds to the Procedures UMLS semantic group.
More qualifying information on how the procedure was done.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>

    <typeDescription>
      <name>org.apache.ctakes.typesystem.type.refsem.BodyLaterality</name>
      <description>The proximity of the location in anatomical terms (distal, proximal, superior, anterior and etc.). This is finer-grained to allow combinations of values.</description>
      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
      <features>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>



Dima


> On Oct 24, 2019, at 15:27, Dligach, Dmitriy <dd...@luc.edu> wrote:
> 
> Dear cTAKES developers,
> 
> Does anybody know why quite a few types are defined multiple times in TypeSystem.xml?
> 
> E.g. I see this at line 576:
> 
>    <typeDescription>
>      <name>org.apache.ctakes.typesystem.type.refsem.LabReferenceRange</name>
>      <description>Holds a narrative (i.e. string) reference range</description>
>      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
>      <features>
>        <featureDescription>
>          <name>value</name>
>          <description/>
>          <rangeTypeName>uima.cas.String</rangeTypeName>
>        </featureDescription>
>      </features>
>    </typeDescription>
>    <typeDescription>
> 
> And then I see this at line 2165:
> 
>    <typeDescription>
>      <name>org.apache.ctakes.typesystem.type.refsem.LabReferenceRange</name>
>      <description>Holds a narrative (i.e. string) reference range</description>
>      <supertypeName>org.apache.ctakes.typesystem.type.refsem.Attribute</supertypeName>
>      <features>
>        <featureDescription>
>          <name>value</name>
>          <description/>
>          <rangeTypeName>uima.cas.String</rangeTypeName>
>        </featureDescription>
>      </features>
>    </typeDescription>
>    <typeDescription>
> 
> Thank you in advance,
> 
> Dima
>