OHDSI Home | Forums | Wiki | Github

Concept tables work in progress? How to get on the list for new release?

My general question is that if the concept tables are still work in progress? I assume many of them are. Specifically, I am looking at the concept_relationship table for ‘cross walking’ between vocabularies. The only cross walking I can find is 2000+ entries between LOINC and CPT. Is there plan to add other cross walk such as ICD9 - ICD10, ICD10 - SNOMED?
How do we users get update when there is new release on any of the concept tables?

select concept_id_1, domain_id, vocabulary_id, concept_name, concept_id_2 from concept_relationship , concept where concept_id_1 = concept_id and relationship_id = ‘LOINC - CPT4 eq’

FYI: relationship_id = relationship_id ‘maps’ was my first instinct to query, but it does not serve the crosswalk between vocabularies, but similar to another relationship_id ‘concept replaces’ from my understanding --for deprecated concepts. Can someone clarify the difference?

@yulingjiang:

There are tons of crosswalks in the Vocabularies. But the point is not to just accumulate random crosswalks, but instead create mappings between non-standard (=source) and standard Concepts as described here. So, there is no point in ICD9-ICD10 (which really is ICD9CM-ICD10CM) crosswalks, both contain exclusively source concepts. There are tons of ICD10CM-SNOMED mappings.

The relationship_id is called “Maps to”. However, it also contains mappings within vocabularies from deprecated or source concepts to standard ones. However, there are plenty of other relationship_ids creating equivalents between concepts from different vocabularies (ATC - RxNorm eq, Source - RxNorm eq etc.). But again, their purpose is to support automatic building of Maps to relationships.

For updates sign up here. Click on Watch. Hope this helps.

@yulingjiang:

If you are coming to the 2017 OHDSI Symposium, feel free to sign up for the CDM and Vocabulary Tutorial sessions. You’ll learn it all.

Thank you! They look like great tutorials, exactly what I need. Has the registration opened yet?

Thanks for the answer in detail. Excuse my basic questions, I am looking forward to the tutorial to learn more. My query or “Maps to” didn’t return the ICD10CM-SNOMED mappings, or anything when I exclude the ‘self mapping’ of Standard concept and the deprecated concepts. Did I not get it right? Do you have a query or some example returns of the ICD10CM-SNOMED mapping?

select concept_id_1, concept_id, domain_id, vocabulary_id, concept_name, concept_id_2 from concept_relationship r, concept c where concept_id_1 = concept_id and relationship_id = ‘Maps to’ and concept_id_1 <> concept_id_2
and concept_id_1 not in (select concept_id from concept where invalid_reason is not null)
and concept_id_2 not in (select concept_id from concept where invalid_reason is null);

@yulingjiang:

Will open any minute now.

Here is the query to get ICD10CM to SNOMED mapping:

select c1.concept_id as c1_id, c1.concept_name as c1_name, c1.vocabulary_id as c1_vocab, c1.domain_id as c1_domain, c1.concept_class_id as c1_class,
  c2.concept_id as c2_id, c2.concept_name as c2_name, c2.vocabulary_id as c2_vocab, c2.standard_concept, c2.concept_class_id as c2_class
from concept c1
join concept_relationship r on r.concept_id_1=c1.concept_id and r.invalid_reason is null and r.relationship_id='Maps to'
join concept c2 on c2.concept_id=r.concept_id_2
where c1.vocabulary_id='ICD10CM';

@Christian_Reich
Thanks! I will keep an eye on the registration.
I could not get any return with your query either. Also tried modifying query to look backward (where c2.vocabulary_id = ‘SNOMED’), still nothing. There are multiple entries in concept for both ‘ICD10CM’ and ‘SNOMED’, but can’t find their mapping through concept_relationship. Did I miss some important point here?

@yulingjiang:

When you downloaded the vocabularies, did you click ICD10CM? I know it’s a silly question, but that is the most common version. Because I tested the query before copying it in here.

@Christian_Reich:
Not silly questions at all. That was exactly first thing I wanted to check when there were no returns. I remember checking ‘ICD10CM’ when submitting request 2 months ago, not quite sure about ‘SNOMED’. So I queried my concept table for both ‘ICD10CM’ and ‘SNOMED’, there are entries for both. This should mean I had downloaded both vocabularies. But would it be different for the concept_relationship table?

select * from concept where vocabulary_id=‘ICD10CM’;

select * from concept where vocabulary_id = ‘SNOMED’;

In the meanwhile, I am requesting the concept tables again to make sure both vocabularies are checked.

t