SNOMED to ICD-10-CM: Context-dependent mappings

Question: How does the OHDSI vocab team handle context-specific mappings between SNOMED and ICD-10-CM?

Background info: The mappings published by the NLM between those two vocabs include lots of “context-dependent mappings,” like SNOMED code A maps to ICD-10-CM code B, but only if the patient is female and has conditions C, D, or E. In those cases, you can’t really map it without knowing the specific use case.

Even if the “context-dependent” label is stored as a Class in the concept table, how does that shake out in Atlas or Athena, unless you’re paying really close attention? For example–do these context-specific mappings end up buried deep in lists of descendants, where they may (or may not) be inappropriate based on context?

I feel like a user who is really attuned to vocab issues might be able to sort this stuff out, but I’m thinking about the users who just click the “Descendant” box and go on their merry way. Although, perhaps trying to fix user behavior is not a concern for the vocab team. :slight_smile:

Really appreciate any insight on this topic!

1 Like

Amplifying this post. @Dymshyts @Christian_Reich @aostropolets, I’m curious to know the answer to this as I’ve seen the Class but am not sure how to explain how this all shakes out. I just assumed the Vocabularies solved all my problems. :wink:

1 Like

Hi @epfaff
We build the mappings from ICD10CM to SNOMED (opposite to UMLS).
In most of cases, we have equivalent mappings, but if not, additional context is represented by multiple mappings, for example
https://athena.ohdsi.org/search-terms/terms/45552378
here you can see the mapping to two concepts via Maps to (Non-standard to Standard map (OMOP)) relationship:
image
together they make a semantic equivalent of the source “Drug or chemical induced diabetes mellitus with hypoglycemia with coma” concept.

Or we can use additional Maps to Value (Non-standard to value_as_concept map (OMOP)) relationship,
which is the attribute of a ‘Maps to’ related concept.
https://athena.ohdsi.org/search-terms/terms/1576310
image
Maps to value indicates exact procedure the subject has a history of.

Please let me know if it expains enough.

Hope they really do:)

This is super helpful @Dymshyts!

I think @epfaff’s question is upstream. So the mappings exist and preserve this detail… but if they’re context dependent, how does one know which map to use? E.g. Wouldn’t the context-dependency be kind of a priori to the ETL specification? (Maybe I am missing somthing)

We just don’t have context dependant mapping as UMLS has,
one of the reason we can avoid it, is the opposite direction of mapping.
So if a concept is mapped to something, it’s always like that.

Hi Dmytry,

Hope you are well. I just wanted to run something past you with regards to the related topic above. We are using ICD10 coding structure for diagnosis and I wanted to understand what the mapped concept code should be for iCD10 non standard code of Z08.1 (Follow-up examination after radiotherapy for malignant neoplasm). If I use the non standard to standard map this would be ‘History of event’ but if I used non-standard to value_as_concept map this would be ‘Radiotherapy’ . Both of which don’t really correlate to the icd10 code as ‘Radiotherapy’ is a procedure and Z08.1 is an observation.

Hope this makes sense

Many thanks
Helen

I’ll jump in and reply since I’m here :slight_smile:

When there is a “history of” event, we do not know the date the event occurred. Per the CDM v5.4 specifications, the data need to be put in the Observation table since the Observation.observation_date is defined as “The date of when the Observation was obtained”. The other clinical event tables (Condition Occurrence, Measurement, etc.) identifies the date the event occurred. This is a small, but important distinction since the OMOP CDM was built for longitudinal research. We need to know what happened and when it happened. The “history of” concepts are good for helping exclude certain clinical events from cohorts, but otherwise not very useful since we don’t know the date the person experienced the event.

When mapping your source data to the OMOP CDM, you put the data into the domain of the standard concept_id. In your example this is the Observation table. And the value_as_concept_id concept_id goes to the Observation.value_as_concept_id field. The Book of OHDSI has a good example.

1 Like

Hi Melanie, thanks for the response. Quick question regarding:


Am I correct in thinking then that the standard concept would be
OMOP5165859 (History of Event) and therefore would sit in the Observation table as it has a Domain of Observation, and the value_concept_id would be the Non-standard to value_as_concept map
1287742003 (Radiotherapy)?

Correct. Just be sure to use the concept_id for each of those since codes are not unique.

Great , thank you.

On a similar note, where I have a non standard concept (again ICD10) that maps to more than 1 standard Snomed concept, should I flow both concept_id’s into 2 unique rows?
Example:

Many thanks

Yes, please.

1 Like