Coding

A code from a standardized medical terminology system, equivalent to FHIR's Coding datatype. Contains a code value, the system it belongs to, and display text. Supports SNOMED-CT, LOINC, ICD-10/11, ATC, RxNorm, CPT, and other international and national coding systems.

Overview

Coding represents a single concept from a medical terminology or classification system. It is the fundamental building block for encoding clinical concepts in a standardized, interoperable way. Each Coding includes the code value, the terminology system that defines it, an optional version, and human-readable display text. This entity aligns with the FHIR Coding datatype for healthcare interoperability.

Key Concepts

Coding Structure

Each Coding contains:

FieldPurposeExample
codeMachine-readable identifier"38341003"
systemTerminology that defines the code"SNOMED-CT"
versionSpecific version of the terminology"20230901"
displayHuman-readable term"Hypertension"
userSelectedWhether user explicitly chose this codetrue

Terminology Systems

Clinical Terminologies

  • SNOMED-CT - Comprehensive clinical terminology for diagnoses, procedures, findings
  • LOINC - Laboratory and clinical observation identifiers
  • ICD-10 / ICD-11 - International disease classification for diagnoses
  • CIM-10-FR - French adaptation of ICD-10

Medication Terminologies

  • ATC - Anatomical Therapeutic Chemical classification (WHO)
  • RxNorm - US drug terminology with ingredients, strengths, forms
  • NDC - National Drug Code (US product identifiers)

Procedure Terminologies

  • CPT - Current Procedural Terminology (US procedures/services)
  • CCAM - Classification Commune des Actes Médicaux (French procedures)
  • NABM - Nomenclature des Actes de Biologie Médicale (French lab acts)
  • NGAP - Nomenclature Générale des Actes Professionnels (French professional acts)

Vaccine Terminologies

  • CVX - CDC vaccine administered codes

Version Importance

The version field is critical because:

  • Code meanings can change between versions
  • New codes are added, some deprecated
  • Hierarchies and relationships evolve
  • Regulatory requirements may specify versions

User Selection Flag

The userSelected boolean indicates:

  • true - A clinician explicitly chose this code
  • false - System inferred, defaulted, or auto-populated
  • Important for clinical decision support and quality reporting

Calculated System URL

The systemUrl field computes the canonical FHIR URI:

Use Cases

Diagnosis Coding

When recording a diagnosis:

  1. Search terminology by display text or code
  2. Select appropriate code from results
  3. Set userSelected: true for clinician-chosen codes
  4. Include version for temporal consistency
  5. Store in diagnosis record

Laboratory Order Coding

When ordering lab tests:

  1. Use LOINC codes for test identification
  2. Map to local lab system codes if needed
  3. Include display text for result reports
  4. Version ensures consistent interpretation

Medication Coding

When prescribing medications:

  1. Use RxNorm for US systems, ATC for international
  2. Encode ingredient, strength, and form
  3. Map to NDC for dispensing
  4. Cross-reference for drug interactions

Procedure Coding

For billing and documentation:

  1. Use CPT (US) or CCAM (France) for procedures
  2. Include modifier codes as needed
  3. Validate against payer requirements
  4. Document in encounter record

FHIR Interoperability

When exchanging data:

  1. Use canonical system URIs
  2. Include version when available
  3. Provide display text for human readers
  4. Validate codes against terminology servers

Related Entities

EntityRelationshipDescription
DiagnosisUsed byDiagnosis records encoding conditions
PrescriptionUsed byMedication orders with drug codes
LaboratoryTestUsed byLab tests with LOINC codes
EncounterUsed byVisit types and reason codes

Calculated Fields

FieldTypeDescription
systemUrlstringCanonical FHIR URI for the terminology system

Enums

system

