Resolving Issues with Deprecated Concepts in Vocabulary Updates

Hello OHDSI Community,

I work for IOMED, and we have encountered an issue related to vocabulary versions.

It has been a couple of years since we last updated our vocabulary version (v5.0 28-JAN-22), and recently, with the newest version (V5.0_30-AUG-24) we discovered that numerous concept_ids are deprecated without a designated replacement.

The final step in our update process involves replacing deprecated concepts with their replacements across various OMOP CDM tables (e.g., condition_occurrence_concept_id, drug_concept_id, measurement_concept_id, etc.).To perform this replacement, we use the relationship_id = 'Concept replaces' relationship.

This update works, but upon review, we found that there are still concept_id that remain deprecated and lack a replacement. Thanks to this comment we find that exists another relations that we can used.

But despite considering this new relationships still exists concept_id deprecated without replacement.

One concept_id for example is 73906 - Open wound of wrist with tendon involvement, that has been deprecated, but has no relation of: ‘Concept same_as to’, ‘Concept alt_to to’, ‘Concept poss_eq to’, ‘Concept was_a to’ to a related standard concept.

In this scenario is correct to use another relationship like Maps to o Is a? Is there any hierarchy of relation from the more restrictive to the least. Eg: Concept replaces, Concept poss_eq from, … Is a. ?

We work with multiple OMOP instances, each containing millions of rows pending review and we are seeking guidance on how to address this issue without manually reviewing each concept_id.

Any suggestions or recommendations to solve this process would be greatly appreciated. Thank you!

2 Likes

@Luis_Leon:

Welcome to the family.

Yeah, SNOMED does that. They deprecate concepts, and sometimes they don’t give you a replacement. The reason could be multiple: they split it into two, they found it wrongly defined, we don’t know. It doesn’t happen that often, but since SNOMED is gigantic you will find those cases regularly, and the longer you wait with the upgrade the more likely it becomes.

We don’t fix SNOMED. We take it as is (with the exception of assigning our domains, which often is slightly different from how they see things). So, if there is no “concept replaced by” relationship there is not much we can offer.

However, if you are coming from source concepts (ICD10 for example) you should be fine. We do fix those mappings. If they used to be mapped to a SNOMED that is now obsolete and no replacement is given we will find the replacement.

Is that your situation? Or do you do de-novo SNOMED mappings? Do you have an example?

2 Likes

First of all, sorry for the delayed response. With the recent update, we have been resolving some unexpected incidents until now.

Regarding your question, our ETL considers the international source code (such as ICD10), so this is not exactly our problem.

Instead, some concept id from other vocabularies, like RxNorm, have been deprecated without replacement, we found in the documentation that is no longer standard because is an ingredient Vocab. RxNorm · OHDSI/Vocabulary-v5.0 Wiki · GitHub

concept_id concept_name domain_id vocabulary_id concept_class_id
42899447 insulin, pork Drug RxNorm Ingredient

Additionally, at IOMED, we process clinical notes with NLP, and we identified concept_id that we later insert in our omop. In this case, there is no source code, instead, we need to update our NLP process to find the new correct concept id

And example of this is

concept_id concept_name domain_id vocabulary_id concept_class_id
4137662 FIGO Stage Observation SNOMED Attribute

We found another concept id with the same name but it belongs to a different vocabulary, NAACCR. Since we work with SNOMED, we need to the make some adjustments to our process in this case.

Finally we found this documentation Vocab. SNOMED · OHDSI/Vocabulary-v5.0 Wiki · GitHub and we see that exists a hierarchy between the relationship. This is very useful for use because we can find an alternative concepts that we didn’t find using only ‘Concept replaces’