OHDSI Home | Forums | Wiki | Github

Inconsistency in heart device observation mappings

I recently stumbled into an issue regarding the mappings from ICD10 heart device observations to SNOMED (a query I had used a few years back was no longer returning plausible results). In short, the goal is to accurately query for “patients with a heart device”.

ICD10 has a section, Z95 - presence of cardiac and vascular implants and grafts, which are observations of a device being present at the time of being coded. SNOMED seems to account for these under the umbrella of “device in situ” .

The mappings in ATHENA from the ICD10 group to standard mappings are not consistent. While there seems to be 1:1 mappings available, most are mapped to concept pairs (concept_id + value_as_concept_id) which are difficult to account for. Specifically, the most common pattern is an observation of “History of a procedure” with “Implantation to cardiovascular system” (a concept within procedure domain) stored in value_as_concept_id.

e.g.

Maps to Maps to value
icd_code icd_desc relationship_id domain_id concept_name concept_id concept_class_id relationship_id domain_id concept_name concept_id concept_class_id
Z95 Presence of cardiac and vascular implants and grafts Maps to Observation Past history of procedure 4215685 Context-dependent Maps to value Procedure Implantation to cardiovascular system 1576286 Procedure
Z95.1 Presence of aortocoronary bypass graft Maps to Observation Past history of procedure 4215685 Context-dependent Maps to value Procedure Aortocoronary bypass grafting 35225414 Procedure
Z95.8 Presence of other cardiac and vascular implants and grafts Maps to Observation Past history of procedure 4215685 Context-dependent Maps to value Procedure Implantation to cardiovascular system 1576287 Procedure
Z95.81 Presence of other cardiac implants and grafts Maps to Observation History of cardiovascular surgery 4323360 Context-dependent Maps to value Procedure Implantation to cardiovascular system 1576288 Procedure

Additionally, the handful that are mapped directly to a single SNOMED concept, which I’d argue is the simpler representation, vary on which portion of the SNOMED hierarchy they are mapped to, some within “device in situ” (observations) while others fall under “cardiac finding” (conditions).

Maps to
icd_code icd_desc relationship_id domain_id concept_name concept_id concept_class_id
Z95.0 Presence of cardiac pacemaker Maps to Observation Cardiac implant in situ 45766277 Clinical Finding
Z95.2 Presence of prosthetic heart valve Maps to Condition Transplanted heart valve present 42538119 Clinical Finding
Z95.3 Presence of xenogenic heart valve Maps to Observation Biologic cardiac valve prosthesis in situ 42709971 Clinical Finding
Z95.4 Presence of other heart-valve replacement Maps to Condition Transplanted heart valve present 42538119 Clinical Finding
Z95.5 Presence of coronary angioplasty implant and graft Maps to Condition Coronary artery graft present 42537730 Clinical Finding

Would there be a downside to remapping these ICD10 codes to the concepts within SNOMED’s “device in situ” hierarchy? At a glance most seem accounted for, those that don’t have a direct mapping could map to the more general “cardiac device in situ” which would seemingly make them a lot easier to query for, removing the requirement of looking for procedure concepts in observation.value_as_concept_id as is currently the case.

Hello, @rtmill

Thank you for raising this issue. You are right, mapping for Z95-Z98 codes in ICD10 related vocabularies is not consistent. We are trying to minimize multiple mapping (including mapping to concept pairs concept_id + value_as_concept_id). However, for some concepts, it is impossible to do right now.

For example, Z95 Presence of cardiac and vascular implants and grafts can not be mapped directly to 45766277 703398004 Cardiac implant in situ (because we would miss vascular part of the concept). Also mapping to any vascular graft can not be added because it would ruin ICD10 mapping logic (‘and’ means ‘or’ in ICD names and multiple mapping through relationship_id = ‘Maps to’ always means ‘and’)

We are working on remapping all concepts from the branches Z95 - Z98 to possible direct concepts from SNOMED’s “device in situ” hierarchy.

t