ValueFull NamePurpose
SNOMED-CTSystematized Nomenclature of Medicine - Clinical TermsComprehensive clinical terminology for diagnoses, findings, procedures
LOINCLogical Observation Identifiers Names and CodesLaboratory tests and clinical observations
ICD-10International Classification of Diseases, 10th RevisionDisease classification for diagnosis coding and statistics
ICD-11International Classification of Diseases, 11th RevisionLatest WHO disease classification
CIM-10-FRClassification Internationale des Maladies (French ICD-10)French adaptation of ICD-10
ATCAnatomical Therapeutic Chemical ClassificationWHO drug classification by therapeutic use
RxNormRxNormUS standardized drug nomenclature
CCAMClassification Commune des Actes MédicauxFrench medical procedure classification
NABMNomenclature des Actes de Biologie MédicaleFrench laboratory act nomenclature
NGAPNomenclature Générale des Actes ProfessionnelsFrench professional act nomenclature
CPTCurrent Procedural TerminologyUS medical procedure and service codes
CVXCDC Vaccine Administered CodesUS vaccine identification codes
NDCNational Drug CodeUS drug product identifiers
customCustom terminologyInstitution-specific or trial-specific codes
6 properties
Schema

Properties

PropertyTypeModeDescriptionRequired
codestring
stored

The actual code value from the terminology system - the machine-readable identifier that uniquely represents the concept within its system namespace

Example: "38341003"

Required
systemstring
stored

The standardized medical terminology or classification system that defines and governs this code

Values: SNOMED-CT, LOINC, ICD-10, ICD-11, CIM-10-FR, ATC, RxNorm, CCAM, NABM, NGAP, CPT, CVX, NDC, custom

Example: "SNOMED-CT"

Required
versionstring
stored

Version identifier of the terminology system in use - critical for ensuring temporal consistency as code meanings and hierarchies evolve over time

Example: "http://snomed.info/sct/900000000000207008/version/20230901"

Optional
displaystring
stored

Human-readable text representation of the code - the preferred term or label as defined by the terminology system, used for display in user interfaces

Example: "Hypertension"

Optional
userSelectedboolean
stored

Indicates whether this code was explicitly chosen by a human user (true) versus being system-inferred, defaulted, or auto-populated (false or absent) - critical for validating clinical intent in decision support and quality reporting

Example: true

Optional
systemUrlstring
calculated

The canonical FHIR URI for the terminology system - computed from the system property to provide standardized system identifiers for FHIR resource interchange and validation

Optional

Examples

Example 1

{
  "@type": "Coding",
  "code": "38341003",
  "system": "SNOMED-CT",
  "version": "http://snomed.info/sct/900000000000207008/version/20230901",
  "display": "Hypertension",
  "userSelected": true,
  "_comment": "systemUrl: http://snomed.info/sct"
}

Example 2

{
  "@type": "Coding",
  "code": "2345-7",
  "system": "LOINC",
  "version": "2.74",
  "display": "Glucose [Mass/volume] in Serum or Plasma",
  "userSelected": false,
  "_comment": "systemUrl: http://loinc.org"
}

Example 3

{
  "@type": "Coding",
  "code": "E11.9",
  "system": "ICD-10",
  "version": "2024",
  "display": "Type 2 diabetes mellitus without complications",
  "userSelected": true,
  "_comment": "systemUrl: http://hl7.org/fhir/sid/icd-10"
}

Example 4

{
  "@type": "Coding",
  "code": "C09AA05",
  "system": "ATC",
  "version": "2024",
  "display": "ramipril",
  "userSelected": false,
  "_comment": "systemUrl: http://www.whocc.no/atc"
}

Example 5

{
  "@type": "Coding",
  "code": "197361",
  "system": "RxNorm",
  "version": "20240101",
  "display": "Lisinopril 10 MG Oral Tablet",
  "userSelected": true,
  "_comment": "systemUrl: http://www.nlm.nih.gov/research/umls/rxnorm"
}

Example 6

{
  "@type": "Coding",
  "code": "YYYY043",
  "system": "CCAM",
  "version": "v72.0",
  "display": "Pose d'un cathéter veineux central par voie transcutanée",
  "_comment": "systemUrl: http://terminology.hl7.org/CodeSystem/fr-ccam"
}

Example 7

{
  "@type": "Coding",
  "code": "208",
  "system": "CVX",
  "version": "20231108",
  "display": "SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose",
  "userSelected": false,
  "_comment": "systemUrl: http://hl7.org/fhir/sid/cvx"
}

Example 8

{
  "@type": "Coding",
  "code": "CUSTOM-DX-001",
  "system": "custom",
  "display": "Institution-specific diagnostic code for clinical trial protocol XYZ",
  "userSelected": true,
  "_comment": "systemUrl: custom system URIs are institution-defined"
}