You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ctakes.apache.org by Nick Nikandish <sn...@emerginghealthit.com> on 2014/07/08 20:42:46 UTC

Retrieving CUIs

Hi there,

I was wondering if there is any way to retrieve CUIs for the tokens of a free text in CTakes without changing the codebase? I am able to retrieve CUIs for only medications  in a text.



Thanks,
Nick



RE: Retrieving CUIs

Posted by Nick Nikandish <sn...@emerginghealthit.com>.
Yes indeed it gets the correct CUI. In the anatomicalSite it return the CUI but how can I associate the CUI with the text now?

-----Original Message-----
From: Chen, Pei [mailto:Pei.Chen@childrens.harvard.edu] 
Sent: Tuesday, July 08, 2014 4:45 PM
To: dev@ctakes.apache.org
Subject: RE: Retrieving CUIs

Nick,
On why 'Enterococcus faecium' isn't returned:
I think a limitation is that cTAKES will force a mapping of the TUI's semantic types into a semantic group.  If it doesn't exist in the mapping, the dictionary lookup won't save it.
It would probably be a nice feature to create a "Other" semantic group and default anything that is not mapped into this group.
You can test out this theory by modifying your LookupDesc_Db.xml to include T007 (Bacterium) into one of the existing groups such findings and see if 'Enterococcus faecium' returns for you.

