Working With Coding Systems

What are Code Systems

Multiple healthcare code systems were created to digitize healthcare concepts. They help transmit information more efficiently and reduce ambiguity. For instance, a colonoscopy may be coded with code 45378 when performed for diagnostic purposes, and 45379 when some foreign bodies are removed. Coding systems evolved over time and different code systems can express the same real world concepts for different purposes.

A code system is a managed collection of concepts — or, in this case, a clinical data point such as a specific diagnosis, lab test, or procedure. Each concept is represented by at least one internally unique code and a human-readable description. Code systems define which codes (symbols and/or expressions) exist and how they are understood — i.e., code systems have a standard way of coding and describing a clinical data point. Each coding system (E.g., LOINC, SNOMED CT, ICD -10, etc.) has its own unique set of codes to specify which codes can be used in a particular context.

Local Codes

Local code systems are one example of the myriad interoperability challenges faced in healthcare today. Local codes are internal codes used to reference clinical data points; consequently, they do not conform to national/international coding standards, making it difficult for an external user to interpret these codes. These "local" codes can be unique to a facility, healthcare system, or EHR. Internally, local codes work the same as any other standardized coding system; however, the challenge of interpreting local codes arises when organizations share their clinical data with other health organizations.

An example of this could be working with conditions data that comes from an Epic EMR. The industry standard for coding conditions data is typically ICD-10, but the EMR may have its own local coding system for diagnoses that don't map 1:1 to more ubiquitous systems such as ICD -10 or SNOMED CT. When data is shared outside of the Epic ecosystem, it can challenge receiving organizations to effectively interpret and normalize against standardized coding systems.

Challenges with Code Systems

An example of a challenge organizations may face is when their use case requires the use of a specific code system. For instance, they may specifically need ICD-10 codes to assign risk adjustment factor (RAF) scores, but a patient's conditions data may be coded as SNOMED CT, ICD-9, etc. In this case, they will be limited to just conditions listed in ICD-10 codes, or they may need to find a way to link code systems in their data mining process.

Another example is when the code field is available in a local code. For instance, the an organization might be searching for all procedure data related to kidney transplants, and in this case, we would want to search in the code display name or text field to do a text search.


Code System List

Below is a list of some of the most commonly seen and utilized coding systems for each FHIR resource.

Conditions

Code SystemCode System OIDNotes
ICD-10-CM2.16.840.1.113883.6.90
ICD-102.16.840.1.113883.6.3This does NOT have the CM changes and is specifically for international use.
SNOMED-CT2.16.840.1.113883.6.96
CD-9CM-diagnosis-codes2.16.840.1.113883.6.103
Local Codes1.2.840.114350.###Local codes are internal codes used to reference clinical events. Local codes are internal standards unique to an EMR - Hospital System - or Facility.
HL7 CodeSystem Data absent reasonhttp://terminology.hl7.org/CodeSystem/data-absent-reasonAn HL7 Standard - Used to specify why the normally expected content of the data element is missing.

Observations

Code SystemCode System OIDNotes
LOINC2.16.840.1.113883.6.1
SNOMED-CT2.16.840.1.113883.6.96
Local Codes1.2.840.114350.###Local codes are internal codes used to reference clinical events. Local codes are internal standards unique to an EMR - Hospital System - or Facility.
SDOH1.2.840.114350.1.72.1.8Epic coding for social determinants of health (SDOH) values
HL7 CodeSystem Data absent reasonhttp://terminology.hl7.org/CodeSystem/data-absent-reasonAn HL7 Standard - Used to specify why the normally expected content of the data element is missing.

Medication

Code SystemCode System OIDNotes
RxNorm2.16.840.1.113883.6.88RxNorm - National Library of Medicine
SNOMED-CT2.16.840.1.113883.6.96
Local Codes1.2.840.114350.###Local codes are internal codes used to reference clinical events. Local codes are internal standards unique to an EMR - Hospital System - or Facility.
HL7 CodeSystem Data absent reasonhttp://terminology.hl7.org/CodeSystem/data-absent-reasonAn HL7 Standard - Used to specify why the normally expected content of the data element is missing.

Procedures

Code SystemCode System OIDNotes
CPT-42.16.840.1.113883.6.12
SNOMED-CT2.16.840.1.113883.6.96
LOINC2.16.840.1.113883.6.1
HCPCS2.16.840.1.113883.6.14
ICD-9CM-procedure-codes2.16.840.1.113883.6.104
Local Codes1.2.840.114350.###Local codes are internal codes used to reference clinical events. Local codes are internal standards unique to an EMR - Hospital System - or Facility.
HL7 CodeSystem Data absent reasonhttp://terminology.hl7.org/CodeSystem/data-absent-reasonAn HL7 Standard - Used to specify why the normally expected content of the data element is missing.

Allergy Intolerance

Code SystemCode System OIDNotes
RxNorm2.16.840.1.113883.6.88RxNorm - National Library of Medicine
SNOMED-CT2.16.840.1.113883.6.96
NDF-RT (Drug Classification)2.16.840.1.113883.3.26.1.5National Drug File – Reference Terminology - Summary
Local Codes1.2.840.114350.###Local codes are internal codes used to reference clinical events. Local codes are internal standards unique to an EMR - Hospital System - or Facility.
HL7 CodeSystem Data absent reasonhttp://terminology.hl7.org/CodeSystem/data-absent-reasonAn HL7 Standard - Used to specify why the normally expected content of the data element is missing.