Hi Akram,

The first thing that I'll mention is that there are a lot of updates to the 
ctakes Dictionary builder in the unreleased version 5.0, so I am going to talk 
about its use.  https://github.com/apache/ctakes

>  1. Combining SNOMED and RxNorm in Dictionary Creation:
> I extracted data from umls-2023AA-full and RxNorm_full. After utilizing NLM 
> Metamorphosys to install UMLS, the conversion of SNOMED from umls-2023AA-full 
> into RRF files was successfully accomplished.
- For clarity, are you stating that you created RRF files for snomed from 
umls-2023AA_full and separate RRF files from RxNorm_full sources ?  If so, are 
you sure that UMLS 2023AA_full doesn't contain all of the RxNorm information 
that you need?

> I can only select one "UMLS Installation" source, limiting me to either 
> SNOMED or RxNorm.
- This is correct.  Normally a dictionary is built from RRF files created using 
metamorphosys on a single source.
- There are two possible clobberings to combine dictionaries from disparate 
sources:

  1.  Concatenate the source RRF files from both sources.  You should only need 
to do this with the MRCONSO RRF files.  Then select the directory containing 
the concatenated RRF (and other RRF files) as the umls source for the 
dictionary creator gui.
  2.   Build 2 ctakes dictionaries, one from each source.  Then concatenate all 
"INSERT" lines into one dictionary file.

- A cleaner method for your situation is to create one ctakes dictionary for 
snomed and a separate ctakes dictionary for rxnorm.  Then create a dictionary 
descriptor file for multiple dictionaries.  Tim Miller has a great example of 
one here:  
https://github.com/tmills/ctakes-docker/blob/master/ctakes-as-pipeline/MultipleDictionaryLookupSpecExample.xml
- The multiple dictionary approach is more flexible, but try not to use 
multiple dictionaries with a lot of overlap.

> 2. Error Message During Dictionary Build:
> Log Message: user lacks privilege or object not found: MED in statement 
> [insert into MED-RT (CUI,MED-RT)  values (?,?)]
- I think that vocabularies containing a dash in the name such as "MED-RT" were 
problematic in older versions of the dictionary creator.  It should be ok with 
v.5
- The problem stemmed from SQL not allowing dash characters in table names 
without special treatment.  ctakes gets around it by converting the dash 
character to an underscore.

Sean

________________________________
From: Akram <as...@yahoo.com.INVALID>
Sent: Saturday, August 5, 2023 11:34 AM
To: dev@ctakes.apache.org <dev@ctakes.apache.org>
Subject: Building 2023AA Snomed RxNorm dictionary fails [EXTERNAL]

* External Email - Caution *

Hi All

I've been working on creating a dictionary for the 2023AA UMLS, specifically 
incorporating SNOMED and RxNorm. However, I've encountered two main challenges 
that I'm hoping to get assistance with:

1. Combining SNOMED and RxNorm in Dictionary Creation:
   To initiate the process, I extracted data from umls-2023AA-full and 
RxNorm_full. After utilizing NLM Metamorphosys to install UMLS, the conversion 
of SNOMED from umls-2023AA-full into RRF files was successfully accomplished. 
However, when I proceeded to employ cTAKES Dictionary Creator for transforming 
UMLS SNOMED and RxNorm into a singular dictionary, I encountered an issue. The 
challenge lies in the fact that I can only select one "UMLS Installation" 
source, limiting me to either SNOMED or RxNorm. Is there a viable solution that 
would enable me to effectively incorporate both SNOMED and RxNorm into the 
dictionary generation process?

2. Error Message During Dictionary Build:
   Following the selection of the NLM Metamorphosys output folder as the "UMLS 
Installation" source and checking all relevant boxes for Vocabulary and 
Semantic Type, I clicked on "Build Dictionary". Unfortunately, this action 
resulted in an error message being displayed. I'm seeking guidance on how to 
address and resolve this error in order to successfully complete the dictionary 
creation process.

Error Message: Dictionary ctakesdictionary could not be built in F:\cTAKES
Log Message: user lacks privilege or object not found: MED in statement [insert 
into MED-RT (CUI,MED-RT)  values (?,?)]

I truly appreciate any assistance that can be provided in overcoming these 
challenges.

Thank you very much.

[Inline image]

[Inline image]

Reply via email to