[Assuming you're using the current default dictionary-lookup and not dictionary-lookup-fast]

> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 4:12 PM
> To: dev@ctakes.apache.org
> Subject: RE: Retrieving CUIs
> 
> One of the cui that I need to get is for Bactria like " Enterococcus faecium"
> but I am not seeing it. I am writing a new annotator to get those cui 
> and save them in a map. Do you have any applicationContext that I can 
> save those values and retrieve them in my annotators which are at the 
> end of the pipeline or I should use something like ehcache?
> 
> 
> -----Original Message-----
> From: Masanz, James J. [mailto:Masanz.James@mayo.edu]
> Sent: Tuesday, July 08, 2014 3:56 PM
> To: 'dev@ctakes.apache.org'
> Subject: RE: Retrieving CUIs
> 
> In your CAS, I see
> 
> <textsem:ProcedureMention xmi:id="585" sofa="1" begin="0" end="13"
> id="0" ontologyConceptArr="550 564 543 557 571"
> 
> Reading the CAS xmi, to see the first element in the array, we look 
> for ID 550, which takes us to
> 
> <refsem:UmlsConcept xmi:id="550" codingScheme="SNOMED"
> code="168335002" cui="C0430404" tui="T059"/>
> 
> So it seems like whatever you are doing to try to read out the CUI is 
> not accessing something correctly.
> 
> -- James
> 
> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 2:46 PM
> To: dev@ctakes.apache.org
> Subject: RE: Retrieving CUIs
> 
> Sure:
> 
> <?xml version="1.0" encoding="UTF-8"?><xmi:XMI 
> xmlns:refsem="http:///org/apache/ctakes/typesystem/type/refsem.ecore"
> xmlns:type4="http:///org/apache/ctakes/padtermspotter/type.ecore"
> xmlns:cas="http:///uima/cas.ecore"
> xmlns:types3="http:///org/montefiore/cri/nlp/culturetests/uima/types.e
> cor
> e"
> xmlns:type6="http:///org/apache/ctakes/smokingstatus/i2b2/type.ecore"
> xmlns:util="http:///org/apache/ctakes/typesystem/type/util.ecore"
> xmlns:types="http:///org/apache/ctakes/assertion/medfacts/types.ecore"
> xmlns:type="http:///org/apache/ctakes/constituency/parser/uima/type.ec
> o re" xmlns:tcas="http:///uima/tcas.ecore"
> xmlns:type2="http:///org/apache/ctakes/coreference/type.ecore"
> xmlns:types2="http:///org/apache/ctakes/assertion/zoner/types.ecore"
> xmlns:type7="http:///org/apache/ctakes/smokingstatus/type.ecore"
> xmlns:syntax="http:///org/apache/ctakes/typesystem/type/syntax.ecore"
> xmlns:type5="http:///org/apache/ctakes/sideeffect/type.ecore"
> xmlns:xmi="http://www.omg.org/XMI"
> xmlns:textspan="http:///org/apache/ctakes/typesystem/type/textspan.eco
> re"
> xmlns:assertion="http:///org/apache/ctakes/typesystem/type/temporary/a
> ssertion.ecore"
> xmlns:structured="http:///org/apache/ctakes/typesystem/type/structured.
> ecore"
> xmlns:relation="http:///org/apache/ctakes/typesystem/type/relation.eco
> re
> "
> xmlns:textsem="http:///org/apache/ctakes/typesystem/type/textsem.ecor
> e" xmlns:type3="http:///org/apache/ctakes/drugner/type.ecore"
> xmlns:libsvm="http:///org/apache/ctakes/smokingstatus/type/libsvm.ecor
> e " xmlns:type8="http:///org/apache/ctakes/typesystem/type.ecore"
> xmi:version="2.0"><cas:NULL xmi:id="0"/><cas:Sofa xmi:id="1"
> sofaNum="1" sofaID="_InitialView" mimeType="text/plain"
> sofaString="urine culture mos source/body site clean catch culture 
> results &gt;100,001col/ml escherichia coli final id e.coli amikacin s 
> ampicillin r &gt;=32 &#13;&#10;"/><cas:Sofa xmi:id="13" sofaNum="2" sofaID="UriView"
> sofaURI="file:/C:/srv/apps/nlp/testdata/tmp.txt"/><tcas:DocumentAnnota
> ti on xmi:id="8" sofa="1" begin="0" end="142" language="x- 
> unspecified"/><textspan:Segment xmi:id="20" sofa="1" begin="0"
> end="142" id="SIMPLE_SEGMENT"/><textspan:Sentence xmi:id="26"
> sofa="1" begin="0" end="139"
> sentenceNumber="0"/><syntax:NewlineToken xmi:id="32" sofa="1"
> begin="140" end="142" tokenNumber="30"/><syntax:WordToken
> xmi:id="40" sofa="1" begin="0" end="5" tokenNumber="0"
> partOfSpeech="NN" capitalization="0" numPosition="0"
> canonicalForm="urine"/><syntax:WordToken xmi:id="52" sofa="1"
> begin="6" end="13" tokenNumber="1" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="culture"/><syntax:WordToken xmi:id="64" sofa="1"
> begin="14" end="17" tokenNumber="2" partOfSpeech="NNS"
> capitalization="0" numPosition="0"
> canonicalForm="mos"/><syntax:WordToken xmi:id="76" sofa="1"
> begin="18" end="24" tokenNumber="3" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="source"/><syntax:WordToken xmi:id="96" sofa="1"
> begin="25" end="29" tokenNumber="5" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="body"/><syntax:WordToken xmi:id="108" sofa="1"
> begin="30" end="34" tokenNumber="6" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="site"/><syntax:WordToken xmi:id="120" sofa="1"
> begin="35" end="40" tokenNumber="7" partOfSpeech="JJ"
> capitalization="0" numPosition="0"
> canonicalForm="clean"/><syntax:WordToken xmi:id="132" sofa="1"
> begin="41" end="46" tokenNumber="8" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="catch"/><syntax:WordToken xmi:id="144" sofa="1"
> begin="47" end="54" tokenNumber="9" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="culture"/><syntax:WordToken xmi:id="156" sofa="1"
> begin="55" end="62" tokenNumber="10" partOfSpeech="NNS"
> capitalization="0" numPosition="0"
> canonicalForm="result"/><syntax:WordToken xmi:id="185" sofa="1"
> begin="71" end="74" tokenNumber="13" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="col"/><syntax:WordToken xmi:id="205" sofa="1"
> begin="75" end="77" tokenNumber="15" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="ml"/><syntax:WordToken xmi:id="217" sofa="1" begin="78"
> end="89" tokenNumber="16" partOfSpeech="NN" capitalization="0"
> numPosition="0" canonicalForm="escherichia"/><syntax:WordToken
> xmi:id="229" sofa="1" begin="90" end="94" tokenNumber="17"
> partOfSpeech="NN" capitalization="0" numPosition="0"
> canonicalForm="coli"/><syntax:WordToken xmi:id="241" sofa="1"
> begin="95" end="100" tokenNumber="18" partOfSpeech="JJ"
> capitalization="0" numPosition="0"
> canonicalForm="final"/><syntax:WordToken xmi:id="253" sofa="1"
> begin="101" end="103" tokenNumber="19" partOfSpeech="JJ"
> capitalization="0" numPosition="0"
> canonicalForm="id"/><syntax:WordToken xmi:id="265" sofa="1"
> begin="104" end="105" tokenNumber="20" partOfSpeech="NN"
> capitalization="0" numPosition="0" 
> canonicalForm="e"/><syntax:WordToken
> xmi:id="285" sofa="1" begin="106" end="110" tokenNumber="22"
> partOfSpeech="NNP" capitalization="0" numPosition="0"
> canonicalForm="coli"/><syntax:WordToken xmi:id="297" sofa="1"
> begin="111" end="119" tokenNumber="23" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="amikacin"/><syntax:WordToken xmi:id="309" sofa="1"
> begin="120" end="121" tokenNumber="24" partOfSpeech="NN"
> capitalization="0" numPosition="0" 
> canonicalForm="s"/><syntax:WordToken
> xmi:id="321" sofa="1" begin="122" end="132" tokenNumber="25"
> partOfSpeech="NN" capitalization="0" numPosition="0"
> canonicalForm="ampicillin"/><syntax:WordToken xmi:id="333" sofa="1"
> begin="133" end="134" tokenNumber="26" partOfSpeech="VB"
> capitalization="0" numPosition="0"
> canonicalForm="r"/><syntax:PunctuationToken xmi:id="88" sofa="1"
> begin="24" end="25" tokenNumber="4"
> partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="168" sofa="1"
> begin="63" end="64" tokenNumber="11"
> partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="197" sofa="1"
> begin="74" end="75" tokenNumber="14"
> partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="277" sofa="1"
> begin="105" end="106" tokenNumber="21"
> partOfSpeech="."/><syntax:PunctuationToken xmi:id="345" sofa="1"
> begin="135" end="136" tokenNumber="27"
> partOfSpeech="SYM"/><syntax:NumToken xmi:id="176" sofa="1"
> begin="64" end="71" tokenNumber="12" partOfSpeech="CD"
> numType="1"/><syntax:NumToken xmi:id="361" sofa="1" begin="137"
> end="139" tokenNumber="29" partOfSpeech="CD"
> numType="1"/><syntax:SymbolToken xmi:id="353" sofa="1" begin="136"
> end="137" tokenNumber="28"
> partOfSpeech="SYM"/><textsem:RomanNumeralAnnotation xmi:id="370"
> sofa="1" begin="75" end="77" id="0" typeID="0" discoveryTechnique="0"
> confidence="0.0" polarity="0" uncertainty="0" conditional="false"
> generic="false" historyOf="0"/><textsem:RomanNumeralAnnotation
> xmi:id="388" sofa="1" begin="101" end="103" id="0" typeID="0"
> discoveryTechnique="0" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false" historyOf="0"/><syntax:NP xmi:id="406"
> sofa="1" begin="0" end="24" chunkType="NP"/><syntax:NP xmi:id="416"
> sofa="1" begin="25" end="62" chunkType="NP"/><syntax:NP xmi:id="426"
> sofa="1" begin="64" end="74" chunkType="NP"/><syntax:NP xmi:id="436"
> sofa="1" begin="75" end="105" chunkType="NP"/><syntax:NP xmi:id="446"
> sofa="1" begin="106" end="132" chunkType="NP"/><syntax:NP xmi:id="456" 
> sofa="1" begin="135" end="136"
> chunkType="NP"/><syntax:NP xmi:id="461" sofa="1" begin="136"
> end="137" chunkType="NP"/><syntax:NP xmi:id="466" sofa="1"
> begin="137" end="139" chunkType="NP"/><syntax:O xmi:id="411" sofa="1"
> begin="24" end="25" chunkType="O"/><syntax:O xmi:id="421" sofa="1"
> begin="63" end="64" chunkType="O"/><syntax:O xmi:id="431" sofa="1"
> begin="74" end="75" chunkType="O"/><syntax:O xmi:id="441" sofa="1"
> begin="105" end="106" chunkType="O"/><syntax:VP xmi:id="451" sofa="1"
> begin="133" end="134"
> chunkType="VP"/><textspan:LookupWindowAnnotation xmi:id="471"
> sofa="1" begin="0" end="24"/><textspan:LookupWindowAnnotation
> xmi:id="475" sofa="1" begin="25"
> end="62"/><textspan:LookupWindowAnnotation xmi:id="479" sofa="1"
> begin="64" end="74"/><textspan:LookupWindowAnnotation xmi:id="483"
> sofa="1" begin="75" end="105"/><textspan:LookupWindowAnnotation
> xmi:id="487" sofa="1" begin="106"
> end="132"/><textspan:LookupWindowAnnotation xmi:id="491" sofa="1"
> begin="135" end="136"/><textspan:LookupWindowAnnotation xmi:id="495"
> sofa="1" begin="136" end="137"/><textspan:LookupWindowAnnotation
> xmi:id="499" sofa="1" begin="137"
> end="139"/><textsem:SignSymptomMention xmi:id="513" sofa="1"
> begin="18" end="24" id="0" ontologyConceptArr="503" typeID="3"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:SignSymptomMention xmi:id="795" sofa="1"
> begin="41" end="46" id="0" ontologyConceptArr="785" typeID="3"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:ProcedureMention xmi:id="585" sofa="1"
> begin="0" end="13" id="0" ontologyConceptArr="550 564 543 557 571"
> typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0"
> uncertainty="0" conditional="false" generic="false"
> historyOf="0"/><textsem:ProcedureMention xmi:id="671" sofa="1"
> begin="6" end="13" id="0" ontologyConceptArr="627 655 648 613 634 641 
> 620" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0"
> uncertainty="0" conditional="false" generic="false"
> historyOf="0"/><textsem:ProcedureMention xmi:id="757" sofa="1"
> begin="47" end="54" id="0" ontologyConceptArr="713 699 734 720 706 741 
> 727" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0"
> uncertainty="0" conditional="false" generic="false"
> historyOf="0"/><textsem:MedicationMention xmi:id="851" sofa="1"
> begin="78" end="94" id="0" ontologyConceptArr="828" typeID="1"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:MedicationMention xmi:id="907" sofa="1"
> begin="122" end="132" id="0" ontologyConceptArr="884" typeID="1"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:MedicationMention xmi:id="963" sofa="1"
> begin="111" end="119" id="0" ontologyConceptArr="940" typeID="1"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false" historyOf="0"/><types3:CultureTest
> xmi:id="993" sofa="1" begin="0" end="142"
> antibiogramAnalysisProcedure="1049 1066" specimen="1141"
> bacterialColonySize="1008"
> uri="http://ric.einstein.yu.edu/im_culture_test#UrineCultureTest__113c
> a0c
> 0-2c4c-4b9e-9ca5-6f3a6b73bf1e"
> correspondsTo="http://ric.einstein.yu.edu/terminology#EscherichiaColiD
> NA ACnc" valueOf="http://ric.einstein.yu.edu/terminology#CultureTest"
> sofaString="urine culture mos source/body site clean catch culture 
> results &gt;100,001col/ml escherichia coli final id e.coli amikacin s 
> ampicillin r &gt;=32 &#13;&#10;" 
> text="EscherichiaColi"/><types3:BacterialColonySize
> xmi:id="1008" sofa="1" begin="63" end="94" criValue="100,001"
> arithmeticOperators="1024" criFloatValue="100001.0" unitConcept="1036"
> uri="http://ric.einstein.yu.edu/im_culture_test#BacterialColonySize__2
> 0ea8
> e04-cf15-4d68-b351-a04c92a322a6"
> correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules"
> valueOf="http://ric.einstein.yu.edu/terminology#BacterialColonySize"
> sofaString="&gt;100,001col/ml escherichia coli"
> text="FloatRules"/><types3:ArithmeticOperators xmi:id="1024" sofa="1"
> begin="63" end="64"
> uri="http://ric.einstein.yu.edu/im_culture_test#Greater__0ec42e0f-63b1
> -
> 40b2-842f-eb09706b52c1"
> correspondsTo="http://ric.einstein.yu.edu/im_culture_test#Greater"
> valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators"
> sofaString="&gt;" text="Greater"/><types3:ArithmeticOperators
> xmi:id="1105" sofa="1" begin="135" end="137"
> uri="http://ric.einstein.yu.edu/terminology#ArithmeticOperators___deaa
> 90
> 82-33ff-4be5-b7c1-f20ee60922e8"
> correspondsTo="http://ric.einstein.yu.edu/im_culture_test#LessEqual"
> valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators"
> sofaString="&gt;=" text="LessEqual"/><types3:UnitConcept xmi:id="1036"
> sofa="1" begin="71" end="77"
> uri="http://ric.einstein.yu.edu/im_culture_test#ColPerMl__da5a75df-27c
> 3-
> 49a0-a432-fb24eeb66a96"
> correspondsTo="http://ric.einstein.yu.edu/im_culture_test#ColPerMl"
> valueOf="http://ric.einstein.yu.edu/terminology#UnitConcept"
> sofaString="col/ml"
> text="ColPerMl"/><types3:AntibiogramAnalysisProcedure xmi:id="1049"
> sofa="1" begin="111" end="122" antibioticSensitivity="1117"
> antibodyTiter="0"
> uri="http://ric.einstein.yu.edu/im_culture_test#types__da56099c-1b7c-
> 46a4-b364-726464b0ae5b"
> correspondsTo="http://montefiore.org/umls/mth#MIC"
> valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisPro
> ce dure" sofaString="amikacin s " text="AmikacinSusceptibility"
> ontologyConcept="1061"/><types3:AntibiogramAnalysisProcedure
> xmi:id="1066" sofa="1" begin="122" end="139" antibioticSensitivity="1129"
> antibodyTiter="1090 0"
> uri="http://ric.einstein.yu.edu/im_culture_test#types__6d80da49-29a8-
> 430c-8ae6-871e78659031"
> correspondsTo="http://montefiore.org/umls/mth#MIC"
> valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisPro
> ce dure" sofaString="ampicillin r &gt;=32" 
> text="AmpicillinSusceptibility"
> ontologyConcept="1078"/><types3:AntibodyTiter xmi:id="1090" sofa="1"
> begin="135" end="139" criValue="32" arithmeticOperators="1105"
> criFloatValue="32.0"
> uri="http://ric.einstein.yu.edu/im_culture_test#AntibodyTiter__f3242ae
> b-
> 88fb-417c-8446-b180af943235"
> correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules"
> valueOf="http://ric.einstein.yu.edu/terminology#AntibodyTiter"
> sofaString="&gt;=32" text="FloatRules"/><types3:AntibioticSensitivity
> xmi:id="1117" sofa="1" begin="120" end="121"
> uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity_
> _6e7e
> 76c3-3c00-43fb-925c-43b2fb239414"
> correspondsTo="http://ric.einstein.yu.edu/terminology#TestSensitive"
> valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSens
> itivity " sofaString="s" 
> text="TestSensitive"/><types3:AntibioticSensitivity
> xmi:id="1129" sofa="1" begin="133" end="134"
> uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity_
> _7e1b
> 2074-e396-447f-95d9-b6eefe6ea730"
> correspondsTo="http://ric.einstein.yu.edu/terminology#TestResistant"
> valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSens
> itivity " sofaString="r" text="TestResistant"/><types3:Specimen 
> xmi:id="1141"
> sofa="1" begin="0" end="62" specimenSource="1177" biologicalType="1168"
> uri="http://ric.einstein.yu.edu/im_culture_test#Specimen__fd5bcc82-5ea
> 5-
> 4d73-87e6-c7cc6dc660b7"
> correspondsTo="http://ric.einstein.yu.edu/terminology#Specimen"
> valueOf="http://ric.einstein.yu.edu/terminology#Specimen"
> sofaString="urine culture mos source/body site clean catch culture results"
> text="Specimen"/><types3:BiologicalType xmi:id="1168" sofa="1" begin="0"
> end="5"
> uri="http://ric.einstein.yu.edu/im_culture_test#BiologicalType__bf502c
> 06-
> 043c-4c53-ab79-a3c37972c404"
> correspondsTo="http://ric.einstein.yu.edu/terminology#Urine"
> valueOf="http://ric.einstein.yu.edu/terminology#BiologicalType"
> sofaString="urine" text="Urine"/><types3:SpecimenSource xmi:id="1177"
> sofa="1" begin="35" end="46"
> uri="http://ric.einstein.yu.edu/im_culture_test#SpecimenSource__d932f1
> 0
> 2-e3cf-4022-a7fc-0b1a6695d102"
> correspondsTo="http://ric.einstein.yu.edu/terminology#CleanCatch"
> valueOf="http://ric.einstein.yu.edu/terminology#SpecimenSource"
> sofaString="clean catch" text="CleanCatch"/><types3:OntologyConcept
> xmi:id="1078" codingScheme="RXNORM"
> code="C0002680"/><types3:OntologyConcept xmi:id="1061"
> codingScheme="RXNORM" code="C0002499"/><refsem:OntologyConcept
> xmi:id="940" codingScheme="RXNORM"
> code="C0002499"/><refsem:OntologyConcept xmi:id="884"
> codingScheme="RXNORM" code="C0002680"/><refsem:OntologyConcept
> xmi:id="828" codingScheme="RXNORM"
> code="C0014834"/><refsem:UmlsConcept xmi:id="727"
> codingScheme="SNOMED" code="145414005" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="741" codingScheme="SNOMED"
> code="252397004" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="706" codingScheme="SNOMED" code="252398009" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="720" codingScheme="SNOMED"
> code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="734" codingScheme="SNOMED" code="270035009" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="699" codingScheme="SNOMED"
> code="61594008" cui="C2242979" tui="T059"/><refsem:UmlsConcept 
> xmi:id="713" codingScheme="SNOMED" code="145422003" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="620" codingScheme="SNOMED"
> code="252398009" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="641" codingScheme="SNOMED" code="145414005" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="634" codingScheme="SNOMED"
> code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="613" codingScheme="SNOMED" code="61594008" cui="C2242979"
> tui="T059"/><refsem:UmlsConcept xmi:id="648" codingScheme="SNOMED"
> code="270035009" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="655" codingScheme="SNOMED" code="252397004" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="627" codingScheme="SNOMED"
> code="145422003" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="571" codingScheme="SNOMED" code="145543000" cui="C0430404"
> tui="T059"/><refsem:UmlsConcept xmi:id="557" codingScheme="SNOMED"
> code="144792004" cui="C0430404" tui="T059"/><refsem:UmlsConcept 
> xmi:id="543" codingScheme="SNOMED" code="117010004" cui="C0430404"
> tui="T059"/><refsem:UmlsConcept xmi:id="564" codingScheme="SNOMED"
> code="275885001" cui="C0430404" tui="T059"/><refsem:UmlsConcept 
> xmi:id="550" codingScheme="SNOMED" code="168335002" cui="C0430404"
> tui="T059"/><refsem:UmlsConcept xmi:id="785" codingScheme="SNOMED"
> code="30623001" cui="C0231617" tui="T184"/><refsem:UmlsConcept 
> xmi:id="503" codingScheme="SNOMED" code="260753009" cui="C0449416"
> tui="T033"/><cas:View sofa="1" members="8 20 26 32 40 52 64 76 96 108 
> 120
> 132 144 156 185 205 217 229 241 253 265 285 297 309 321 333 88 168 197 
> 277 345
> 176 361 353 370 388 406 416 426 436 446 456 461 466 411 421 431 441 
> 451 471
> 475 479 483 487 491 495 499 513 795 585 671 757 851 907 963 993 1008 
> 1024
> 1105 1036 1049 1066 1090 1117 1129 1141 1168 1177"/><cas:View 
> sofa="13"/></xmi:XMI>
> 
> 
> 
> 
> 
> -----Original Message-----
> From: Masanz, James J. [mailto:Masanz.James@mayo.edu]
> Sent: Tuesday, July 08, 2014 3:44 PM
> To: 'dev@ctakes.apache.org'
> Subject: RE: Retrieving CUIs
> 
> The attachment didn't come through so if the other email I sent didn't 
> help, please post the xmi somewhere that I can download it from. Thanks.
> 
> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 2:14 PM
> To: dev@ctakes.apache.org
> Subject: RE: Retrieving CUIs
> 
> The xmi file is attached.
> 
> 
> -----Original Message-----
> From: Masanz, James J. [mailto:Masanz.James@mayo.edu]
> Sent: Tuesday, July 08, 2014 2:54 PM
> To: 'dev@ctakes.apache.org'
> Subject: RE: Retrieving CUIs
> 
> What gets annotated depends on which pipeline you use.
> The pipeline mentioned in the User Guide should also annotate 
> diseases/disorders, signs/symptoms, procedures, and anatomical sites. 
> So first would be to check which pipeline you are using.
> 
> Or perhaps you do not have the separately downloadable dictionary. To 
> test that, try text that includes the words "knee" and "pain". If 
> those are annotated and other anatomical sites and signs/symptoms are 
> not, you probably don't have the dictionary resources or don't have 
> them on your classpath.
> 
> Good things to post to help us help you are:
>  - whether you are using CVD or CPE GUI, or a program/script
>  - the name of pipeline you are running (are you loading an XML 
> descriptor into CVD or CPE), or the name of the script/program
>  - a sample output file (xcas/xmi) [make sure not to include any PHI 
> in the sample text that you process if you are going to post the 
> output]
> 
> -- James
> 
> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 1:43 PM
> To: dev@ctakes.apache.org
> Subject: Retrieving CUIs
> 
> Hi there,
> 
> I was wondering if there is any way to retrieve CUIs for the tokens of 
> a free text in CTakes without changing the codebase? I am able to 
> retrieve CUIs for only medications  in a text.
> 
> 
> 
> Thanks,
> Nick
> 


RE: Retrieving CUIs

Posted by Nick Nikandish <sn...@emerginghealthit.com>.
Thanks Pei,

I will change LookupDesc_Db.xml and test it right now.

-----Original Message-----
From: Chen, Pei [mailto:Pei.Chen@childrens.harvard.edu] 
Sent: Tuesday, July 08, 2014 4:45 PM
To: dev@ctakes.apache.org
Subject: RE: Retrieving CUIs

Nick,
On why 'Enterococcus faecium' isn't returned:
I think a limitation is that cTAKES will force a mapping of the TUI's semantic types into a semantic group.  If it doesn't exist in the mapping, the dictionary lookup won't save it.
It would probably be a nice feature to create a "Other" semantic group and default anything that is not mapped into this group.
You can test out this theory by modifying your LookupDesc_Db.xml to include T007 (Bacterium) into one of the existing groups such findings and see if 'Enterococcus faecium' returns for you.

[Assuming you're using the current default dictionary-lookup and not dictionary-lookup-fast]

> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 4:12 PM
> To: dev@ctakes.apache.org
> Subject: RE: Retrieving CUIs
> 
> One of the cui that I need to get is for Bactria like " Enterococcus faecium"
> but I am not seeing it. I am writing a new annotator to get those cui 
> and save them in a map. Do you have any applicationContext that I can 
> save those values and retrieve them in my annotators which are at the 
> end of the pipeline or I should use something like ehcache?
> 
> 
> -----Original Message-----
> From: Masanz, James J. [mailto:Masanz.James@mayo.edu]
> Sent: Tuesday, July 08, 2014 3:56 PM
> To: 'dev@ctakes.apache.org'
> Subject: RE: Retrieving CUIs
> 
> In your CAS, I see
> 
> <textsem:ProcedureMention xmi:id="585" sofa="1" begin="0" end="13"
> id="0" ontologyConceptArr="550 564 543 557 571"
> 
> Reading the CAS xmi, to see the first element in the array, we look 
> for ID 550, which takes us to
> 
> <refsem:UmlsConcept xmi:id="550" codingScheme="SNOMED"
> code="168335002" cui="C0430404" tui="T059"/>
> 
> So it seems like whatever you are doing to try to read out the CUI is 
> not accessing something correctly.
> 
> -- James
> 
> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 2:46 PM
> To: dev@ctakes.apache.org
> Subject: RE: Retrieving CUIs
> 
> Sure:
> 
> <?xml version="1.0" encoding="UTF-8"?><xmi:XMI 
> xmlns:refsem="http:///org/apache/ctakes/typesystem/type/refsem.ecore"
> xmlns:type4="http:///org/apache/ctakes/padtermspotter/type.ecore"
> xmlns:cas="http:///uima/cas.ecore"
> xmlns:types3="http:///org/montefiore/cri/nlp/culturetests/uima/types.e
> cor
> e"
> xmlns:type6="http:///org/apache/ctakes/smokingstatus/i2b2/type.ecore"
> xmlns:util="http:///org/apache/ctakes/typesystem/type/util.ecore"
> xmlns:types="http:///org/apache/ctakes/assertion/medfacts/types.ecore"
> xmlns:type="http:///org/apache/ctakes/constituency/parser/uima/type.ec
> o re" xmlns:tcas="http:///uima/tcas.ecore"
> xmlns:type2="http:///org/apache/ctakes/coreference/type.ecore"
> xmlns:types2="http:///org/apache/ctakes/assertion/zoner/types.ecore"
> xmlns:type7="http:///org/apache/ctakes/smokingstatus/type.ecore"
> xmlns:syntax="http:///org/apache/ctakes/typesystem/type/syntax.ecore"
> xmlns:type5="http:///org/apache/ctakes/sideeffect/type.ecore"
> xmlns:xmi="http://www.omg.org/XMI"
> xmlns:textspan="http:///org/apache/ctakes/typesystem/type/textspan.eco
> re"
> xmlns:assertion="http:///org/apache/ctakes/typesystem/type/temporary/a
> ssertion.ecore"
> xmlns:structured="http:///org/apache/ctakes/typesystem/type/structured.
> ecore"
> xmlns:relation="http:///org/apache/ctakes/typesystem/type/relation.eco
> re
> "
> xmlns:textsem="http:///org/apache/ctakes/typesystem/type/textsem.ecor
> e" xmlns:type3="http:///org/apache/ctakes/drugner/type.ecore"
> xmlns:libsvm="http:///org/apache/ctakes/smokingstatus/type/libsvm.ecor
> e " xmlns:type8="http:///org/apache/ctakes/typesystem/type.ecore"
> xmi:version="2.0"><cas:NULL xmi:id="0"/><cas:Sofa xmi:id="1"
> sofaNum="1" sofaID="_InitialView" mimeType="text/plain"
> sofaString="urine culture mos source/body site clean catch culture 
> results &gt;100,001col/ml escherichia coli final id e.coli amikacin s 
> ampicillin r &gt;=32 &#13;&#10;"/><cas:Sofa xmi:id="13" sofaNum="2" sofaID="UriView"
> sofaURI="file:/C:/srv/apps/nlp/testdata/tmp.txt"/><tcas:DocumentAnnota
> ti on xmi:id="8" sofa="1" begin="0" end="142" language="x- 
> unspecified"/><textspan:Segment xmi:id="20" sofa="1" begin="0"
> end="142" id="SIMPLE_SEGMENT"/><textspan:Sentence xmi:id="26"
> sofa="1" begin="0" end="139"
> sentenceNumber="0"/><syntax:NewlineToken xmi:id="32" sofa="1"
> begin="140" end="142" tokenNumber="30"/><syntax:WordToken
> xmi:id="40" sofa="1" begin="0" end="5" tokenNumber="0"
> partOfSpeech="NN" capitalization="0" numPosition="0"
> canonicalForm="urine"/><syntax:WordToken xmi:id="52" sofa="1"
> begin="6" end="13" tokenNumber="1" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="culture"/><syntax:WordToken xmi:id="64" sofa="1"
> begin="14" end="17" tokenNumber="2" partOfSpeech="NNS"
> capitalization="0" numPosition="0"
> canonicalForm="mos"/><syntax:WordToken xmi:id="76" sofa="1"
> begin="18" end="24" tokenNumber="3" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="source"/><syntax:WordToken xmi:id="96" sofa="1"
> begin="25" end="29" tokenNumber="5" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="body"/><syntax:WordToken xmi:id="108" sofa="1"
> begin="30" end="34" tokenNumber="6" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="site"/><syntax:WordToken xmi:id="120" sofa="1"
> begin="35" end="40" tokenNumber="7" partOfSpeech="JJ"
> capitalization="0" numPosition="0"
> canonicalForm="clean"/><syntax:WordToken xmi:id="132" sofa="1"
> begin="41" end="46" tokenNumber="8" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="catch"/><syntax:WordToken xmi:id="144" sofa="1"
> begin="47" end="54" tokenNumber="9" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="culture"/><syntax:WordToken xmi:id="156" sofa="1"
> begin="55" end="62" tokenNumber="10" partOfSpeech="NNS"
> capitalization="0" numPosition="0"
> canonicalForm="result"/><syntax:WordToken xmi:id="185" sofa="1"
> begin="71" end="74" tokenNumber="13" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="col"/><syntax:WordToken xmi:id="205" sofa="1"
> begin="75" end="77" tokenNumber="15" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="ml"/><syntax:WordToken xmi:id="217" sofa="1" begin="78"
> end="89" tokenNumber="16" partOfSpeech="NN" capitalization="0"
> numPosition="0" canonicalForm="escherichia"/><syntax:WordToken
> xmi:id="229" sofa="1" begin="90" end="94" tokenNumber="17"
> partOfSpeech="NN" capitalization="0" numPosition="0"
> canonicalForm="coli"/><syntax:WordToken xmi:id="241" sofa="1"
> begin="95" end="100" tokenNumber="18" partOfSpeech="JJ"
> capitalization="0" numPosition="0"
> canonicalForm="final"/><syntax:WordToken xmi:id="253" sofa="1"
> begin="101" end="103" tokenNumber="19" partOfSpeech="JJ"
> capitalization="0" numPosition="0"
> canonicalForm="id"/><syntax:WordToken xmi:id="265" sofa="1"
> begin="104" end="105" tokenNumber="20" partOfSpeech="NN"
> capitalization="0" numPosition="0" 
> canonicalForm="e"/><syntax:WordToken
> xmi:id="285" sofa="1" begin="106" end="110" tokenNumber="22"
> partOfSpeech="NNP" capitalization="0" numPosition="0"
> canonicalForm="coli"/><syntax:WordToken xmi:id="297" sofa="1"
> begin="111" end="119" tokenNumber="23" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="amikacin"/><syntax:WordToken xmi:id="309" sofa="1"
> begin="120" end="121" tokenNumber="24" partOfSpeech="NN"
> capitalization="0" numPosition="0" 
> canonicalForm="s"/><syntax:WordToken
> xmi:id="321" sofa="1" begin="122" end="132" tokenNumber="25"
> partOfSpeech="NN" capitalization="0" numPosition="0"
> canonicalForm="ampicillin"/><syntax:WordToken xmi:id="333" sofa="1"
> begin="133" end="134" tokenNumber="26" partOfSpeech="VB"
> capitalization="0" numPosition="0"
> canonicalForm="r"/><syntax:PunctuationToken xmi:id="88" sofa="1"
> begin="24" end="25" tokenNumber="4"
> partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="168" sofa="1"
> begin="63" end="64" tokenNumber="11"
> partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="197" sofa="1"
> begin="74" end="75" tokenNumber="14"
> partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="277" sofa="1"
> begin="105" end="106" tokenNumber="21"
> partOfSpeech="."/><syntax:PunctuationToken xmi:id="345" sofa="1"
> begin="135" end="136" tokenNumber="27"
> partOfSpeech="SYM"/><syntax:NumToken xmi:id="176" sofa="1"
> begin="64" end="71" tokenNumber="12" partOfSpeech="CD"
> numType="1"/><syntax:NumToken xmi:id="361" sofa="1" begin="137"
> end="139" tokenNumber="29" partOfSpeech="CD"
> numType="1"/><syntax:SymbolToken xmi:id="353" sofa="1" begin="136"
> end="137" tokenNumber="28"
> partOfSpeech="SYM"/><textsem:RomanNumeralAnnotation xmi:id="370"
> sofa="1" begin="75" end="77" id="0" typeID="0" discoveryTechnique="0"
> confidence="0.0" polarity="0" uncertainty="0" conditional="false"
> generic="false" historyOf="0"/><textsem:RomanNumeralAnnotation
> xmi:id="388" sofa="1" begin="101" end="103" id="0" typeID="0"
> discoveryTechnique="0" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false" historyOf="0"/><syntax:NP xmi:id="406"
> sofa="1" begin="0" end="24" chunkType="NP"/><syntax:NP xmi:id="416"
> sofa="1" begin="25" end="62" chunkType="NP"/><syntax:NP xmi:id="426"
> sofa="1" begin="64" end="74" chunkType="NP"/><syntax:NP xmi:id="436"
> sofa="1" begin="75" end="105" chunkType="NP"/><syntax:NP xmi:id="446"
> sofa="1" begin="106" end="132" chunkType="NP"/><syntax:NP xmi:id="456" 
> sofa="1" begin="135" end="136"
> chunkType="NP"/><syntax:NP xmi:id="461" sofa="1" begin="136"
> end="137" chunkType="NP"/><syntax:NP xmi:id="466" sofa="1"
> begin="137" end="139" chunkType="NP"/><syntax:O xmi:id="411" sofa="1"
> begin="24" end="25" chunkType="O"/><syntax:O xmi:id="421" sofa="1"
> begin="63" end="64" chunkType="O"/><syntax:O xmi:id="431" sofa="1"
> begin="74" end="75" chunkType="O"/><syntax:O xmi:id="441" sofa="1"
> begin="105" end="106" chunkType="O"/><syntax:VP xmi:id="451" sofa="1"
> begin="133" end="134"
> chunkType="VP"/><textspan:LookupWindowAnnotation xmi:id="471"
> sofa="1" begin="0" end="24"/><textspan:LookupWindowAnnotation
> xmi:id="475" sofa="1" begin="25"
> end="62"/><textspan:LookupWindowAnnotation xmi:id="479" sofa="1"
> begin="64" end="74"/><textspan:LookupWindowAnnotation xmi:id="483"
> sofa="1" begin="75" end="105"/><textspan:LookupWindowAnnotation
> xmi:id="487" sofa="1" begin="106"
> end="132"/><textspan:LookupWindowAnnotation xmi:id="491" sofa="1"
> begin="135" end="136"/><textspan:LookupWindowAnnotation xmi:id="495"
> sofa="1" begin="136" end="137"/><textspan:LookupWindowAnnotation
> xmi:id="499" sofa="1" begin="137"
> end="139"/><textsem:SignSymptomMention xmi:id="513" sofa="1"
> begin="18" end="24" id="0" ontologyConceptArr="503" typeID="3"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:SignSymptomMention xmi:id="795" sofa="1"
> begin="41" end="46" id="0" ontologyConceptArr="785" typeID="3"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:ProcedureMention xmi:id="585" sofa="1"
> begin="0" end="13" id="0" ontologyConceptArr="550 564 543 557 571"
> typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0"
> uncertainty="0" conditional="false" generic="false"
> historyOf="0"/><textsem:ProcedureMention xmi:id="671" sofa="1"
> begin="6" end="13" id="0" ontologyConceptArr="627 655 648 613 634 641 
> 620" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0"
> uncertainty="0" conditional="false" generic="false"
> historyOf="0"/><textsem:ProcedureMention xmi:id="757" sofa="1"
> begin="47" end="54" id="0" ontologyConceptArr="713 699 734 720 706 741 
> 727" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0"
> uncertainty="0" conditional="false" generic="false"
> historyOf="0"/><textsem:MedicationMention xmi:id="851" sofa="1"
> begin="78" end="94" id="0" ontologyConceptArr="828" typeID="1"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:MedicationMention xmi:id="907" sofa="1"
> begin="122" end="132" id="0" ontologyConceptArr="884" typeID="1"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:MedicationMention xmi:id="963" sofa="1"
> begin="111" end="119" id="0" ontologyConceptArr="940" typeID="1"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false" historyOf="0"/><types3:CultureTest
> xmi:id="993" sofa="1" begin="0" end="142"
> antibiogramAnalysisProcedure="1049 1066" specimen="1141"
> bacterialColonySize="1008"
> uri="http://ric.einstein.yu.edu/im_culture_test#UrineCultureTest__113c
> a0c
> 0-2c4c-4b9e-9ca5-6f3a6b73bf1e"
> correspondsTo="http://ric.einstein.yu.edu/terminology#EscherichiaColiD
> NA ACnc" valueOf="http://ric.einstein.yu.edu/terminology#CultureTest"
> sofaString="urine culture mos source/body site clean catch culture 
> results &gt;100,001col/ml escherichia coli final id e.coli amikacin s 
> ampicillin r &gt;=32 &#13;&#10;" 
> text="EscherichiaColi"/><types3:BacterialColonySize
> xmi:id="1008" sofa="1" begin="63" end="94" criValue="100,001"
> arithmeticOperators="1024" criFloatValue="100001.0" unitConcept="1036"
> uri="http://ric.einstein.yu.edu/im_culture_test#BacterialColonySize__2
> 0ea8
> e04-cf15-4d68-b351-a04c92a322a6"
> correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules"
> valueOf="http://ric.einstein.yu.edu/terminology#BacterialColonySize"
> sofaString="&gt;100,001col/ml escherichia coli"
> text="FloatRules"/><types3:ArithmeticOperators xmi:id="1024" sofa="1"
> begin="63" end="64"
> uri="http://ric.einstein.yu.edu/im_culture_test#Greater__0ec42e0f-63b1
> -
> 40b2-842f-eb09706b52c1"
> correspondsTo="http://ric.einstein.yu.edu/im_culture_test#Greater"
> valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators"
> sofaString="&gt;" text="Greater"/><types3:ArithmeticOperators
> xmi:id="1105" sofa="1" begin="135" end="137"
> uri="http://ric.einstein.yu.edu/terminology#ArithmeticOperators___deaa
> 90
> 82-33ff-4be5-b7c1-f20ee60922e8"
> correspondsTo="http://ric.einstein.yu.edu/im_culture_test#LessEqual"
> valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators"
> sofaString="&gt;=" text="LessEqual"/><types3:UnitConcept xmi:id="1036"
> sofa="1" begin="71" end="77"
> uri="http://ric.einstein.yu.edu/im_culture_test#ColPerMl__da5a75df-27c
> 3-
> 49a0-a432-fb24eeb66a96"
> correspondsTo="http://ric.einstein.yu.edu/im_culture_test#ColPerMl"
> valueOf="http://ric.einstein.yu.edu/terminology#UnitConcept"
> sofaString="col/ml"
> text="ColPerMl"/><types3:AntibiogramAnalysisProcedure xmi:id="1049"
> sofa="1" begin="111" end="122" antibioticSensitivity="1117"
> antibodyTiter="0"
> uri="http://ric.einstein.yu.edu/im_culture_test#types__da56099c-1b7c-
> 46a4-b364-726464b0ae5b"
> correspondsTo="http://montefiore.org/umls/mth#MIC"
> valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisPro
> ce dure" sofaString="amikacin s " text="AmikacinSusceptibility"
> ontologyConcept="1061"/><types3:AntibiogramAnalysisProcedure
> xmi:id="1066" sofa="1" begin="122" end="139" antibioticSensitivity="1129"
> antibodyTiter="1090 0"
> uri="http://ric.einstein.yu.edu/im_culture_test#types__6d80da49-29a8-
> 430c-8ae6-871e78659031"
> correspondsTo="http://montefiore.org/umls/mth#MIC"
> valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisPro
> ce dure" sofaString="ampicillin r &gt;=32" 
> text="AmpicillinSusceptibility"
> ontologyConcept="1078"/><types3:AntibodyTiter xmi:id="1090" sofa="1"
> begin="135" end="139" criValue="32" arithmeticOperators="1105"
> criFloatValue="32.0"
> uri="http://ric.einstein.yu.edu/im_culture_test#AntibodyTiter__f3242ae
> b-
> 88fb-417c-8446-b180af943235"
> correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules"
> valueOf="http://ric.einstein.yu.edu/terminology#AntibodyTiter"
> sofaString="&gt;=32" text="FloatRules"/><types3:AntibioticSensitivity
> xmi:id="1117" sofa="1" begin="120" end="121"
> uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity_
> _6e7e
> 76c3-3c00-43fb-925c-43b2fb239414"
> correspondsTo="http://ric.einstein.yu.edu/terminology#TestSensitive"
> valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSens
> itivity " sofaString="s" 
> text="TestSensitive"/><types3:AntibioticSensitivity
> xmi:id="1129" sofa="1" begin="133" end="134"
> uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity_
> _7e1b
> 2074-e396-447f-95d9-b6eefe6ea730"
> correspondsTo="http://ric.einstein.yu.edu/terminology#TestResistant"
> valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSens
> itivity " sofaString="r" text="TestResistant"/><types3:Specimen 
> xmi:id="1141"
> sofa="1" begin="0" end="62" specimenSource="1177" biologicalType="1168"
> uri="http://ric.einstein.yu.edu/im_culture_test#Specimen__fd5bcc82-5ea
> 5-
> 4d73-87e6-c7cc6dc660b7"
> correspondsTo="http://ric.einstein.yu.edu/terminology#Specimen"
> valueOf="http://ric.einstein.yu.edu/terminology#Specimen"
> sofaString="urine culture mos source/body site clean catch culture results"
> text="Specimen"/><types3:BiologicalType xmi:id="1168" sofa="1" begin="0"
> end="5"
> uri="http://ric.einstein.yu.edu/im_culture_test#BiologicalType__bf502c
> 06-
> 043c-4c53-ab79-a3c37972c404"
> correspondsTo="http://ric.einstein.yu.edu/terminology#Urine"
> valueOf="http://ric.einstein.yu.edu/terminology#BiologicalType"
> sofaString="urine" text="Urine"/><types3:SpecimenSource xmi:id="1177"
> sofa="1" begin="35" end="46"
> uri="http://ric.einstein.yu.edu/im_culture_test#SpecimenSource__d932f1
> 0
> 2-e3cf-4022-a7fc-0b1a6695d102"
> correspondsTo="http://ric.einstein.yu.edu/terminology#CleanCatch"
> valueOf="http://ric.einstein.yu.edu/terminology#SpecimenSource"
> sofaString="clean catch" text="CleanCatch"/><types3:OntologyConcept
> xmi:id="1078" codingScheme="RXNORM"
> code="C0002680"/><types3:OntologyConcept xmi:id="1061"
> codingScheme="RXNORM" code="C0002499"/><refsem:OntologyConcept
> xmi:id="940" codingScheme="RXNORM"
> code="C0002499"/><refsem:OntologyConcept xmi:id="884"
> codingScheme="RXNORM" code="C0002680"/><refsem:OntologyConcept
> xmi:id="828" codingScheme="RXNORM"
> code="C0014834"/><refsem:UmlsConcept xmi:id="727"
> codingScheme="SNOMED" code="145414005" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="741" codingScheme="SNOMED"
> code="252397004" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="706" codingScheme="SNOMED" code="252398009" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="720" codingScheme="SNOMED"
> code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="734" codingScheme="SNOMED" code="270035009" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="699" codingScheme="SNOMED"
> code="61594008" cui="C2242979" tui="T059"/><refsem:UmlsConcept 
> xmi:id="713" codingScheme="SNOMED" code="145422003" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="620" codingScheme="SNOMED"
> code="252398009" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="641" codingScheme="SNOMED" code="145414005" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="634" codingScheme="SNOMED"
> code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="613" codingScheme="SNOMED" code="61594008" cui="C2242979"
> tui="T059"/><refsem:UmlsConcept xmi:id="648" codingScheme="SNOMED"
> code="270035009" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="655" codingScheme="SNOMED" code="252397004" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="627" codingScheme="SNOMED"
> code="145422003" cui="C0430400" tui="T059"/><refsem:UmlsConcept 
> xmi:id="571" codingScheme="SNOMED" code="145543000" cui="C0430404"
> tui="T059"/><refsem:UmlsConcept xmi:id="557" codingScheme="SNOMED"
> code="144792004" cui="C0430404" tui="T059"/><refsem:UmlsConcept 
> xmi:id="543" codingScheme="SNOMED" code="117010004" cui="C0430404"
> tui="T059"/><refsem:UmlsConcept xmi:id="564" codingScheme="SNOMED"
> code="275885001" cui="C0430404" tui="T059"/><refsem:UmlsConcept 
> xmi:id="550" codingScheme="SNOMED" code="168335002" cui="C0430404"
> tui="T059"/><refsem:UmlsConcept xmi:id="785" codingScheme="SNOMED"
> code="30623001" cui="C0231617" tui="T184"/><refsem:UmlsConcept 
> xmi:id="503" codingScheme="SNOMED" code="260753009" cui="C0449416"
> tui="T033"/><cas:View sofa="1" members="8 20 26 32 40 52 64 76 96 108 
> 120
> 132 144 156 185 205 217 229 241 253 265 285 297 309 321 333 88 168 197 
> 277 345
> 176 361 353 370 388 406 416 426 436 446 456 461 466 411 421 431 441 
> 451 471
> 475 479 483 487 491 495 499 513 795 585 671 757 851 907 963 993 1008 
> 1024
> 1105 1036 1049 1066 1090 1117 1129 1141 1168 1177"/><cas:View 
> sofa="13"/></xmi:XMI>
> 
> 
> 
> 
> 
> -----Original Message-----
> From: Masanz, James J. [mailto:Masanz.James@mayo.edu]
> Sent: Tuesday, July 08, 2014 3:44 PM
> To: 'dev@ctakes.apache.org'
> Subject: RE: Retrieving CUIs
> 
> The attachment didn't come through so if the other email I sent didn't 
> help, please post the xmi somewhere that I can download it from. Thanks.
> 
> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 2:14 PM
> To: dev@ctakes.apache.org
> Subject: RE: Retrieving CUIs
> 
> The xmi file is attached.
> 
> 
> -----Original Message-----
> From: Masanz, James J. [mailto:Masanz.James@mayo.edu]
> Sent: Tuesday, July 08, 2014 2:54 PM
> To: 'dev@ctakes.apache.org'
> Subject: RE: Retrieving CUIs
> 
> What gets annotated depends on which pipeline you use.
> The pipeline mentioned in the User Guide should also annotate 
> diseases/disorders, signs/symptoms, procedures, and anatomical sites. 
> So first would be to check which pipeline you are using.
> 
> Or perhaps you do not have the separately downloadable dictionary. To 
> test that, try text that includes the words "knee" and "pain". If 
> those are annotated and other anatomical sites and signs/symptoms are 
> not, you probably don't have the dictionary resources or don't have 
> them on your classpath.
> 
> Good things to post to help us help you are:
>  - whether you are using CVD or CPE GUI, or a program/script
>  - the name of pipeline you are running (are you loading an XML 
> descriptor into CVD or CPE), or the name of the script/program
>  - a sample output file (xcas/xmi) [make sure not to include any PHI 
> in the sample text that you process if you are going to post the 
> output]
> 
> -- James
> 
> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 1:43 PM
> To: dev@ctakes.apache.org
> Subject: Retrieving CUIs
> 
> Hi there,
> 
> I was wondering if there is any way to retrieve CUIs for the tokens of 
> a free text in CTakes without changing the codebase? I am able to 
> retrieve CUIs for only medications  in a text.
> 
> 
> 
> Thanks,
> Nick
> 


RE: Retrieving CUIs

Posted by "Chen, Pei" <Pe...@childrens.harvard.edu>.
Nick,
On why 'Enterococcus faecium' isn't returned:
I think a limitation is that cTAKES will force a mapping of the TUI's semantic types into a semantic group.  If it doesn't exist in the mapping, the dictionary lookup won't save it.
It would probably be a nice feature to create a "Other" semantic group and default anything that is not mapped into this group.
You can test out this theory by modifying your LookupDesc_Db.xml to include T007 (Bacterium) into one of the existing groups such findings and see if 'Enterococcus faecium' returns for you.

[Assuming you're using the current default dictionary-lookup and not dictionary-lookup-fast]

> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 4:12 PM
> To: dev@ctakes.apache.org
> Subject: RE: Retrieving CUIs
> 
> One of the cui that I need to get is for Bactria like " Enterococcus faecium"
> but I am not seeing it. I am writing a new annotator to get those cui and save
> them in a map. Do you have any applicationContext that I can save those
> values and retrieve them in my annotators which are at the end of the
> pipeline or I should use something like ehcache?
> 
> 
> -----Original Message-----
> From: Masanz, James J. [mailto:Masanz.James@mayo.edu]
> Sent: Tuesday, July 08, 2014 3:56 PM
> To: 'dev@ctakes.apache.org'
> Subject: RE: Retrieving CUIs
> 
> In your CAS, I see
> 
> <textsem:ProcedureMention xmi:id="585" sofa="1" begin="0" end="13"
> id="0" ontologyConceptArr="550 564 543 557 571"
> 
> Reading the CAS xmi, to see the first element in the array, we look for ID 550,
> which takes us to
> 
> <refsem:UmlsConcept xmi:id="550" codingScheme="SNOMED"
> code="168335002" cui="C0430404" tui="T059"/>
> 
> So it seems like whatever you are doing to try to read out the CUI is not
> accessing something correctly.
> 
> -- James
> 
> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 2:46 PM
> To: dev@ctakes.apache.org
> Subject: RE: Retrieving CUIs
> 
> Sure:
> 
> <?xml version="1.0" encoding="UTF-8"?><xmi:XMI
> xmlns:refsem="http:///org/apache/ctakes/typesystem/type/refsem.ecore"
> xmlns:type4="http:///org/apache/ctakes/padtermspotter/type.ecore"
> xmlns:cas="http:///uima/cas.ecore"
> xmlns:types3="http:///org/montefiore/cri/nlp/culturetests/uima/types.ecor
> e"
> xmlns:type6="http:///org/apache/ctakes/smokingstatus/i2b2/type.ecore"
> xmlns:util="http:///org/apache/ctakes/typesystem/type/util.ecore"
> xmlns:types="http:///org/apache/ctakes/assertion/medfacts/types.ecore"
> xmlns:type="http:///org/apache/ctakes/constituency/parser/uima/type.eco
> re" xmlns:tcas="http:///uima/tcas.ecore"
> xmlns:type2="http:///org/apache/ctakes/coreference/type.ecore"
> xmlns:types2="http:///org/apache/ctakes/assertion/zoner/types.ecore"
> xmlns:type7="http:///org/apache/ctakes/smokingstatus/type.ecore"
> xmlns:syntax="http:///org/apache/ctakes/typesystem/type/syntax.ecore"
> xmlns:type5="http:///org/apache/ctakes/sideeffect/type.ecore"
> xmlns:xmi="http://www.omg.org/XMI"
> xmlns:textspan="http:///org/apache/ctakes/typesystem/type/textspan.eco
> re"
> xmlns:assertion="http:///org/apache/ctakes/typesystem/type/temporary/a
> ssertion.ecore"
> xmlns:structured="http:///org/apache/ctakes/typesystem/type/structured.
> ecore"
> xmlns:relation="http:///org/apache/ctakes/typesystem/type/relation.ecore
> "
> xmlns:textsem="http:///org/apache/ctakes/typesystem/type/textsem.ecor
> e" xmlns:type3="http:///org/apache/ctakes/drugner/type.ecore"
> xmlns:libsvm="http:///org/apache/ctakes/smokingstatus/type/libsvm.ecore
> " xmlns:type8="http:///org/apache/ctakes/typesystem/type.ecore"
> xmi:version="2.0"><cas:NULL xmi:id="0"/><cas:Sofa xmi:id="1"
> sofaNum="1" sofaID="_InitialView" mimeType="text/plain"
> sofaString="urine culture mos source/body site clean catch culture results
> &gt;100,001col/ml escherichia coli final id e.coli amikacin s ampicillin r &gt;=32
> &#13;&#10;"/><cas:Sofa xmi:id="13" sofaNum="2" sofaID="UriView"
> sofaURI="file:/C:/srv/apps/nlp/testdata/tmp.txt"/><tcas:DocumentAnnotati
> on xmi:id="8" sofa="1" begin="0" end="142" language="x-
> unspecified"/><textspan:Segment xmi:id="20" sofa="1" begin="0"
> end="142" id="SIMPLE_SEGMENT"/><textspan:Sentence xmi:id="26"
> sofa="1" begin="0" end="139"
> sentenceNumber="0"/><syntax:NewlineToken xmi:id="32" sofa="1"
> begin="140" end="142" tokenNumber="30"/><syntax:WordToken
> xmi:id="40" sofa="1" begin="0" end="5" tokenNumber="0"
> partOfSpeech="NN" capitalization="0" numPosition="0"
> canonicalForm="urine"/><syntax:WordToken xmi:id="52" sofa="1"
> begin="6" end="13" tokenNumber="1" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="culture"/><syntax:WordToken xmi:id="64" sofa="1"
> begin="14" end="17" tokenNumber="2" partOfSpeech="NNS"
> capitalization="0" numPosition="0"
> canonicalForm="mos"/><syntax:WordToken xmi:id="76" sofa="1"
> begin="18" end="24" tokenNumber="3" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="source"/><syntax:WordToken xmi:id="96" sofa="1"
> begin="25" end="29" tokenNumber="5" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="body"/><syntax:WordToken xmi:id="108" sofa="1"
> begin="30" end="34" tokenNumber="6" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="site"/><syntax:WordToken xmi:id="120" sofa="1"
> begin="35" end="40" tokenNumber="7" partOfSpeech="JJ"
> capitalization="0" numPosition="0"
> canonicalForm="clean"/><syntax:WordToken xmi:id="132" sofa="1"
> begin="41" end="46" tokenNumber="8" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="catch"/><syntax:WordToken xmi:id="144" sofa="1"
> begin="47" end="54" tokenNumber="9" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="culture"/><syntax:WordToken xmi:id="156" sofa="1"
> begin="55" end="62" tokenNumber="10" partOfSpeech="NNS"
> capitalization="0" numPosition="0"
> canonicalForm="result"/><syntax:WordToken xmi:id="185" sofa="1"
> begin="71" end="74" tokenNumber="13" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="col"/><syntax:WordToken xmi:id="205" sofa="1"
> begin="75" end="77" tokenNumber="15" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="ml"/><syntax:WordToken xmi:id="217" sofa="1" begin="78"
> end="89" tokenNumber="16" partOfSpeech="NN" capitalization="0"
> numPosition="0" canonicalForm="escherichia"/><syntax:WordToken
> xmi:id="229" sofa="1" begin="90" end="94" tokenNumber="17"
> partOfSpeech="NN" capitalization="0" numPosition="0"
> canonicalForm="coli"/><syntax:WordToken xmi:id="241" sofa="1"
> begin="95" end="100" tokenNumber="18" partOfSpeech="JJ"
> capitalization="0" numPosition="0"
> canonicalForm="final"/><syntax:WordToken xmi:id="253" sofa="1"
> begin="101" end="103" tokenNumber="19" partOfSpeech="JJ"
> capitalization="0" numPosition="0"
> canonicalForm="id"/><syntax:WordToken xmi:id="265" sofa="1"
> begin="104" end="105" tokenNumber="20" partOfSpeech="NN"
> capitalization="0" numPosition="0" canonicalForm="e"/><syntax:WordToken
> xmi:id="285" sofa="1" begin="106" end="110" tokenNumber="22"
> partOfSpeech="NNP" capitalization="0" numPosition="0"
> canonicalForm="coli"/><syntax:WordToken xmi:id="297" sofa="1"
> begin="111" end="119" tokenNumber="23" partOfSpeech="NN"
> capitalization="0" numPosition="0"
> canonicalForm="amikacin"/><syntax:WordToken xmi:id="309" sofa="1"
> begin="120" end="121" tokenNumber="24" partOfSpeech="NN"
> capitalization="0" numPosition="0" canonicalForm="s"/><syntax:WordToken
> xmi:id="321" sofa="1" begin="122" end="132" tokenNumber="25"
> partOfSpeech="NN" capitalization="0" numPosition="0"
> canonicalForm="ampicillin"/><syntax:WordToken xmi:id="333" sofa="1"
> begin="133" end="134" tokenNumber="26" partOfSpeech="VB"
> capitalization="0" numPosition="0"
> canonicalForm="r"/><syntax:PunctuationToken xmi:id="88" sofa="1"
> begin="24" end="25" tokenNumber="4"
> partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="168" sofa="1"
> begin="63" end="64" tokenNumber="11"
> partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="197" sofa="1"
> begin="74" end="75" tokenNumber="14"
> partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="277" sofa="1"
> begin="105" end="106" tokenNumber="21"
> partOfSpeech="."/><syntax:PunctuationToken xmi:id="345" sofa="1"
> begin="135" end="136" tokenNumber="27"
> partOfSpeech="SYM"/><syntax:NumToken xmi:id="176" sofa="1"
> begin="64" end="71" tokenNumber="12" partOfSpeech="CD"
> numType="1"/><syntax:NumToken xmi:id="361" sofa="1" begin="137"
> end="139" tokenNumber="29" partOfSpeech="CD"
> numType="1"/><syntax:SymbolToken xmi:id="353" sofa="1" begin="136"
> end="137" tokenNumber="28"
> partOfSpeech="SYM"/><textsem:RomanNumeralAnnotation xmi:id="370"
> sofa="1" begin="75" end="77" id="0" typeID="0" discoveryTechnique="0"
> confidence="0.0" polarity="0" uncertainty="0" conditional="false"
> generic="false" historyOf="0"/><textsem:RomanNumeralAnnotation
> xmi:id="388" sofa="1" begin="101" end="103" id="0" typeID="0"
> discoveryTechnique="0" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false" historyOf="0"/><syntax:NP xmi:id="406"
> sofa="1" begin="0" end="24" chunkType="NP"/><syntax:NP xmi:id="416"
> sofa="1" begin="25" end="62" chunkType="NP"/><syntax:NP xmi:id="426"
> sofa="1" begin="64" end="74" chunkType="NP"/><syntax:NP xmi:id="436"
> sofa="1" begin="75" end="105" chunkType="NP"/><syntax:NP xmi:id="446"
> sofa="1" begin="106" end="132" chunkType="NP"/><syntax:NP
> xmi:id="456" sofa="1" begin="135" end="136"
> chunkType="NP"/><syntax:NP xmi:id="461" sofa="1" begin="136"
> end="137" chunkType="NP"/><syntax:NP xmi:id="466" sofa="1"
> begin="137" end="139" chunkType="NP"/><syntax:O xmi:id="411" sofa="1"
> begin="24" end="25" chunkType="O"/><syntax:O xmi:id="421" sofa="1"
> begin="63" end="64" chunkType="O"/><syntax:O xmi:id="431" sofa="1"
> begin="74" end="75" chunkType="O"/><syntax:O xmi:id="441" sofa="1"
> begin="105" end="106" chunkType="O"/><syntax:VP xmi:id="451" sofa="1"
> begin="133" end="134"
> chunkType="VP"/><textspan:LookupWindowAnnotation xmi:id="471"
> sofa="1" begin="0" end="24"/><textspan:LookupWindowAnnotation
> xmi:id="475" sofa="1" begin="25"
> end="62"/><textspan:LookupWindowAnnotation xmi:id="479" sofa="1"
> begin="64" end="74"/><textspan:LookupWindowAnnotation xmi:id="483"
> sofa="1" begin="75" end="105"/><textspan:LookupWindowAnnotation
> xmi:id="487" sofa="1" begin="106"
> end="132"/><textspan:LookupWindowAnnotation xmi:id="491" sofa="1"
> begin="135" end="136"/><textspan:LookupWindowAnnotation xmi:id="495"
> sofa="1" begin="136" end="137"/><textspan:LookupWindowAnnotation
> xmi:id="499" sofa="1" begin="137"
> end="139"/><textsem:SignSymptomMention xmi:id="513" sofa="1"
> begin="18" end="24" id="0" ontologyConceptArr="503" typeID="3"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:SignSymptomMention xmi:id="795" sofa="1"
> begin="41" end="46" id="0" ontologyConceptArr="785" typeID="3"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:ProcedureMention xmi:id="585" sofa="1"
> begin="0" end="13" id="0" ontologyConceptArr="550 564 543 557 571"
> typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0"
> uncertainty="0" conditional="false" generic="false"
> historyOf="0"/><textsem:ProcedureMention xmi:id="671" sofa="1"
> begin="6" end="13" id="0" ontologyConceptArr="627 655 648 613 634 641
> 620" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0"
> uncertainty="0" conditional="false" generic="false"
> historyOf="0"/><textsem:ProcedureMention xmi:id="757" sofa="1"
> begin="47" end="54" id="0" ontologyConceptArr="713 699 734 720 706 741
> 727" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0"
> uncertainty="0" conditional="false" generic="false"
> historyOf="0"/><textsem:MedicationMention xmi:id="851" sofa="1"
> begin="78" end="94" id="0" ontologyConceptArr="828" typeID="1"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:MedicationMention xmi:id="907" sofa="1"
> begin="122" end="132" id="0" ontologyConceptArr="884" typeID="1"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false"
> historyOf="0"/><textsem:MedicationMention xmi:id="963" sofa="1"
> begin="111" end="119" id="0" ontologyConceptArr="940" typeID="1"
> discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0"
> conditional="false" generic="false" historyOf="0"/><types3:CultureTest
> xmi:id="993" sofa="1" begin="0" end="142"
> antibiogramAnalysisProcedure="1049 1066" specimen="1141"
> bacterialColonySize="1008"
> uri="http://ric.einstein.yu.edu/im_culture_test#UrineCultureTest__113ca0c
> 0-2c4c-4b9e-9ca5-6f3a6b73bf1e"
> correspondsTo="http://ric.einstein.yu.edu/terminology#EscherichiaColiDNA
> ACnc" valueOf="http://ric.einstein.yu.edu/terminology#CultureTest"
> sofaString="urine culture mos source/body site clean catch culture results
> &gt;100,001col/ml escherichia coli final id e.coli amikacin s ampicillin r &gt;=32
> &#13;&#10;" text="EscherichiaColi"/><types3:BacterialColonySize
> xmi:id="1008" sofa="1" begin="63" end="94" criValue="100,001"
> arithmeticOperators="1024" criFloatValue="100001.0" unitConcept="1036"
> uri="http://ric.einstein.yu.edu/im_culture_test#BacterialColonySize__20ea8
> e04-cf15-4d68-b351-a04c92a322a6"
> correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules"
> valueOf="http://ric.einstein.yu.edu/terminology#BacterialColonySize"
> sofaString="&gt;100,001col/ml escherichia coli"
> text="FloatRules"/><types3:ArithmeticOperators xmi:id="1024" sofa="1"
> begin="63" end="64"
> uri="http://ric.einstein.yu.edu/im_culture_test#Greater__0ec42e0f-63b1-
> 40b2-842f-eb09706b52c1"
> correspondsTo="http://ric.einstein.yu.edu/im_culture_test#Greater"
> valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators"
> sofaString="&gt;" text="Greater"/><types3:ArithmeticOperators
> xmi:id="1105" sofa="1" begin="135" end="137"
> uri="http://ric.einstein.yu.edu/terminology#ArithmeticOperators___deaa90
> 82-33ff-4be5-b7c1-f20ee60922e8"
> correspondsTo="http://ric.einstein.yu.edu/im_culture_test#LessEqual"
> valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators"
> sofaString="&gt;=" text="LessEqual"/><types3:UnitConcept xmi:id="1036"
> sofa="1" begin="71" end="77"
> uri="http://ric.einstein.yu.edu/im_culture_test#ColPerMl__da5a75df-27c3-
> 49a0-a432-fb24eeb66a96"
> correspondsTo="http://ric.einstein.yu.edu/im_culture_test#ColPerMl"
> valueOf="http://ric.einstein.yu.edu/terminology#UnitConcept"
> sofaString="col/ml"
> text="ColPerMl"/><types3:AntibiogramAnalysisProcedure xmi:id="1049"
> sofa="1" begin="111" end="122" antibioticSensitivity="1117"
> antibodyTiter="0"
> uri="http://ric.einstein.yu.edu/im_culture_test#types__da56099c-1b7c-
> 46a4-b364-726464b0ae5b"
> correspondsTo="http://montefiore.org/umls/mth#MIC"
> valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisProce
> dure" sofaString="amikacin s " text="AmikacinSusceptibility"
> ontologyConcept="1061"/><types3:AntibiogramAnalysisProcedure
> xmi:id="1066" sofa="1" begin="122" end="139" antibioticSensitivity="1129"
> antibodyTiter="1090 0"
> uri="http://ric.einstein.yu.edu/im_culture_test#types__6d80da49-29a8-
> 430c-8ae6-871e78659031"
> correspondsTo="http://montefiore.org/umls/mth#MIC"
> valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisProce
> dure" sofaString="ampicillin r &gt;=32" text="AmpicillinSusceptibility"
> ontologyConcept="1078"/><types3:AntibodyTiter xmi:id="1090" sofa="1"
> begin="135" end="139" criValue="32" arithmeticOperators="1105"
> criFloatValue="32.0"
> uri="http://ric.einstein.yu.edu/im_culture_test#AntibodyTiter__f3242aeb-
> 88fb-417c-8446-b180af943235"
> correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules"
> valueOf="http://ric.einstein.yu.edu/terminology#AntibodyTiter"
> sofaString="&gt;=32" text="FloatRules"/><types3:AntibioticSensitivity
> xmi:id="1117" sofa="1" begin="120" end="121"
> uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity__6e7e
> 76c3-3c00-43fb-925c-43b2fb239414"
> correspondsTo="http://ric.einstein.yu.edu/terminology#TestSensitive"
> valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSensitivity
> " sofaString="s" text="TestSensitive"/><types3:AntibioticSensitivity
> xmi:id="1129" sofa="1" begin="133" end="134"
> uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity__7e1b
> 2074-e396-447f-95d9-b6eefe6ea730"
> correspondsTo="http://ric.einstein.yu.edu/terminology#TestResistant"
> valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSensitivity
> " sofaString="r" text="TestResistant"/><types3:Specimen xmi:id="1141"
> sofa="1" begin="0" end="62" specimenSource="1177" biologicalType="1168"
> uri="http://ric.einstein.yu.edu/im_culture_test#Specimen__fd5bcc82-5ea5-
> 4d73-87e6-c7cc6dc660b7"
> correspondsTo="http://ric.einstein.yu.edu/terminology#Specimen"
> valueOf="http://ric.einstein.yu.edu/terminology#Specimen"
> sofaString="urine culture mos source/body site clean catch culture results"
> text="Specimen"/><types3:BiologicalType xmi:id="1168" sofa="1" begin="0"
> end="5"
> uri="http://ric.einstein.yu.edu/im_culture_test#BiologicalType__bf502c06-
> 043c-4c53-ab79-a3c37972c404"
> correspondsTo="http://ric.einstein.yu.edu/terminology#Urine"
> valueOf="http://ric.einstein.yu.edu/terminology#BiologicalType"
> sofaString="urine" text="Urine"/><types3:SpecimenSource xmi:id="1177"
> sofa="1" begin="35" end="46"
> uri="http://ric.einstein.yu.edu/im_culture_test#SpecimenSource__d932f10
> 2-e3cf-4022-a7fc-0b1a6695d102"
> correspondsTo="http://ric.einstein.yu.edu/terminology#CleanCatch"
> valueOf="http://ric.einstein.yu.edu/terminology#SpecimenSource"
> sofaString="clean catch" text="CleanCatch"/><types3:OntologyConcept
> xmi:id="1078" codingScheme="RXNORM"
> code="C0002680"/><types3:OntologyConcept xmi:id="1061"
> codingScheme="RXNORM" code="C0002499"/><refsem:OntologyConcept
> xmi:id="940" codingScheme="RXNORM"
> code="C0002499"/><refsem:OntologyConcept xmi:id="884"
> codingScheme="RXNORM" code="C0002680"/><refsem:OntologyConcept
> xmi:id="828" codingScheme="RXNORM"
> code="C0014834"/><refsem:UmlsConcept xmi:id="727"
> codingScheme="SNOMED" code="145414005" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="741" codingScheme="SNOMED"
> code="252397004" cui="C0430400" tui="T059"/><refsem:UmlsConcept
> xmi:id="706" codingScheme="SNOMED" code="252398009" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="720" codingScheme="SNOMED"
> code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept
> xmi:id="734" codingScheme="SNOMED" code="270035009" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="699" codingScheme="SNOMED"
> code="61594008" cui="C2242979" tui="T059"/><refsem:UmlsConcept
> xmi:id="713" codingScheme="SNOMED" code="145422003" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="620" codingScheme="SNOMED"
> code="252398009" cui="C0430400" tui="T059"/><refsem:UmlsConcept
> xmi:id="641" codingScheme="SNOMED" code="145414005" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="634" codingScheme="SNOMED"
> code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept
> xmi:id="613" codingScheme="SNOMED" code="61594008" cui="C2242979"
> tui="T059"/><refsem:UmlsConcept xmi:id="648" codingScheme="SNOMED"
> code="270035009" cui="C0430400" tui="T059"/><refsem:UmlsConcept
> xmi:id="655" codingScheme="SNOMED" code="252397004" cui="C0430400"
> tui="T059"/><refsem:UmlsConcept xmi:id="627" codingScheme="SNOMED"
> code="145422003" cui="C0430400" tui="T059"/><refsem:UmlsConcept
> xmi:id="571" codingScheme="SNOMED" code="145543000" cui="C0430404"
> tui="T059"/><refsem:UmlsConcept xmi:id="557" codingScheme="SNOMED"
> code="144792004" cui="C0430404" tui="T059"/><refsem:UmlsConcept
> xmi:id="543" codingScheme="SNOMED" code="117010004" cui="C0430404"
> tui="T059"/><refsem:UmlsConcept xmi:id="564" codingScheme="SNOMED"
> code="275885001" cui="C0430404" tui="T059"/><refsem:UmlsConcept
> xmi:id="550" codingScheme="SNOMED" code="168335002" cui="C0430404"
> tui="T059"/><refsem:UmlsConcept xmi:id="785" codingScheme="SNOMED"
> code="30623001" cui="C0231617" tui="T184"/><refsem:UmlsConcept
> xmi:id="503" codingScheme="SNOMED" code="260753009" cui="C0449416"
> tui="T033"/><cas:View sofa="1" members="8 20 26 32 40 52 64 76 96 108 120
> 132 144 156 185 205 217 229 241 253 265 285 297 309 321 333 88 168 197 277 345
> 176 361 353 370 388 406 416 426 436 446 456 461 466 411 421 431 441 451 471
> 475 479 483 487 491 495 499 513 795 585 671 757 851 907 963 993 1008 1024
> 1105 1036 1049 1066 1090 1117 1129 1141 1168 1177"/><cas:View
> sofa="13"/></xmi:XMI>
> 
> 
> 
> 
> 
> -----Original Message-----
> From: Masanz, James J. [mailto:Masanz.James@mayo.edu]
> Sent: Tuesday, July 08, 2014 3:44 PM
> To: 'dev@ctakes.apache.org'
> Subject: RE: Retrieving CUIs
> 
> The attachment didn't come through so if the other email I sent didn't help,
> please post the xmi somewhere that I can download it from. Thanks.
> 
> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 2:14 PM
> To: dev@ctakes.apache.org
> Subject: RE: Retrieving CUIs
> 
> The xmi file is attached.
> 
> 
> -----Original Message-----
> From: Masanz, James J. [mailto:Masanz.James@mayo.edu]
> Sent: Tuesday, July 08, 2014 2:54 PM
> To: 'dev@ctakes.apache.org'
> Subject: RE: Retrieving CUIs
> 
> What gets annotated depends on which pipeline you use.
> The pipeline mentioned in the User Guide should also annotate
> diseases/disorders, signs/symptoms, procedures, and anatomical sites. So
> first would be to check which pipeline you are using.
> 
> Or perhaps you do not have the separately downloadable dictionary. To test
> that, try text that includes the words "knee" and "pain". If those are
> annotated and other anatomical sites and signs/symptoms are not, you
> probably don't have the dictionary resources or don't have them on your
> classpath.
> 
> Good things to post to help us help you are:
>  - whether you are using CVD or CPE GUI, or a program/script
>  - the name of pipeline you are running (are you loading an XML descriptor
> into CVD or CPE), or the name of the script/program
>  - a sample output file (xcas/xmi) [make sure not to include any PHI in the
> sample text that you process if you are going to post the output]
> 
> -- James
> 
> -----Original Message-----
> From: Nick Nikandish [mailto:snikandi@emerginghealthit.com]
> Sent: Tuesday, July 08, 2014 1:43 PM
> To: dev@ctakes.apache.org
> Subject: Retrieving CUIs
> 
> Hi there,
> 
> I was wondering if there is any way to retrieve CUIs for the tokens of a free
> text in CTakes without changing the codebase? I am able to retrieve CUIs for
> only medications  in a text.
> 
> 
> 
> Thanks,
> Nick
> 


RE: Retrieving CUIs

Posted by Nick Nikandish <sn...@emerginghealthit.com>.
One of the cui that I need to get is for Bactria like " Enterococcus faecium"  but I am not seeing it. I am writing a new annotator to get those cui and save them in a map. Do you have any applicationContext that I can save those values and retrieve them in my annotators which are at the end of the pipeline or I should use something like ehcache?
  

-----Original Message-----
From: Masanz, James J. [mailto:Masanz.James@mayo.edu] 
Sent: Tuesday, July 08, 2014 3:56 PM
To: 'dev@ctakes.apache.org'
Subject: RE: Retrieving CUIs

In your CAS, I see

<textsem:ProcedureMention xmi:id="585" sofa="1" begin="0" end="13" id="0" ontologyConceptArr="550 564 543 557 571"

Reading the CAS xmi, to see the first element in the array, we look for ID 550, which takes us to 

<refsem:UmlsConcept xmi:id="550" codingScheme="SNOMED" code="168335002" cui="C0430404" tui="T059"/>

So it seems like whatever you are doing to try to read out the CUI is not accessing something correctly.

-- James

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 2:46 PM
To: dev@ctakes.apache.org
Subject: RE: Retrieving CUIs

Sure: 

<?xml version="1.0" encoding="UTF-8"?><xmi:XMI xmlns:refsem="http:///org/apache/ctakes/typesystem/type/refsem.ecore" xmlns:type4="http:///org/apache/ctakes/padtermspotter/type.ecore" xmlns:cas="http:///uima/cas.ecore" xmlns:types3="http:///org/montefiore/cri/nlp/culturetests/uima/types.ecore" xmlns:type6="http:///org/apache/ctakes/smokingstatus/i2b2/type.ecore" xmlns:util="http:///org/apache/ctakes/typesystem/type/util.ecore" xmlns:types="http:///org/apache/ctakes/assertion/medfacts/types.ecore" xmlns:type="http:///org/apache/ctakes/constituency/parser/uima/type.ecore" xmlns:tcas="http:///uima/tcas.ecore" xmlns:type2="http:///org/apache/ctakes/coreference/type.ecore" xmlns:types2="http:///org/apache/ctakes/assertion/zoner/types.ecore" xmlns:type7="http:///org/apache/ctakes/smokingstatus/type.ecore" xmlns:syntax="http:///org/apache/ctakes/typesystem/type/syntax.ecore" xmlns:type5="http:///org/apache/ctakes/sideeffect/type.ecore" xmlns:xmi="http://www.omg.org/XMI" xmlns:textspan="http:///org/apache/ctakes/typesystem/type/textspan.ecore" xmlns:assertion="http:///org/apache/ctakes/typesystem/type/temporary/assertion.ecore" xmlns:structured="http:///org/apache/ctakes/typesystem/type/structured.ecore" xmlns:relation="http:///org/apache/ctakes/typesystem/type/relation.ecore" xmlns:textsem="http:///org/apache/ctakes/typesystem/type/textsem.ecore" xmlns:type3="http:///org/apache/ctakes/drugner/type.ecore" xmlns:libsvm="http:///org/apache/ctakes/smokingstatus/type/libsvm.ecore" xmlns:type8="http:///org/apache/ctakes/typesystem/type.ecore" xmi:version="2.0"><cas:NULL xmi:id="0"/><cas:Sofa xmi:id="1" sofaNum="1" sofaID="_InitialView" mimeType="text/plain" sofaString="urine culture mos source/body site clean catch culture results &gt;100,001col/ml escherichia coli final id e.coli amikacin s ampicillin r &gt;=32 &#13;&#10;"/><cas:Sofa xmi:id="13" sofaNum="2" sofaID="UriView" sofaURI="file:/C:/srv/apps/nlp/testdata/tmp.txt"/><tcas:DocumentAnnotation xmi:id="8" sofa="1" begin="0" end="142" language="x-unspecified"/><textspan:Segment xmi:id="20" sofa="1" begin="0" end="142" id="SIMPLE_SEGMENT"/><textspan:Sentence xmi:id="26" sofa="1" begin="0" end="139" sentenceNumber="0"/><syntax:NewlineToken xmi:id="32" sofa="1" begin="140" end="142" tokenNumber="30"/><syntax:WordToken xmi:id="40" sofa="1" begin="0" end="5" tokenNumber="0" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="urine"/><syntax:WordToken xmi:id="52" sofa="1" begin="6" end="13" tokenNumber="1" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="culture"/><syntax:WordToken xmi:id="64" sofa="1" begin="14" end="17" tokenNumber="2" partOfSpeech="NNS" capitalization="0" numPosition="0" canonicalForm="mos"/><syntax:WordToken xmi:id="76" sofa="1" begin="18" end="24" tokenNumber="3" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="source"/><syntax:WordToken xmi:id="96" sofa="1" begin="25" end="29" tokenNumber="5" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="body"/><syntax:WordToken xmi:id="108" sofa="1" begin="30" end="34" tokenNumber="6" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="site"/><syntax:WordToken xmi:id="120" sofa="1" begin="35" end="40" tokenNumber="7" partOfSpeech="JJ" capitalization="0" numPosition="0" canonicalForm="clean"/><syntax:WordToken xmi:id="132" sofa="1" begin="41" end="46" tokenNumber="8" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="catch"/><syntax:WordToken xmi:id="144" sofa="1" begin="47" end="54" tokenNumber="9" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="culture"/><syntax:WordToken xmi:id="156" sofa="1" begin="55" end="62" tokenNumber="10" partOfSpeech="NNS" capitalization="0" numPosition="0" canonicalForm="result"/><syntax:WordToken xmi:id="185" sofa="1" begin="71" end="74" tokenNumber="13" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="col"/><syntax:WordToken xmi:id="205" sofa="1" begin="75" end="77" tokenNumber="15" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="ml"/><syntax:WordToken xmi:id="217" sofa="1" begin="78" end="89" tokenNumber="16" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="escherichia"/><syntax:WordToken xmi:id="229" sofa="1" begin="90" end="94" tokenNumber="17" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="coli"/><syntax:WordToken xmi:id="241" sofa="1" begin="95" end="100" tokenNumber="18" partOfSpeech="JJ" capitalization="0" numPosition="0" canonicalForm="final"/><syntax:WordToken xmi:id="253" sofa="1" begin="101" end="103" tokenNumber="19" partOfSpeech="JJ" capitalization="0" numPosition="0" canonicalForm="id"/><syntax:WordToken xmi:id="265" sofa="1" begin="104" end="105" tokenNumber="20" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="e"/><syntax:WordToken xmi:id="285" sofa="1" begin="106" end="110" tokenNumber="22" partOfSpeech="NNP" capitalization="0" numPosition="0" canonicalForm="coli"/><syntax:WordToken xmi:id="297" sofa="1" begin="111" end="119" tokenNumber="23" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="amikacin"/><syntax:WordToken xmi:id="309" sofa="1" begin="120" end="121" tokenNumber="24" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="s"/><syntax:WordToken xmi:id="321" sofa="1" begin="122" end="132" tokenNumber="25" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="ampicillin"/><syntax:WordToken xmi:id="333" sofa="1" begin="133" end="134" tokenNumber="26" partOfSpeech="VB" capitalization="0" numPosition="0" canonicalForm="r"/><syntax:PunctuationToken xmi:id="88" sofa="1" begin="24" end="25" tokenNumber="4" partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="168" sofa="1" begin="63" end="64" tokenNumber="11" partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="197" sofa="1" begin="74" end="75" tokenNumber="14" partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="277" sofa="1" begin="105" end="106" tokenNumber="21" partOfSpeech="."/><syntax:PunctuationToken xmi:id="345" sofa="1" begin="135" end="136" tokenNumber="27" partOfSpeech="SYM"/><syntax:NumToken xmi:id="176" sofa="1" begin="64" end="71" tokenNumber="12" partOfSpeech="CD" numType="1"/><syntax:NumToken xmi:id="361" sofa="1" begin="137" end="139" tokenNumber="29" partOfSpeech="CD" numType="1"/><syntax:SymbolToken xmi:id="353" sofa="1" begin="136" end="137" tokenNumber="28" partOfSpeech="SYM"/><textsem:RomanNumeralAnnotation xmi:id="370" sofa="1" begin="75" end="77" id="0" typeID="0" discoveryTechnique="0" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:RomanNumeralAnnotation xmi:id="388" sofa="1" begin="101" end="103" id="0" typeID="0" discoveryTechnique="0" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><syntax:NP xmi:id="406" sofa="1" begin="0" end="24" chunkType="NP"/><syntax:NP xmi:id="416" sofa="1" begin="25" end="62" chunkType="NP"/><syntax:NP xmi:id="426" sofa="1" begin="64" end="74" chunkType="NP"/><syntax:NP xmi:id="436" sofa="1" begin="75" end="105" chunkType="NP"/><syntax:NP xmi:id="446" sofa="1" begin="106" end="132" chunkType="NP"/><syntax:NP xmi:id="456" sofa="1" begin="135" end="136" chunkType="NP"/><syntax:NP xmi:id="461" sofa="1" begin="136" end="137" chunkType="NP"/><syntax:NP xmi:id="466" sofa="1" begin="137" end="139" chunkType="NP"/><syntax:O xmi:id="411" sofa="1" begin="24" end="25" chunkType="O"/><syntax:O xmi:id="421" sofa="1" begin="63" end="64" chunkType="O"/><syntax:O xmi:id="431" sofa="1" begin="74" end="75" chunkType="O"/><syntax:O xmi:id="441" sofa="1" begin="105" end="106" chunkType="O"/><syntax:VP xmi:id="451" sofa="1" begin="133" end="134" chunkType="VP"/><textspan:LookupWindowAnnotation xmi:id="471" sofa="1" begin="0" end="24"/><textspan:LookupWindowAnnotation xmi:id="475" sofa="1" begin="25" end="62"/><textspan:LookupWindowAnnotation xmi:id="479" sofa="1" begin="64" end="74"/><textspan:LookupWindowAnnotation xmi:id="483" sofa="1" begin="75" end="105"/><textspan:LookupWindowAnnotation xmi:id="487" sofa="1" begin="106" end="132"/><textspan:LookupWindowAnnotation xmi:id="491" sofa="1" begin="135" end="136"/><textspan:LookupWindowAnnotation xmi:id="495" sofa="1" begin="136" end="137"/><textspan:LookupWindowAnnotation xmi:id="499" sofa="1" begin="137" end="139"/><textsem:SignSymptomMention xmi:id="513" sofa="1" begin="18" end="24" id="0" ontologyConceptArr="503" typeID="3" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:SignSymptomMention xmi:id="795" sofa="1" begin="41" end="46" id="0" ontologyConceptArr="785" typeID="3" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:ProcedureMention xmi:id="585" sofa="1" begin="0" end="13" id="0" ontologyConceptArr="550 564 543 557 571" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:ProcedureMention xmi:id="671" sofa="1" begin="6" end="13" id="0" ontologyConceptArr="627 655 648 613 634 641 620" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:ProcedureMention xmi:id="757" sofa="1" begin="47" end="54" id="0" ontologyConceptArr="713 699 734 720 706 741 727" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:MedicationMention xmi:id="851" sofa="1" begin="78" end="94" id="0" ontologyConceptArr="828" typeID="1" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:MedicationMention xmi:id="907" sofa="1" begin="122" end="132" id="0" ontologyConceptArr="884" typeID="1" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:MedicationMention xmi:id="963" sofa="1" begin="111" end="119" id="0" ontologyConceptArr="940" typeID="1" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><types3:CultureTest xmi:id="993" sofa="1" begin="0" end="142" antibiogramAnalysisProcedure="1049 1066" specimen="1141" bacterialColonySize="1008" uri="http://ric.einstein.yu.edu/im_culture_test#UrineCultureTest__113ca0c0-2c4c-4b9e-9ca5-6f3a6b73bf1e" correspondsTo="http://ric.einstein.yu.edu/terminology#EscherichiaColiDNAACnc" valueOf="http://ric.einstein.yu.edu/terminology#CultureTest" sofaString="urine culture mos source/body site clean catch culture results &gt;100,001col/ml escherichia coli final id e.coli amikacin s ampicillin r &gt;=32 &#13;&#10;" text="EscherichiaColi"/><types3:BacterialColonySize xmi:id="1008" sofa="1" begin="63" end="94" criValue="100,001" arithmeticOperators="1024" criFloatValue="100001.0" unitConcept="1036" uri="http://ric.einstein.yu.edu/im_culture_test#BacterialColonySize__20ea8e04-cf15-4d68-b351-a04c92a322a6" correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules" valueOf="http://ric.einstein.yu.edu/terminology#BacterialColonySize" sofaString="&gt;100,001col/ml escherichia coli" text="FloatRules"/><types3:ArithmeticOperators xmi:id="1024" sofa="1" begin="63" end="64" uri="http://ric.einstein.yu.edu/im_culture_test#Greater__0ec42e0f-63b1-40b2-842f-eb09706b52c1" correspondsTo="http://ric.einstein.yu.edu/im_culture_test#Greater" valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators" sofaString="&gt;" text="Greater"/><types3:ArithmeticOperators xmi:id="1105" sofa="1" begin="135" end="137" uri="http://ric.einstein.yu.edu/terminology#ArithmeticOperators___deaa9082-33ff-4be5-b7c1-f20ee60922e8" correspondsTo="http://ric.einstein.yu.edu/im_culture_test#LessEqual" valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators" sofaString="&gt;=" text="LessEqual"/><types3:UnitConcept xmi:id="1036" sofa="1" begin="71" end="77" uri="http://ric.einstein.yu.edu/im_culture_test#ColPerMl__da5a75df-27c3-49a0-a432-fb24eeb66a96" correspondsTo="http://ric.einstein.yu.edu/im_culture_test#ColPerMl" valueOf="http://ric.einstein.yu.edu/terminology#UnitConcept" sofaString="col/ml" text="ColPerMl"/><types3:AntibiogramAnalysisProcedure xmi:id="1049" sofa="1" begin="111" end="122" antibioticSensitivity="1117" antibodyTiter="0" uri="http://ric.einstein.yu.edu/im_culture_test#types__da56099c-1b7c-46a4-b364-726464b0ae5b" correspondsTo="http://montefiore.org/umls/mth#MIC" valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisProcedure" sofaString="amikacin s " text="AmikacinSusceptibility" ontologyConcept="1061"/><types3:AntibiogramAnalysisProcedure xmi:id="1066" sofa="1" begin="122" end="139" antibioticSensitivity="1129" antibodyTiter="1090 0" uri="http://ric.einstein.yu.edu/im_culture_test#types__6d80da49-29a8-430c-8ae6-871e78659031" correspondsTo="http://montefiore.org/umls/mth#MIC" valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisProcedure" sofaString="ampicillin r &gt;=32" text="AmpicillinSusceptibility" ontologyConcept="1078"/><types3:AntibodyTiter xmi:id="1090" sofa="1" begin="135" end="139" criValue="32" arithmeticOperators="1105" criFloatValue="32.0" uri="http://ric.einstein.yu.edu/im_culture_test#AntibodyTiter__f3242aeb-88fb-417c-8446-b180af943235" correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules" valueOf="http://ric.einstein.yu.edu/terminology#AntibodyTiter" sofaString="&gt;=32" text="FloatRules"/><types3:AntibioticSensitivity xmi:id="1117" sofa="1" begin="120" end="121" uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity__6e7e76c3-3c00-43fb-925c-43b2fb239414" correspondsTo="http://ric.einstein.yu.edu/terminology#TestSensitive" valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSensitivity" sofaString="s" text="TestSensitive"/><types3:AntibioticSensitivity xmi:id="1129" sofa="1" begin="133" end="134" uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity__7e1b2074-e396-447f-95d9-b6eefe6ea730" correspondsTo="http://ric.einstein.yu.edu/terminology#TestResistant" valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSensitivity" sofaString="r" text="TestResistant"/><types3:Specimen xmi:id="1141" sofa="1" begin="0" end="62" specimenSource="1177" biologicalType="1168" uri="http://ric.einstein.yu.edu/im_culture_test#Specimen__fd5bcc82-5ea5-4d73-87e6-c7cc6dc660b7" correspondsTo="http://ric.einstein.yu.edu/terminology#Specimen" valueOf="http://ric.einstein.yu.edu/terminology#Specimen" sofaString="urine culture mos source/body site clean catch culture results" text="Specimen"/><types3:BiologicalType xmi:id="1168" sofa="1" begin="0" end="5" uri="http://ric.einstein.yu.edu/im_culture_test#BiologicalType__bf502c06-043c-4c53-ab79-a3c37972c404" correspondsTo="http://ric.einstein.yu.edu/terminology#Urine" valueOf="http://ric.einstein.yu.edu/terminology#BiologicalType" sofaString="urine" text="Urine"/><types3:SpecimenSource xmi:id="1177" sofa="1" begin="35" end="46" uri="http://ric.einstein.yu.edu/im_culture_test#SpecimenSource__d932f102-e3cf-4022-a7fc-0b1a6695d102" correspondsTo="http://ric.einstein.yu.edu/terminology#CleanCatch" valueOf="http://ric.einstein.yu.edu/terminology#SpecimenSource" sofaString="clean catch" text="CleanCatch"/><types3:OntologyConcept xmi:id="1078" codingScheme="RXNORM" code="C0002680"/><types3:OntologyConcept xmi:id="1061" codingScheme="RXNORM" code="C0002499"/><refsem:OntologyConcept xmi:id="940" codingScheme="RXNORM" code="C0002499"/><refsem:OntologyConcept xmi:id="884" codingScheme="RXNORM" code="C0002680"/><refsem:OntologyConcept xmi:id="828" codingScheme="RXNORM" code="C0014834"/><refsem:UmlsConcept xmi:id="727" codingScheme="SNOMED" code="145414005" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="741" codingScheme="SNOMED" code="252397004" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="706" codingScheme="SNOMED" code="252398009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="720" codingScheme="SNOMED" code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="734" codingScheme="SNOMED" code="270035009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="699" codingScheme="SNOMED" code="61594008" cui="C2242979" tui="T059"/><refsem:UmlsConcept xmi:id="713" codingScheme="SNOMED" code="145422003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="620" codingScheme="SNOMED" code="252398009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="641" codingScheme="SNOMED" code="145414005" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="634" codingScheme="SNOMED" code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="613" codingScheme="SNOMED" code="61594008" cui="C2242979" tui="T059"/><refsem:UmlsConcept xmi:id="648" codingScheme="SNOMED" code="270035009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="655" codingScheme="SNOMED" code="252397004" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="627" codingScheme="SNOMED" code="145422003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="571" codingScheme="SNOMED" code="145543000" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="557" codingScheme="SNOMED" code="144792004" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="543" codingScheme="SNOMED" code="117010004" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="564" codingScheme="SNOMED" code="275885001" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="550" codingScheme="SNOMED" code="168335002" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="785" codingScheme="SNOMED" code="30623001" cui="C0231617" tui="T184"/><refsem:UmlsConcept xmi:id="503" codingScheme="SNOMED" code="260753009" cui="C0449416" tui="T033"/><cas:View sofa="1" members="8 20 26 32 40 52 64 76 96 108 120 132 144 156 185 205 217 229 241 253 265 285 297 309 321 333 88 168 197 277 345 176 361 353 370 388 406 416 426 436 446 456 461 466 411 421 431 441 451 471 475 479 483 487 491 495 499 513 795 585 671 757 851 907 963 993 1008 1024 1105 1036 1049 1066 1090 1117 1129 1141 1168 1177"/><cas:View sofa="13"/></xmi:XMI>





-----Original Message-----
From: Masanz, James J. [mailto:Masanz.James@mayo.edu] 
Sent: Tuesday, July 08, 2014 3:44 PM
To: 'dev@ctakes.apache.org'
Subject: RE: Retrieving CUIs

The attachment didn't come through so if the other email I sent didn't help, please post the xmi somewhere that I can download it from. Thanks.

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 2:14 PM
To: dev@ctakes.apache.org
Subject: RE: Retrieving CUIs

The xmi file is attached. 


-----Original Message-----
From: Masanz, James J. [mailto:Masanz.James@mayo.edu] 
Sent: Tuesday, July 08, 2014 2:54 PM
To: 'dev@ctakes.apache.org'
Subject: RE: Retrieving CUIs

What gets annotated depends on which pipeline you use.
The pipeline mentioned in the User Guide should also annotate diseases/disorders, signs/symptoms, procedures, and anatomical sites. So first would be to check which pipeline you are using.

Or perhaps you do not have the separately downloadable dictionary. To test that, try text that includes the words "knee" and "pain". If those are annotated and other anatomical sites and signs/symptoms are not, you probably don't have the dictionary resources or don't have them on your classpath.

Good things to post to help us help you are:
 - whether you are using CVD or CPE GUI, or a program/script
 - the name of pipeline you are running (are you loading an XML descriptor into CVD or CPE), or the name of the script/program 
 - a sample output file (xcas/xmi) [make sure not to include any PHI in the sample text that you process if you are going to post the output]

-- James

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 1:43 PM
To: dev@ctakes.apache.org
Subject: Retrieving CUIs

Hi there,

I was wondering if there is any way to retrieve CUIs for the tokens of a free text in CTakes without changing the codebase? I am able to retrieve CUIs for only medications  in a text.



Thanks,
Nick



RE: Retrieving CUIs

Posted by "Masanz, James J." <Ma...@mayo.edu>.
In your CAS, I see

<textsem:ProcedureMention xmi:id="585" sofa="1" begin="0" end="13" id="0" ontologyConceptArr="550 564 543 557 571"

Reading the CAS xmi, to see the first element in the array, we look for ID 550, which takes us to 

<refsem:UmlsConcept xmi:id="550" codingScheme="SNOMED" code="168335002" cui="C0430404" tui="T059"/>

So it seems like whatever you are doing to try to read out the CUI is not accessing something correctly.

-- James

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 2:46 PM
To: dev@ctakes.apache.org
Subject: RE: Retrieving CUIs

Sure: 

<?xml version="1.0" encoding="UTF-8"?><xmi:XMI xmlns:refsem="http:///org/apache/ctakes/typesystem/type/refsem.ecore" xmlns:type4="http:///org/apache/ctakes/padtermspotter/type.ecore" xmlns:cas="http:///uima/cas.ecore" xmlns:types3="http:///org/montefiore/cri/nlp/culturetests/uima/types.ecore" xmlns:type6="http:///org/apache/ctakes/smokingstatus/i2b2/type.ecore" xmlns:util="http:///org/apache/ctakes/typesystem/type/util.ecore" xmlns:types="http:///org/apache/ctakes/assertion/medfacts/types.ecore" xmlns:type="http:///org/apache/ctakes/constituency/parser/uima/type.ecore" xmlns:tcas="http:///uima/tcas.ecore" xmlns:type2="http:///org/apache/ctakes/coreference/type.ecore" xmlns:types2="http:///org/apache/ctakes/assertion/zoner/types.ecore" xmlns:type7="http:///org/apache/ctakes/smokingstatus/type.ecore" xmlns:syntax="http:///org/apache/ctakes/typesystem/type/syntax.ecore" xmlns:type5="http:///org/apache/ctakes/sideeffect/type.ecore" xmlns:xmi="http://www.omg.org/XMI" xmlns:textspan="http:///org/apache/ctakes/typesystem/type/textspan.ecore" xmlns:assertion="http:///org/apache/ctakes/typesystem/type/temporary/assertion.ecore" xmlns:structured="http:///org/apache/ctakes/typesystem/type/structured.ecore" xmlns:relation="http:///org/apache/ctakes/typesystem/type/relation.ecore" xmlns:textsem="http:///org/apache/ctakes/typesystem/type/textsem.ecore" xmlns:type3="http:///org/apache/ctakes/drugner/type.ecore" xmlns:libsvm="http:///org/apache/ctakes/smokingstatus/type/libsvm.ecore" xmlns:type8="http:///org/apache/ctakes/typesystem/type.ecore" xmi:version="2.0"><cas:NULL xmi:id="0"/><cas:Sofa xmi:id="1" sofaNum="1" sofaID="_InitialView" mimeType="text/plain" sofaString="urine culture mos source/body site clean catch culture results &gt;100,001col/ml escherichia coli final id e.coli amikacin s ampicillin r &gt;=32 &#13;&#10;"/><cas:Sofa xmi:id="13" sofaNum="2" sofaID="UriView" sofaURI="file:/C:/srv/apps/nlp/testdata/tmp.txt"/><tcas:DocumentAnnotation xmi:id="8" sofa="1" begin="0" end="142" language="x-unspecified"/><textspan:Segment xmi:id="20" sofa="1" begin="0" end="142" id="SIMPLE_SEGMENT"/><textspan:Sentence xmi:id="26" sofa="1" begin="0" end="139" sentenceNumber="0"/><syntax:NewlineToken xmi:id="32" sofa="1" begin="140" end="142" tokenNumber="30"/><syntax:WordToken xmi:id="40" sofa="1" begin="0" end="5" tokenNumber="0" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="urine"/><syntax:WordToken xmi:id="52" sofa="1" begin="6" end="13" tokenNumber="1" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="culture"/><syntax:WordToken xmi:id="64" sofa="1" begin="14" end="17" tokenNumber="2" partOfSpeech="NNS" capitalization="0" numPosition="0" canonicalForm="mos"/><syntax:WordToken xmi:id="76" sofa="1" begin="18" end="24" tokenNumber="3" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="source"/><syntax:WordToken xmi:id="96" sofa="1" begin="25" end="29" tokenNumber="5" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="body"/><syntax:WordToken xmi:id="108" sofa="1" begin="30" end="34" tokenNumber="6" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="site"/><syntax:WordToken xmi:id="120" sofa="1" begin="35" end="40" tokenNumber="7" partOfSpeech="JJ" capitalization="0" numPosition="0" canonicalForm="clean"/><syntax:WordToken xmi:id="132" sofa="1" begin="41" end="46" tokenNumber="8" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="catch"/><syntax:WordToken xmi:id="144" sofa="1" begin="47" end="54" tokenNumber="9" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="culture"/><syntax:WordToken xmi:id="156" sofa="1" begin="55" end="62" tokenNumber="10" partOfSpeech="NNS" capitalization="0" numPosition="0" canonicalForm="result"/><syntax:WordToken xmi:id="185" sofa="1" begin="71" end="74" tokenNumber="13" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="col"/><syntax:WordToken xmi:id="205" sofa="1" begin="75" end="77" tokenNumber="15" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="ml"/><syntax:WordToken xmi:id="217" sofa="1" begin="78" end="89" tokenNumber="16" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="escherichia"/><syntax:WordToken xmi:id="229" sofa="1" begin="90" end="94" tokenNumber="17" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="coli"/><syntax:WordToken xmi:id="241" sofa="1" begin="95" end="100" tokenNumber="18" partOfSpeech="JJ" capitalization="0" numPosition="0" canonicalForm="final"/><syntax:WordToken xmi:id="253" sofa="1" begin="101" end="103" tokenNumber="19" partOfSpeech="JJ" capitalization="0" numPosition="0" canonicalForm="id"/><syntax:WordToken xmi:id="265" sofa="1" begin="104" end="105" tokenNumber="20" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="e"/><syntax:WordToken xmi:id="285" sofa="1" begin="106" end="110" tokenNumber="22" partOfSpeech="NNP" capitalization="0" numPosition="0" canonicalForm="coli"/><syntax:WordToken xmi:id="297" sofa="1" begin="111" end="119" tokenNumber="23" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="amikacin"/><syntax:WordToken xmi:id="309" sofa="1" begin="120" end="121" tokenNumber="24" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="s"/><syntax:WordToken xmi:id="321" sofa="1" begin="122" end="132" tokenNumber="25" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="ampicillin"/><syntax:WordToken xmi:id="333" sofa="1" begin="133" end="134" tokenNumber="26" partOfSpeech="VB" capitalization="0" numPosition="0" canonicalForm="r"/><syntax:PunctuationToken xmi:id="88" sofa="1" begin="24" end="25" tokenNumber="4" partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="168" sofa="1" begin="63" end="64" tokenNumber="11" partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="197" sofa="1" begin="74" end="75" tokenNumber="14" partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="277" sofa="1" begin="105" end="106" tokenNumber="21" partOfSpeech="."/><syntax:PunctuationToken xmi:id="345" sofa="1" begin="135" end="136" tokenNumber="27" partOfSpeech="SYM"/><syntax:NumToken xmi:id="176" sofa="1" begin="64" end="71" tokenNumber="12" partOfSpeech="CD" numType="1"/><syntax:NumToken xmi:id="361" sofa="1" begin="137" end="139" tokenNumber="29" partOfSpeech="CD" numType="1"/><syntax:SymbolToken xmi:id="353" sofa="1" begin="136" end="137" tokenNumber="28" partOfSpeech="SYM"/><textsem:RomanNumeralAnnotation xmi:id="370" sofa="1" begin="75" end="77" id="0" typeID="0" discoveryTechnique="0" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:RomanNumeralAnnotation xmi:id="388" sofa="1" begin="101" end="103" id="0" typeID="0" discoveryTechnique="0" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><syntax:NP xmi:id="406" sofa="1" begin="0" end="24" chunkType="NP"/><syntax:NP xmi:id="416" sofa="1" begin="25" end="62" chunkType="NP"/><syntax:NP xmi:id="426" sofa="1" begin="64" end="74" chunkType="NP"/><syntax:NP xmi:id="436" sofa="1" begin="75" end="105" chunkType="NP"/><syntax:NP xmi:id="446" sofa="1" begin="106" end="132" chunkType="NP"/><syntax:NP xmi:id="456" sofa="1" begin="135" end="136" chunkType="NP"/><syntax:NP xmi:id="461" sofa="1" begin="136" end="137" chunkType="NP"/><syntax:NP xmi:id="466" sofa="1" begin="137" end="139" chunkType="NP"/><syntax:O xmi:id="411" sofa="1" begin="24" end="25" chunkType="O"/><syntax:O xmi:id="421" sofa="1" begin="63" end="64" chunkType="O"/><syntax:O xmi:id="431" sofa="1" begin="74" end="75" chunkType="O"/><syntax:O xmi:id="441" sofa="1" begin="105" end="106" chunkType="O"/><syntax:VP xmi:id="451" sofa="1" begin="133" end="134" chunkType="VP"/><textspan:LookupWindowAnnotation xmi:id="471" sofa="1" begin="0" end="24"/><textspan:LookupWindowAnnotation xmi:id="475" sofa="1" begin="25" end="62"/><textspan:LookupWindowAnnotation xmi:id="479" sofa="1" begin="64" end="74"/><textspan:LookupWindowAnnotation xmi:id="483" sofa="1" begin="75" end="105"/><textspan:LookupWindowAnnotation xmi:id="487" sofa="1" begin="106" end="132"/><textspan:LookupWindowAnnotation xmi:id="491" sofa="1" begin="135" end="136"/><textspan:LookupWindowAnnotation xmi:id="495" sofa="1" begin="136" end="137"/><textspan:LookupWindowAnnotation xmi:id="499" sofa="1" begin="137" end="139"/><textsem:SignSymptomMention xmi:id="513" sofa="1" begin="18" end="24" id="0" ontologyConceptArr="503" typeID="3" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:SignSymptomMention xmi:id="795" sofa="1" begin="41" end="46" id="0" ontologyConceptArr="785" typeID="3" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:ProcedureMention xmi:id="585" sofa="1" begin="0" end="13" id="0" ontologyConceptArr="550 564 543 557 571" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:ProcedureMention xmi:id="671" sofa="1" begin="6" end="13" id="0" ontologyConceptArr="627 655 648 613 634 641 620" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:ProcedureMention xmi:id="757" sofa="1" begin="47" end="54" id="0" ontologyConceptArr="713 699 734 720 706 741 727" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:MedicationMention xmi:id="851" sofa="1" begin="78" end="94" id="0" ontologyConceptArr="828" typeID="1" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:MedicationMention xmi:id="907" sofa="1" begin="122" end="132" id="0" ontologyConceptArr="884" typeID="1" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:MedicationMention xmi:id="963" sofa="1" begin="111" end="119" id="0" ontologyConceptArr="940" typeID="1" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><types3:CultureTest xmi:id="993" sofa="1" begin="0" end="142" antibiogramAnalysisProcedure="1049 1066" specimen="1141" bacterialColonySize="1008" uri="http://ric.einstein.yu.edu/im_culture_test#UrineCultureTest__113ca0c0-2c4c-4b9e-9ca5-6f3a6b73bf1e" correspondsTo="http://ric.einstein.yu.edu/terminology#EscherichiaColiDNAACnc" valueOf="http://ric.einstein.yu.edu/terminology#CultureTest" sofaString="urine culture mos source/body site clean catch culture results &gt;100,001col/ml escherichia coli final id e.coli amikacin s ampicillin r &gt;=32 &#13;&#10;" text="EscherichiaColi"/><types3:BacterialColonySize xmi:id="1008" sofa="1" begin="63" end="94" criValue="100,001" arithmeticOperators="1024" criFloatValue="100001.0" unitConcept="1036" uri="http://ric.einstein.yu.edu/im_culture_test#BacterialColonySize__20ea8e04-cf15-4d68-b351-a04c92a322a6" correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules" valueOf="http://ric.einstein.yu.edu/terminology#BacterialColonySize" sofaString="&gt;100,001col/ml escherichia coli" text="FloatRules"/><types3:ArithmeticOperators xmi:id="1024" sofa="1" begin="63" end="64" uri="http://ric.einstein.yu.edu/im_culture_test#Greater__0ec42e0f-63b1-40b2-842f-eb09706b52c1" correspondsTo="http://ric.einstein.yu.edu/im_culture_test#Greater" valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators" sofaString="&gt;" text="Greater"/><types3:ArithmeticOperators xmi:id="1105" sofa="1" begin="135" end="137" uri="http://ric.einstein.yu.edu/terminology#ArithmeticOperators___deaa9082-33ff-4be5-b7c1-f20ee60922e8" correspondsTo="http://ric.einstein.yu.edu/im_culture_test#LessEqual" valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators" sofaString="&gt;=" text="LessEqual"/><types3:UnitConcept xmi:id="1036" sofa="1" begin="71" end="77" uri="http://ric.einstein.yu.edu/im_culture_test#ColPerMl__da5a75df-27c3-49a0-a432-fb24eeb66a96" correspondsTo="http://ric.einstein.yu.edu/im_culture_test#ColPerMl" valueOf="http://ric.einstein.yu.edu/terminology#UnitConcept" sofaString="col/ml" text="ColPerMl"/><types3:AntibiogramAnalysisProcedure xmi:id="1049" sofa="1" begin="111" end="122" antibioticSensitivity="1117" antibodyTiter="0" uri="http://ric.einstein.yu.edu/im_culture_test#types__da56099c-1b7c-46a4-b364-726464b0ae5b" correspondsTo="http://montefiore.org/umls/mth#MIC" valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisProcedure" sofaString="amikacin s " text="AmikacinSusceptibility" ontologyConcept="1061"/><types3:AntibiogramAnalysisProcedure xmi:id="1066" sofa="1" begin="122" end="139" antibioticSensitivity="1129" antibodyTiter="1090 0" uri="http://ric.einstein.yu.edu/im_culture_test#types__6d80da49-29a8-430c-8ae6-871e78659031" correspondsTo="http://montefiore.org/umls/mth#MIC" valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisProcedure" sofaString="ampicillin r &gt;=32" text="AmpicillinSusceptibility" ontologyConcept="1078"/><types3:AntibodyTiter xmi:id="1090" sofa="1" begin="135" end="139" criValue="32" arithmeticOperators="1105" criFloatValue="32.0" uri="http://ric.einstein.yu.edu/im_culture_test#AntibodyTiter__f3242aeb-88fb-417c-8446-b180af943235" correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules" valueOf="http://ric.einstein.yu.edu/terminology#AntibodyTiter" sofaString="&gt;=32" text="FloatRules"/><types3:AntibioticSensitivity xmi:id="1117" sofa="1" begin="120" end="121" uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity__6e7e76c3-3c00-43fb-925c-43b2fb239414" correspondsTo="http://ric.einstein.yu.edu/terminology#TestSensitive" valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSensitivity" sofaString="s" text="TestSensitive"/><types3:AntibioticSensitivity xmi:id="1129" sofa="1" begin="133" end="134" uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity__7e1b2074-e396-447f-95d9-b6eefe6ea730" correspondsTo="http://ric.einstein.yu.edu/terminology#TestResistant" valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSensitivity" sofaString="r" text="TestResistant"/><types3:Specimen xmi:id="1141" sofa="1" begin="0" end="62" specimenSource="1177" biologicalType="1168" uri="http://ric.einstein.yu.edu/im_culture_test#Specimen__fd5bcc82-5ea5-4d73-87e6-c7cc6dc660b7" correspondsTo="http://ric.einstein.yu.edu/terminology#Specimen" valueOf="http://ric.einstein.yu.edu/terminology#Specimen" sofaString="urine culture mos source/body site clean catch culture results" text="Specimen"/><types3:BiologicalType xmi:id="1168" sofa="1" begin="0" end="5" uri="http://ric.einstein.yu.edu/im_culture_test#BiologicalType__bf502c06-043c-4c53-ab79-a3c37972c404" correspondsTo="http://ric.einstein.yu.edu/terminology#Urine" valueOf="http://ric.einstein.yu.edu/terminology#BiologicalType" sofaString="urine" text="Urine"/><types3:SpecimenSource xmi:id="1177" sofa="1" begin="35" end="46" uri="http://ric.einstein.yu.edu/im_culture_test#SpecimenSource__d932f102-e3cf-4022-a7fc-0b1a6695d102" correspondsTo="http://ric.einstein.yu.edu/terminology#CleanCatch" valueOf="http://ric.einstein.yu.edu/terminology#SpecimenSource" sofaString="clean catch" text="CleanCatch"/><types3:OntologyConcept xmi:id="1078" codingScheme="RXNORM" code="C0002680"/><types3:OntologyConcept xmi:id="1061" codingScheme="RXNORM" code="C0002499"/><refsem:OntologyConcept xmi:id="940" codingScheme="RXNORM" code="C0002499"/><refsem:OntologyConcept xmi:id="884" codingScheme="RXNORM" code="C0002680"/><refsem:OntologyConcept xmi:id="828" codingScheme="RXNORM" code="C0014834"/><refsem:UmlsConcept xmi:id="727" codingScheme="SNOMED" code="145414005" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="741" codingScheme="SNOMED" code="252397004" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="706" codingScheme="SNOMED" code="252398009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="720" codingScheme="SNOMED" code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="734" codingScheme="SNOMED" code="270035009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="699" codingScheme="SNOMED" code="61594008" cui="C2242979" tui="T059"/><refsem:UmlsConcept xmi:id="713" codingScheme="SNOMED" code="145422003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="620" codingScheme="SNOMED" code="252398009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="641" codingScheme="SNOMED" code="145414005" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="634" codingScheme="SNOMED" code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="613" codingScheme="SNOMED" code="61594008" cui="C2242979" tui="T059"/><refsem:UmlsConcept xmi:id="648" codingScheme="SNOMED" code="270035009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="655" codingScheme="SNOMED" code="252397004" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="627" codingScheme="SNOMED" code="145422003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="571" codingScheme="SNOMED" code="145543000" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="557" codingScheme="SNOMED" code="144792004" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="543" codingScheme="SNOMED" code="117010004" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="564" codingScheme="SNOMED" code="275885001" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="550" codingScheme="SNOMED" code="168335002" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="785" codingScheme="SNOMED" code="30623001" cui="C0231617" tui="T184"/><refsem:UmlsConcept xmi:id="503" codingScheme="SNOMED" code="260753009" cui="C0449416" tui="T033"/><cas:View sofa="1" members="8 20 26 32 40 52 64 76 96 108 120 132 144 156 185 205 217 229 241 253 265 285 297 309 321 333 88 168 197 277 345 176 361 353 370 388 406 416 426 436 446 456 461 466 411 421 431 441 451 471 475 479 483 487 491 495 499 513 795 585 671 757 851 907 963 993 1008 1024 1105 1036 1049 1066 1090 1117 1129 1141 1168 1177"/><cas:View sofa="13"/></xmi:XMI>





-----Original Message-----
From: Masanz, James J. [mailto:Masanz.James@mayo.edu] 
Sent: Tuesday, July 08, 2014 3:44 PM
To: 'dev@ctakes.apache.org'
Subject: RE: Retrieving CUIs

The attachment didn't come through so if the other email I sent didn't help, please post the xmi somewhere that I can download it from. Thanks.

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 2:14 PM
To: dev@ctakes.apache.org
Subject: RE: Retrieving CUIs

The xmi file is attached. 


-----Original Message-----
From: Masanz, James J. [mailto:Masanz.James@mayo.edu] 
Sent: Tuesday, July 08, 2014 2:54 PM
To: 'dev@ctakes.apache.org'
Subject: RE: Retrieving CUIs

What gets annotated depends on which pipeline you use.
The pipeline mentioned in the User Guide should also annotate diseases/disorders, signs/symptoms, procedures, and anatomical sites. So first would be to check which pipeline you are using.

Or perhaps you do not have the separately downloadable dictionary. To test that, try text that includes the words "knee" and "pain". If those are annotated and other anatomical sites and signs/symptoms are not, you probably don't have the dictionary resources or don't have them on your classpath.

Good things to post to help us help you are:
 - whether you are using CVD or CPE GUI, or a program/script
 - the name of pipeline you are running (are you loading an XML descriptor into CVD or CPE), or the name of the script/program 
 - a sample output file (xcas/xmi) [make sure not to include any PHI in the sample text that you process if you are going to post the output]

-- James

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 1:43 PM
To: dev@ctakes.apache.org
Subject: Retrieving CUIs

Hi there,

I was wondering if there is any way to retrieve CUIs for the tokens of a free text in CTakes without changing the codebase? I am able to retrieve CUIs for only medications  in a text.



Thanks,
Nick



RE: Retrieving CUIs

Posted by Nick Nikandish <sn...@emerginghealthit.com>.
Sure: 

<?xml version="1.0" encoding="UTF-8"?><xmi:XMI xmlns:refsem="http:///org/apache/ctakes/typesystem/type/refsem.ecore" xmlns:type4="http:///org/apache/ctakes/padtermspotter/type.ecore" xmlns:cas="http:///uima/cas.ecore" xmlns:types3="http:///org/montefiore/cri/nlp/culturetests/uima/types.ecore" xmlns:type6="http:///org/apache/ctakes/smokingstatus/i2b2/type.ecore" xmlns:util="http:///org/apache/ctakes/typesystem/type/util.ecore" xmlns:types="http:///org/apache/ctakes/assertion/medfacts/types.ecore" xmlns:type="http:///org/apache/ctakes/constituency/parser/uima/type.ecore" xmlns:tcas="http:///uima/tcas.ecore" xmlns:type2="http:///org/apache/ctakes/coreference/type.ecore" xmlns:types2="http:///org/apache/ctakes/assertion/zoner/types.ecore" xmlns:type7="http:///org/apache/ctakes/smokingstatus/type.ecore" xmlns:syntax="http:///org/apache/ctakes/typesystem/type/syntax.ecore" xmlns:type5="http:///org/apache/ctakes/sideeffect/type.ecore" xmlns:xmi="http://www.omg.org/XMI" xmlns:textspan="http:///org/apache/ctakes/typesystem/type/textspan.ecore" xmlns:assertion="http:///org/apache/ctakes/typesystem/type/temporary/assertion.ecore" xmlns:structured="http:///org/apache/ctakes/typesystem/type/structured.ecore" xmlns:relation="http:///org/apache/ctakes/typesystem/type/relation.ecore" xmlns:textsem="http:///org/apache/ctakes/typesystem/type/textsem.ecore" xmlns:type3="http:///org/apache/ctakes/drugner/type.ecore" xmlns:libsvm="http:///org/apache/ctakes/smokingstatus/type/libsvm.ecore" xmlns:type8="http:///org/apache/ctakes/typesystem/type.ecore" xmi:version="2.0"><cas:NULL xmi:id="0"/><cas:Sofa xmi:id="1" sofaNum="1" sofaID="_InitialView" mimeType="text/plain" sofaString="urine culture mos source/body site clean catch culture results &gt;100,001col/ml escherichia coli final id e.coli amikacin s ampicillin r &gt;=32 &#13;&#10;"/><cas:Sofa xmi:id="13" sofaNum="2" sofaID="UriView" sofaURI="file:/C:/srv/apps/nlp/testdata/tmp.txt"/><tcas:DocumentAnnotation xmi:id="8" sofa="1" begin="0" end="142" language="x-unspecified"/><textspan:Segment xmi:id="20" sofa="1" begin="0" end="142" id="SIMPLE_SEGMENT"/><textspan:Sentence xmi:id="26" sofa="1" begin="0" end="139" sentenceNumber="0"/><syntax:NewlineToken xmi:id="32" sofa="1" begin="140" end="142" tokenNumber="30"/><syntax:WordToken xmi:id="40" sofa="1" begin="0" end="5" tokenNumber="0" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="urine"/><syntax:WordToken xmi:id="52" sofa="1" begin="6" end="13" tokenNumber="1" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="culture"/><syntax:WordToken xmi:id="64" sofa="1" begin="14" end="17" tokenNumber="2" partOfSpeech="NNS" capitalization="0" numPosition="0" canonicalForm="mos"/><syntax:WordToken xmi:id="76" sofa="1" begin="18" end="24" tokenNumber="3" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="source"/><syntax:WordToken xmi:id="96" sofa="1" begin="25" end="29" tokenNumber="5" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="body"/><syntax:WordToken xmi:id="108" sofa="1" begin="30" end="34" tokenNumber="6" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="site"/><syntax:WordToken xmi:id="120" sofa="1" begin="35" end="40" tokenNumber="7" partOfSpeech="JJ" capitalization="0" numPosition="0" canonicalForm="clean"/><syntax:WordToken xmi:id="132" sofa="1" begin="41" end="46" tokenNumber="8" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="catch"/><syntax:WordToken xmi:id="144" sofa="1" begin="47" end="54" tokenNumber="9" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="culture"/><syntax:WordToken xmi:id="156" sofa="1" begin="55" end="62" tokenNumber="10" partOfSpeech="NNS" capitalization="0" numPosition="0" canonicalForm="result"/><syntax:WordToken xmi:id="185" sofa="1" begin="71" end="74" tokenNumber="13" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="col"/><syntax:WordToken xmi:id="205" sofa="1" begin="75" end="77" tokenNumber="15" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="ml"/><syntax:WordToken xmi:id="217" sofa="1" begin="78" end="89" tokenNumber="16" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="escherichia"/><syntax:WordToken xmi:id="229" sofa="1" begin="90" end="94" tokenNumber="17" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="coli"/><syntax:WordToken xmi:id="241" sofa="1" begin="95" end="100" tokenNumber="18" partOfSpeech="JJ" capitalization="0" numPosition="0" canonicalForm="final"/><syntax:WordToken xmi:id="253" sofa="1" begin="101" end="103" tokenNumber="19" partOfSpeech="JJ" capitalization="0" numPosition="0" canonicalForm="id"/><syntax:WordToken xmi:id="265" sofa="1" begin="104" end="105" tokenNumber="20" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="e"/><syntax:WordToken xmi:id="285" sofa="1" begin="106" end="110" tokenNumber="22" partOfSpeech="NNP" capitalization="0" numPosition="0" canonicalForm="coli"/><syntax:WordToken xmi:id="297" sofa="1" begin="111" end="119" tokenNumber="23" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="amikacin"/><syntax:WordToken xmi:id="309" sofa="1" begin="120" end="121" tokenNumber="24" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="s"/><syntax:WordToken xmi:id="321" sofa="1" begin="122" end="132" tokenNumber="25" partOfSpeech="NN" capitalization="0" numPosition="0" canonicalForm="ampicillin"/><syntax:WordToken xmi:id="333" sofa="1" begin="133" end="134" tokenNumber="26" partOfSpeech="VB" capitalization="0" numPosition="0" canonicalForm="r"/><syntax:PunctuationToken xmi:id="88" sofa="1" begin="24" end="25" tokenNumber="4" partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="168" sofa="1" begin="63" end="64" tokenNumber="11" partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="197" sofa="1" begin="74" end="75" tokenNumber="14" partOfSpeech="SYM"/><syntax:PunctuationToken xmi:id="277" sofa="1" begin="105" end="106" tokenNumber="21" partOfSpeech="."/><syntax:PunctuationToken xmi:id="345" sofa="1" begin="135" end="136" tokenNumber="27" partOfSpeech="SYM"/><syntax:NumToken xmi:id="176" sofa="1" begin="64" end="71" tokenNumber="12" partOfSpeech="CD" numType="1"/><syntax:NumToken xmi:id="361" sofa="1" begin="137" end="139" tokenNumber="29" partOfSpeech="CD" numType="1"/><syntax:SymbolToken xmi:id="353" sofa="1" begin="136" end="137" tokenNumber="28" partOfSpeech="SYM"/><textsem:RomanNumeralAnnotation xmi:id="370" sofa="1" begin="75" end="77" id="0" typeID="0" discoveryTechnique="0" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:RomanNumeralAnnotation xmi:id="388" sofa="1" begin="101" end="103" id="0" typeID="0" discoveryTechnique="0" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><syntax:NP xmi:id="406" sofa="1" begin="0" end="24" chunkType="NP"/><syntax:NP xmi:id="416" sofa="1" begin="25" end="62" chunkType="NP"/><syntax:NP xmi:id="426" sofa="1" begin="64" end="74" chunkType="NP"/><syntax:NP xmi:id="436" sofa="1" begin="75" end="105" chunkType="NP"/><syntax:NP xmi:id="446" sofa="1" begin="106" end="132" chunkType="NP"/><syntax:NP xmi:id="456" sofa="1" begin="135" end="136" chunkType="NP"/><syntax:NP xmi:id="461" sofa="1" begin="136" end="137" chunkType="NP"/><syntax:NP xmi:id="466" sofa="1" begin="137" end="139" chunkType="NP"/><syntax:O xmi:id="411" sofa="1" begin="24" end="25" chunkType="O"/><syntax:O xmi:id="421" sofa="1" begin="63" end="64" chunkType="O"/><syntax:O xmi:id="431" sofa="1" begin="74" end="75" chunkType="O"/><syntax:O xmi:id="441" sofa="1" begin="105" end="106" chunkType="O"/><syntax:VP xmi:id="451" sofa="1" begin="133" end="134" chunkType="VP"/><textspan:LookupWindowAnnotation xmi:id="471" sofa="1" begin="0" end="24"/><textspan:LookupWindowAnnotation xmi:id="475" sofa="1" begin="25" end="62"/><textspan:LookupWindowAnnotation xmi:id="479" sofa="1" begin="64" end="74"/><textspan:LookupWindowAnnotation xmi:id="483" sofa="1" begin="75" end="105"/><textspan:LookupWindowAnnotation xmi:id="487" sofa="1" begin="106" end="132"/><textspan:LookupWindowAnnotation xmi:id="491" sofa="1" begin="135" end="136"/><textspan:LookupWindowAnnotation xmi:id="495" sofa="1" begin="136" end="137"/><textspan:LookupWindowAnnotation xmi:id="499" sofa="1" begin="137" end="139"/><textsem:SignSymptomMention xmi:id="513" sofa="1" begin="18" end="24" id="0" ontologyConceptArr="503" typeID="3" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:SignSymptomMention xmi:id="795" sofa="1" begin="41" end="46" id="0" ontologyConceptArr="785" typeID="3" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:ProcedureMention xmi:id="585" sofa="1" begin="0" end="13" id="0" ontologyConceptArr="550 564 543 557 571" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:ProcedureMention xmi:id="671" sofa="1" begin="6" end="13" id="0" ontologyConceptArr="627 655 648 613 634 641 620" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:ProcedureMention xmi:id="757" sofa="1" begin="47" end="54" id="0" ontologyConceptArr="713 699 734 720 706 741 727" typeID="5" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:MedicationMention xmi:id="851" sofa="1" begin="78" end="94" id="0" ontologyConceptArr="828" typeID="1" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:MedicationMention xmi:id="907" sofa="1" begin="122" end="132" id="0" ontologyConceptArr="884" typeID="1" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><textsem:MedicationMention xmi:id="963" sofa="1" begin="111" end="119" id="0" ontologyConceptArr="940" typeID="1" discoveryTechnique="1" confidence="0.0" polarity="0" uncertainty="0" conditional="false" generic="false" historyOf="0"/><types3:CultureTest xmi:id="993" sofa="1" begin="0" end="142" antibiogramAnalysisProcedure="1049 1066" specimen="1141" bacterialColonySize="1008" uri="http://ric.einstein.yu.edu/im_culture_test#UrineCultureTest__113ca0c0-2c4c-4b9e-9ca5-6f3a6b73bf1e" correspondsTo="http://ric.einstein.yu.edu/terminology#EscherichiaColiDNAACnc" valueOf="http://ric.einstein.yu.edu/terminology#CultureTest" sofaString="urine culture mos source/body site clean catch culture results &gt;100,001col/ml escherichia coli final id e.coli amikacin s ampicillin r &gt;=32 &#13;&#10;" text="EscherichiaColi"/><types3:BacterialColonySize xmi:id="1008" sofa="1" begin="63" end="94" criValue="100,001" arithmeticOperators="1024" criFloatValue="100001.0" unitConcept="1036" uri="http://ric.einstein.yu.edu/im_culture_test#BacterialColonySize__20ea8e04-cf15-4d68-b351-a04c92a322a6" correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules" valueOf="http://ric.einstein.yu.edu/terminology#BacterialColonySize" sofaString="&gt;100,001col/ml escherichia coli" text="FloatRules"/><types3:ArithmeticOperators xmi:id="1024" sofa="1" begin="63" end="64" uri="http://ric.einstein.yu.edu/im_culture_test#Greater__0ec42e0f-63b1-40b2-842f-eb09706b52c1" correspondsTo="http://ric.einstein.yu.edu/im_culture_test#Greater" valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators" sofaString="&gt;" text="Greater"/><types3:ArithmeticOperators xmi:id="1105" sofa="1" begin="135" end="137" uri="http://ric.einstein.yu.edu/terminology#ArithmeticOperators___deaa9082-33ff-4be5-b7c1-f20ee60922e8" correspondsTo="http://ric.einstein.yu.edu/im_culture_test#LessEqual" valueOf="http://ric.einstein.yu.edu/terminology#ArithmeticOperators" sofaString="&gt;=" text="LessEqual"/><types3:UnitConcept xmi:id="1036" sofa="1" begin="71" end="77" uri="http://ric.einstein.yu.edu/im_culture_test#ColPerMl__da5a75df-27c3-49a0-a432-fb24eeb66a96" correspondsTo="http://ric.einstein.yu.edu/im_culture_test#ColPerMl" valueOf="http://ric.einstein.yu.edu/terminology#UnitConcept" sofaString="col/ml" text="ColPerMl"/><types3:AntibiogramAnalysisProcedure xmi:id="1049" sofa="1" begin="111" end="122" antibioticSensitivity="1117" antibodyTiter="0" uri="http://ric.einstein.yu.edu/im_culture_test#types__da56099c-1b7c-46a4-b364-726464b0ae5b" correspondsTo="http://montefiore.org/umls/mth#MIC" valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisProcedure" sofaString="amikacin s " text="AmikacinSusceptibility" ontologyConcept="1061"/><types3:AntibiogramAnalysisProcedure xmi:id="1066" sofa="1" begin="122" end="139" antibioticSensitivity="1129" antibodyTiter="1090 0" uri="http://ric.einstein.yu.edu/im_culture_test#types__6d80da49-29a8-430c-8ae6-871e78659031" correspondsTo="http://montefiore.org/umls/mth#MIC" valueOf="http://ric.einstein.yu.edu/terminology#AntibiogramAnalysisProcedure" sofaString="ampicillin r &gt;=32" text="AmpicillinSusceptibility" ontologyConcept="1078"/><types3:AntibodyTiter xmi:id="1090" sofa="1" begin="135" end="139" criValue="32" arithmeticOperators="1105" criFloatValue="32.0" uri="http://ric.einstein.yu.edu/im_culture_test#AntibodyTiter__f3242aeb-88fb-417c-8446-b180af943235" correspondsTo="http://ric.einstein.yu.edu/terminology#FloatRules" valueOf="http://ric.einstein.yu.edu/terminology#AntibodyTiter" sofaString="&gt;=32" text="FloatRules"/><types3:AntibioticSensitivity xmi:id="1117" sofa="1" begin="120" end="121" uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity__6e7e76c3-3c00-43fb-925c-43b2fb239414" correspondsTo="http://ric.einstein.yu.edu/terminology#TestSensitive" valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSensitivity" sofaString="s" text="TestSensitive"/><types3:AntibioticSensitivity xmi:id="1129" sofa="1" begin="133" end="134" uri="http://ric.einstein.yu.edu/im_culture_test#AntibioticSensitivity__7e1b2074-e396-447f-95d9-b6eefe6ea730" correspondsTo="http://ric.einstein.yu.edu/terminology#TestResistant" valueOf="org.montefiore.cri.nlp.culturetests.uima.types.AntibioticSensitivity" sofaString="r" text="TestResistant"/><types3:Specimen xmi:id="1141" sofa="1" begin="0" end="62" specimenSource="1177" biologicalType="1168" uri="http://ric.einstein.yu.edu/im_culture_test#Specimen__fd5bcc82-5ea5-4d73-87e6-c7cc6dc660b7" correspondsTo="http://ric.einstein.yu.edu/terminology#Specimen" valueOf="http://ric.einstein.yu.edu/terminology#Specimen" sofaString="urine culture mos source/body site clean catch culture results" text="Specimen"/><types3:BiologicalType xmi:id="1168" sofa="1" begin="0" end="5" uri="http://ric.einstein.yu.edu/im_culture_test#BiologicalType__bf502c06-043c-4c53-ab79-a3c37972c404" correspondsTo="http://ric.einstein.yu.edu/terminology#Urine" valueOf="http://ric.einstein.yu.edu/terminology#BiologicalType" sofaString="urine" text="Urine"/><types3:SpecimenSource xmi:id="1177" sofa="1" begin="35" end="46" uri="http://ric.einstein.yu.edu/im_culture_test#SpecimenSource__d932f102-e3cf-4022-a7fc-0b1a6695d102" correspondsTo="http://ric.einstein.yu.edu/terminology#CleanCatch" valueOf="http://ric.einstein.yu.edu/terminology#SpecimenSource" sofaString="clean catch" text="CleanCatch"/><types3:OntologyConcept xmi:id="1078" codingScheme="RXNORM" code="C0002680"/><types3:OntologyConcept xmi:id="1061" codingScheme="RXNORM" code="C0002499"/><refsem:OntologyConcept xmi:id="940" codingScheme="RXNORM" code="C0002499"/><refsem:OntologyConcept xmi:id="884" codingScheme="RXNORM" code="C0002680"/><refsem:OntologyConcept xmi:id="828" codingScheme="RXNORM" code="C0014834"/><refsem:UmlsConcept xmi:id="727" codingScheme="SNOMED" code="145414005" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="741" codingScheme="SNOMED" code="252397004" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="706" codingScheme="SNOMED" code="252398009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="720" codingScheme="SNOMED" code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="734" codingScheme="SNOMED" code="270035009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="699" codingScheme="SNOMED" code="61594008" cui="C2242979" tui="T059"/><refsem:UmlsConcept xmi:id="713" codingScheme="SNOMED" code="145422003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="620" codingScheme="SNOMED" code="252398009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="641" codingScheme="SNOMED" code="145414005" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="634" codingScheme="SNOMED" code="168185003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="613" codingScheme="SNOMED" code="61594008" cui="C2242979" tui="T059"/><refsem:UmlsConcept xmi:id="648" codingScheme="SNOMED" code="270035009" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="655" codingScheme="SNOMED" code="252397004" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="627" codingScheme="SNOMED" code="145422003" cui="C0430400" tui="T059"/><refsem:UmlsConcept xmi:id="571" codingScheme="SNOMED" code="145543000" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="557" codingScheme="SNOMED" code="144792004" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="543" codingScheme="SNOMED" code="117010004" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="564" codingScheme="SNOMED" code="275885001" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="550" codingScheme="SNOMED" code="168335002" cui="C0430404" tui="T059"/><refsem:UmlsConcept xmi:id="785" codingScheme="SNOMED" code="30623001" cui="C0231617" tui="T184"/><refsem:UmlsConcept xmi:id="503" codingScheme="SNOMED" code="260753009" cui="C0449416" tui="T033"/><cas:View sofa="1" members="8 20 26 32 40 52 64 76 96 108 120 132 144 156 185 205 217 229 241 253 265 285 297 309 321 333 88 168 197 277 345 176 361 353 370 388 406 416 426 436 446 456 461 466 411 421 431 441 451 471 475 479 483 487 491 495 499 513 795 585 671 757 851 907 963 993 1008 1024 1105 1036 1049 1066 1090 1117 1129 1141 1168 1177"/><cas:View sofa="13"/></xmi:XMI>





-----Original Message-----
From: Masanz, James J. [mailto:Masanz.James@mayo.edu] 
Sent: Tuesday, July 08, 2014 3:44 PM
To: 'dev@ctakes.apache.org'
Subject: RE: Retrieving CUIs

The attachment didn't come through so if the other email I sent didn't help, please post the xmi somewhere that I can download it from. Thanks.

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 2:14 PM
To: dev@ctakes.apache.org
Subject: RE: Retrieving CUIs

The xmi file is attached. 


-----Original Message-----
From: Masanz, James J. [mailto:Masanz.James@mayo.edu] 
Sent: Tuesday, July 08, 2014 2:54 PM
To: 'dev@ctakes.apache.org'
Subject: RE: Retrieving CUIs

What gets annotated depends on which pipeline you use.
The pipeline mentioned in the User Guide should also annotate diseases/disorders, signs/symptoms, procedures, and anatomical sites. So first would be to check which pipeline you are using.

Or perhaps you do not have the separately downloadable dictionary. To test that, try text that includes the words "knee" and "pain". If those are annotated and other anatomical sites and signs/symptoms are not, you probably don't have the dictionary resources or don't have them on your classpath.

Good things to post to help us help you are:
 - whether you are using CVD or CPE GUI, or a program/script
 - the name of pipeline you are running (are you loading an XML descriptor into CVD or CPE), or the name of the script/program 
 - a sample output file (xcas/xmi) [make sure not to include any PHI in the sample text that you process if you are going to post the output]

-- James

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 1:43 PM
To: dev@ctakes.apache.org
Subject: Retrieving CUIs

Hi there,

I was wondering if there is any way to retrieve CUIs for the tokens of a free text in CTakes without changing the codebase? I am able to retrieve CUIs for only medications  in a text.



Thanks,
Nick



RE: Retrieving CUIs

Posted by "Masanz, James J." <Ma...@mayo.edu>.
The attachment didn't come through so if the other email I sent didn't help, please post the xmi somewhere that I can download it from. Thanks.

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 2:14 PM
To: dev@ctakes.apache.org
Subject: RE: Retrieving CUIs

The xmi file is attached. 


-----Original Message-----
From: Masanz, James J. [mailto:Masanz.James@mayo.edu] 
Sent: Tuesday, July 08, 2014 2:54 PM
To: 'dev@ctakes.apache.org'
Subject: RE: Retrieving CUIs

What gets annotated depends on which pipeline you use.
The pipeline mentioned in the User Guide should also annotate diseases/disorders, signs/symptoms, procedures, and anatomical sites. So first would be to check which pipeline you are using.

Or perhaps you do not have the separately downloadable dictionary. To test that, try text that includes the words "knee" and "pain". If those are annotated and other anatomical sites and signs/symptoms are not, you probably don't have the dictionary resources or don't have them on your classpath.

Good things to post to help us help you are:
 - whether you are using CVD or CPE GUI, or a program/script
 - the name of pipeline you are running (are you loading an XML descriptor into CVD or CPE), or the name of the script/program 
 - a sample output file (xcas/xmi) [make sure not to include any PHI in the sample text that you process if you are going to post the output]

-- James

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 1:43 PM
To: dev@ctakes.apache.org
Subject: Retrieving CUIs

Hi there,

I was wondering if there is any way to retrieve CUIs for the tokens of a free text in CTakes without changing the codebase? I am able to retrieve CUIs for only medications  in a text.



Thanks,
Nick



RE: Retrieving CUIs

Posted by Nick Nikandish <sn...@emerginghealthit.com>.
The xmi file is attached. 


-----Original Message-----
From: Masanz, James J. [mailto:Masanz.James@mayo.edu] 
Sent: Tuesday, July 08, 2014 2:54 PM
To: 'dev@ctakes.apache.org'
Subject: RE: Retrieving CUIs

What gets annotated depends on which pipeline you use.
The pipeline mentioned in the User Guide should also annotate diseases/disorders, signs/symptoms, procedures, and anatomical sites. So first would be to check which pipeline you are using.

Or perhaps you do not have the separately downloadable dictionary. To test that, try text that includes the words "knee" and "pain". If those are annotated and other anatomical sites and signs/symptoms are not, you probably don't have the dictionary resources or don't have them on your classpath.

Good things to post to help us help you are:
 - whether you are using CVD or CPE GUI, or a program/script
 - the name of pipeline you are running (are you loading an XML descriptor into CVD or CPE), or the name of the script/program 
 - a sample output file (xcas/xmi) [make sure not to include any PHI in the sample text that you process if you are going to post the output]

-- James

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 1:43 PM
To: dev@ctakes.apache.org
Subject: Retrieving CUIs

Hi there,

I was wondering if there is any way to retrieve CUIs for the tokens of a free text in CTakes without changing the codebase? I am able to retrieve CUIs for only medications  in a text.



Thanks,
Nick



RE: Retrieving CUIs

Posted by "Masanz, James J." <Ma...@mayo.edu>.
Look for things like 
org.apache.ctakes.typesystem.type.textsem.DiseaseDisorderMention
org.apache.ctakes.typesystem.type.textsem.SignSymptomMention
org.apache.ctakes.typesystem.type.textsem.ProcedureMention


For that sample text, using cTAKES 3.1.1, plus the separately downloaded dictionary, I get 
3  org.apache.ctakes.typesystem.type.textsem.ProcedureMention annotations
2 org.apache.ctakes.typesystem.type.textsem.SignSymptomMention annotations
0 or.apache.ctakes.typesystem.type.textsem.DiseaseDisorderMention annotations

Within each ProcedureMention  there is an ontologyConceptArr array
Within each of those, there are several CUIs, including C0430404 for the ProcedureMention covering begin=0, end=13.

You should be able to loop through all the 
org.apache.ctakes.typesystem.type.textsem.EventMention
and 
org.apache.ctakes.typesystem.type.textsem.EventMention
annotations and look for annotations of either

org.apache.ctakes.typesystem.type.refsem.UmlsConcept
or
org.apache.ctakes.typesystem.type.refsem.OntologyConcept

within  ontologyConceptArr

-- James

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 2:11 PM
To: dev@ctakes.apache.org
Subject: RE: Retrieving CUIs

Thanks James for answering my question.
 I am running "ClinicalPipelineWithUmls"  which is using "AggregatePlaintextUMLSProcessor". 
The text that I am sending is 

"urine culture mos  source/body site clean catch culture results  >100,001col/ml escherichia coli final id  e.coli amikacin s ampicillin r >=32". 

Where my own annotators kick in at the end of the pipeline and annotate the text. The only element that I am missing is  CUI.
I ran the app with "pain" and "knee" and they got annotated with CUIs.  But for  the above mentioned text I only got CUI for the medications. 
I looked at the codebase and in the UmlsToSnomedConsumerImpl, I printed out the CUIs and I got all of them like this:

==>Source C1705919
===>Source C0449416
===>MOS C0072454
===>MOS C0026574
===>MOS C0072454
===>Urine culture C0430404
===>culture C0220814
===>Culture C1706355
===>Culture C2242979
===>Culture C0430400
===>Culture C0010453
===>CULTURE C1706355
===>culture C0010453
===>urine C0042037
===>URINE C0042036
===>urine C0042036
===>URINE C0042037
===>Urine C0042036
===>Site C0205145
===>Site C1515974
===>Site C2825164
===>Body C1551342
===>BODY C1268086
===>Body C1268086
===>Clean C1947930
===>culture C0220814
===>culture C0010453
===>Culture C0010453
===>Culture C2242979
===>CULTURE C1706355
===>Culture C0430400
===>Culture C1706355
===>Catch C0231617
===>Result C1274040
===>Results C1274040
===>Result C2825142
===>result C1274040
===>COL C0009367
===>COL C1704808
===>ESCHERICHIA COLI C0014834
===>Escherichia coli C0014834
===>E C0439108
===>e C0439131
===>E C1553024
===>e C1551074
===>Final C0205088
===>ESCHERICHIA C0014833
===>Escherichia C0014833
===>Id C0020786
===>ID C0020787
===>ID C2986768
===>ID C2349049
===>ID C1522475
===>ID C0021247
===>ID C0600091
===>ML C0439242
===>mL C0439242
===>ML C1708949
===>ml C0439242
===>ML C0024581
===>ML C1706380
===>Ampicillin C0002680
===>AMPICILLIN C0002680
===>Ampicillin C0002680
===>AMPICILLIN C0002680
===>s C0457385
===>S C1551054
===>S C0439118
===>S C2825524
===>s C1704767
===>amikacin C0002499
===>Amikacin C0002499
===>AMIKACIN C0002499
===>AMIKACIN C0002499
===>amikacin C0002499
===>Amikacin C0002499

This is what I need. I can create a map and keep them there and use it but I need to make some changes to the code and I was wondering if there is a way to avoid that?

Thanks,
Nick


-----Original Message-----
From: Masanz, James J. [mailto:Masanz.James@mayo.edu] 
Sent: Tuesday, July 08, 2014 2:54 PM
To: 'dev@ctakes.apache.org'
Subject: RE: Retrieving CUIs

What gets annotated depends on which pipeline you use.
The pipeline mentioned in the User Guide should also annotate diseases/disorders, signs/symptoms, procedures, and anatomical sites. So first would be to check which pipeline you are using.

Or perhaps you do not have the separately downloadable dictionary. To test that, try text that includes the words "knee" and "pain". If those are annotated and other anatomical sites and signs/symptoms are not, you probably don't have the dictionary resources or don't have them on your classpath.

Good things to post to help us help you are:
 - whether you are using CVD or CPE GUI, or a program/script
 - the name of pipeline you are running (are you loading an XML descriptor into CVD or CPE), or the name of the script/program 
 - a sample output file (xcas/xmi) [make sure not to include any PHI in the sample text that you process if you are going to post the output]

-- James

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 1:43 PM
To: dev@ctakes.apache.org
Subject: Retrieving CUIs

Hi there,

I was wondering if there is any way to retrieve CUIs for the tokens of a free text in CTakes without changing the codebase? I am able to retrieve CUIs for only medications  in a text.



Thanks,
Nick



RE: Retrieving CUIs

Posted by Nick Nikandish <sn...@emerginghealthit.com>.
Thanks James for answering my question.
 I am running "ClinicalPipelineWithUmls"  which is using "AggregatePlaintextUMLSProcessor". 
The text that I am sending is 

"urine culture mos  source/body site clean catch culture results  >100,001col/ml escherichia coli final id  e.coli amikacin s ampicillin r >=32". 

Where my own annotators kick in at the end of the pipeline and annotate the text. The only element that I am missing is  CUI.
I ran the app with "pain" and "knee" and they got annotated with CUIs.  But for  the above mentioned text I only got CUI for the medications. 
I looked at the codebase and in the UmlsToSnomedConsumerImpl, I printed out the CUIs and I got all of them like this:

==>Source C1705919
===>Source C0449416
===>MOS C0072454
===>MOS C0026574
===>MOS C0072454
===>Urine culture C0430404
===>culture C0220814
===>Culture C1706355
===>Culture C2242979
===>Culture C0430400
===>Culture C0010453
===>CULTURE C1706355
===>culture C0010453
===>urine C0042037
===>URINE C0042036
===>urine C0042036
===>URINE C0042037
===>Urine C0042036
===>Site C0205145
===>Site C1515974
===>Site C2825164
===>Body C1551342
===>BODY C1268086
===>Body C1268086
===>Clean C1947930
===>culture C0220814
===>culture C0010453
===>Culture C0010453
===>Culture C2242979
===>CULTURE C1706355
===>Culture C0430400
===>Culture C1706355
===>Catch C0231617
===>Result C1274040
===>Results C1274040
===>Result C2825142
===>result C1274040
===>COL C0009367
===>COL C1704808
===>ESCHERICHIA COLI C0014834
===>Escherichia coli C0014834
===>E C0439108
===>e C0439131
===>E C1553024
===>e C1551074
===>Final C0205088
===>ESCHERICHIA C0014833
===>Escherichia C0014833
===>Id C0020786
===>ID C0020787
===>ID C2986768
===>ID C2349049
===>ID C1522475
===>ID C0021247
===>ID C0600091
===>ML C0439242
===>mL C0439242
===>ML C1708949
===>ml C0439242
===>ML C0024581
===>ML C1706380
===>Ampicillin C0002680
===>AMPICILLIN C0002680
===>Ampicillin C0002680
===>AMPICILLIN C0002680
===>s C0457385
===>S C1551054
===>S C0439118
===>S C2825524
===>s C1704767
===>amikacin C0002499
===>Amikacin C0002499
===>AMIKACIN C0002499
===>AMIKACIN C0002499
===>amikacin C0002499
===>Amikacin C0002499

This is what I need. I can create a map and keep them there and use it but I need to make some changes to the code and I was wondering if there is a way to avoid that?

Thanks,
Nick


-----Original Message-----
From: Masanz, James J. [mailto:Masanz.James@mayo.edu] 
Sent: Tuesday, July 08, 2014 2:54 PM
To: 'dev@ctakes.apache.org'
Subject: RE: Retrieving CUIs

What gets annotated depends on which pipeline you use.
The pipeline mentioned in the User Guide should also annotate diseases/disorders, signs/symptoms, procedures, and anatomical sites. So first would be to check which pipeline you are using.

Or perhaps you do not have the separately downloadable dictionary. To test that, try text that includes the words "knee" and "pain". If those are annotated and other anatomical sites and signs/symptoms are not, you probably don't have the dictionary resources or don't have them on your classpath.

Good things to post to help us help you are:
 - whether you are using CVD or CPE GUI, or a program/script
 - the name of pipeline you are running (are you loading an XML descriptor into CVD or CPE), or the name of the script/program 
 - a sample output file (xcas/xmi) [make sure not to include any PHI in the sample text that you process if you are going to post the output]

-- James

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 1:43 PM
To: dev@ctakes.apache.org
Subject: Retrieving CUIs

Hi there,

I was wondering if there is any way to retrieve CUIs for the tokens of a free text in CTakes without changing the codebase? I am able to retrieve CUIs for only medications  in a text.



Thanks,
Nick



RE: Retrieving CUIs

Posted by "Masanz, James J." <Ma...@mayo.edu>.
What gets annotated depends on which pipeline you use.
The pipeline mentioned in the User Guide should also annotate diseases/disorders, signs/symptoms, procedures, and anatomical sites. So first would be to check which pipeline you are using.

Or perhaps you do not have the separately downloadable dictionary. To test that, try text that includes the words "knee" and "pain". If those are annotated and other anatomical sites and signs/symptoms are not, you probably don't have the dictionary resources or don't have them on your classpath.

Good things to post to help us help you are:
 - whether you are using CVD or CPE GUI, or a program/script
 - the name of pipeline you are running (are you loading an XML descriptor into CVD or CPE), or the name of the script/program 
 - a sample output file (xcas/xmi) [make sure not to include any PHI in the sample text that you process if you are going to post the output]

-- James

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 1:43 PM
To: dev@ctakes.apache.org
Subject: Retrieving CUIs

Hi there,

I was wondering if there is any way to retrieve CUIs for the tokens of a free text in CTakes without changing the codebase? I am able to retrieve CUIs for only medications  in a text.



Thanks,
Nick



RE: Retrieving CUIs

Posted by Nick Nikandish <sn...@emerginghealthit.com>.
Sure, I will do that.

Thanks.

-----Original Message-----
From: Pei Chen [mailto:chenpei@apache.org] 
Sent: Tuesday, July 08, 2014 3:49 PM
To: dev@ctakes.apache.org
Subject: Re: Retrieving CUIs

The logic should follow what James described.  I would write a new Annotator (or Consumer ) rather than extend DictionaryLookupAnnotator

i.e. run through the complete pipeline, but at the end, iterate through the IdentifiedAnnotations and get the CUI's from the ontologyConceptArr().




On Tue, Jul 8, 2014 at 3:44 PM, Nick Nikandish < snikandi@emerginghealthit.com> wrote:

> Hi Chen,
>
> I only need CUI. I tried to extend DictoanryLoopkupAnnotator. Is this 
> a writer approach?
>
> Thanks,
> Nick
>
> -----Original Message-----
> From: Pei Chen [mailto:chenpei@apache.org]
> Sent: Tuesday, July 08, 2014 3:42 PM
> To: dev@ctakes.apache.org
> Subject: Re: Retrieving CUIs
>
> Nick,
> It is fairly easy to extend an annotator (either a java class or 
> groovy
> script) to extract just the items for your specific use case.
> Check out the HelloWorldAnnotator and Pipeline from ctakes-examples 
> project.  I can write an example that just outputs the CUI if you 
> like, but I have a hunch that you may also want other attributes such 
> as (negation?, etc.)?
>
>
> On Tue, Jul 8, 2014 at 2:42 PM, Nick Nikandish < 
> snikandi@emerginghealthit.com> wrote:
>
> > Hi there,
> >
> > I was wondering if there is any way to retrieve CUIs for the tokens 
> > of a free text in CTakes without changing the codebase? I am able to 
> > retrieve CUIs for only medications  in a text.
> >
> >
> >
> > Thanks,
> > Nick
> >
> >
> >
>

Re: Retrieving CUIs

Posted by Pei Chen <ch...@apache.org>.
The logic should follow what James described.  I would write a new
Annotator (or Consumer ) rather than extend DictionaryLookupAnnotator

i.e. run through the complete pipeline, but at the end, iterate through the
IdentifiedAnnotations and get the CUI's from the ontologyConceptArr().




On Tue, Jul 8, 2014 at 3:44 PM, Nick Nikandish <
snikandi@emerginghealthit.com> wrote:

> Hi Chen,
>
> I only need CUI. I tried to extend DictoanryLoopkupAnnotator. Is this a
> writer approach?
>
> Thanks,
> Nick
>
> -----Original Message-----
> From: Pei Chen [mailto:chenpei@apache.org]
> Sent: Tuesday, July 08, 2014 3:42 PM
> To: dev@ctakes.apache.org
> Subject: Re: Retrieving CUIs
>
> Nick,
> It is fairly easy to extend an annotator (either a java class or groovy
> script) to extract just the items for your specific use case.
> Check out the HelloWorldAnnotator and Pipeline from ctakes-examples
> project.  I can write an example that just outputs the CUI if you like, but
> I have a hunch that you may also want other attributes such as (negation?,
> etc.)?
>
>
> On Tue, Jul 8, 2014 at 2:42 PM, Nick Nikandish <
> snikandi@emerginghealthit.com> wrote:
>
> > Hi there,
> >
> > I was wondering if there is any way to retrieve CUIs for the tokens of
> > a free text in CTakes without changing the codebase? I am able to
> > retrieve CUIs for only medications  in a text.
> >
> >
> >
> > Thanks,
> > Nick
> >
> >
> >
>

RE: Retrieving CUIs

Posted by Nick Nikandish <sn...@emerginghealthit.com>.
Sorry I meant right approach. 

-----Original Message-----
From: Nick Nikandish [mailto:snikandi@emerginghealthit.com] 
Sent: Tuesday, July 08, 2014 3:44 PM
To: dev@ctakes.apache.org
Subject: RE: Retrieving CUIs

Hi Chen,

I only need CUI. I tried to extend DictoanryLoopkupAnnotator. Is this a writer approach? 

Thanks,
Nick

-----Original Message-----
From: Pei Chen [mailto:chenpei@apache.org]
Sent: Tuesday, July 08, 2014 3:42 PM
To: dev@ctakes.apache.org
Subject: Re: Retrieving CUIs

Nick,
It is fairly easy to extend an annotator (either a java class or groovy
script) to extract just the items for your specific use case.
Check out the HelloWorldAnnotator and Pipeline from ctakes-examples project.  I can write an example that just outputs the CUI if you like, but I have a hunch that you may also want other attributes such as (negation?, etc.)?


On Tue, Jul 8, 2014 at 2:42 PM, Nick Nikandish < snikandi@emerginghealthit.com> wrote:

> Hi there,
>
> I was wondering if there is any way to retrieve CUIs for the tokens of 
> a free text in CTakes without changing the codebase? I am able to 
> retrieve CUIs for only medications  in a text.
>
>
>
> Thanks,
> Nick
>
>
>

RE: Retrieving CUIs

Posted by Nick Nikandish <sn...@emerginghealthit.com>.
Hi Chen,

I only need CUI. I tried to extend DictoanryLoopkupAnnotator. Is this a writer approach? 

Thanks,
Nick

-----Original Message-----
From: Pei Chen [mailto:chenpei@apache.org] 
Sent: Tuesday, July 08, 2014 3:42 PM
To: dev@ctakes.apache.org
Subject: Re: Retrieving CUIs

Nick,
It is fairly easy to extend an annotator (either a java class or groovy
script) to extract just the items for your specific use case.
Check out the HelloWorldAnnotator and Pipeline from ctakes-examples project.  I can write an example that just outputs the CUI if you like, but I have a hunch that you may also want other attributes such as (negation?, etc.)?


On Tue, Jul 8, 2014 at 2:42 PM, Nick Nikandish < snikandi@emerginghealthit.com> wrote:

> Hi there,
>
> I was wondering if there is any way to retrieve CUIs for the tokens of 
> a free text in CTakes without changing the codebase? I am able to 
> retrieve CUIs for only medications  in a text.
>
>
>
> Thanks,
> Nick
>
>
>

Re: Retrieving CUIs

Posted by Pei Chen <ch...@apache.org>.
Nick,
It is fairly easy to extend an annotator (either a java class or groovy
script) to extract just the items for your specific use case.
Check out the HelloWorldAnnotator and Pipeline from ctakes-examples
project.  I can write an example that just outputs the CUI if you like, but
I have a hunch that you may also want other attributes such as (negation?,
etc.)?


On Tue, Jul 8, 2014 at 2:42 PM, Nick Nikandish <
snikandi@emerginghealthit.com> wrote:

> Hi there,
>
> I was wondering if there is any way to retrieve CUIs for the tokens of a
> free text in CTakes without changing the codebase? I am able to retrieve
> CUIs for only medications  in a text.
>
>
>
> Thanks,
> Nick
>
>
>