Inactivation of the outdated 'end-stage renal disease' concepts to align with Chronic Kidney Disease staging

Briefing Note Purpose

The proposed change addresses an issue in SNOMED CT related to Chronic Kidney Disease (CKD) staging. The classification of CKD has evolved since the 2002 publication of the Glomerular filtration rate-based staging system.

The problem stems from the following two concepts and their subconcepts.

  • 46177005 |End-stage renal disease (disorder)|: Existed in SNOMED CT since 2002, originating from older READ codes derived from ICD-9, predating formal CKD staging.

  • 433146000 |Chronic kidney disease stage 5 (disorder)|: The final stage of CKD, added in 2008.

Both concepts indicate the need for renal replacement therapies (dialysis or transplant). Having both codes creates potential for inconsistencies in data analysis. To ensure the alignment of SNOMED CT with current clinical practice, the proposed solution is to consolidate the concept “End-stage renal disease” and its 15 subconcepts with “Chronic kidney disease stage 5” through the inactivation of the former. The proposal has been consulted with key stakeholders and subsequently finalized incorporating their valuable feedback.

Date created 26 November 2025
Action For Information Only
Status Open
Disposition For Information Only
Feedback by N/A

Aligning with Chronic Kidney Disease staging_ Inactivation of outdated ‘end-stage renal disease’ concepts v1.0.pdf (237.2 KB)

I’m assuming that the multiple statements within this note to the effect that codes currently bearing the “end stage renal disease” terming are to be made inactive and “replaced by” either existing or newly created codes bearing the “CKD 5” moniker instead … means that the semantic historical association between the two will be of flavour REPLACED_BY rather than, for example, SAME_AS or POSSIBILY_EQUIVALENT_TO? If that is indeed to be the case, it could usefully be said a bit more explicitly.

With regards to the final “Impact to content users” section, it should perhaps be noted that although an ECL query expressed only in terms of the newer active CKD codes but with the {{ +HISTORY_MOD }} filter appended to it will indeed return patients irrespective of whether they were actually coded to that newer code or to older “end stage renal failure” codings … the reverse is not true: where an existing search for patients is expressed in terms of only the older codes, this query will not also return those patients coded to a newer CKD variant coding even if the {{ +HISTORY+MOD }} filter is applied.

For example, even though back in 2021:

268543007|Cancer cervix - screening done (finding)| (made inactive)
REPLACED_BY
1148678002|Screening for malignant neoplasm of cervix done (situation)| (active)

…and so now

<<1148678002 {{ +HISTORY_MOD }}

..returns all three of:

148379005 i Ca cervix - screening done
268543007 i Cancer cervix - screening done
1148678002 Screening for malignant neoplasm of cervix done

…a similar modification of an existing query expressed in terms of the older inactive codes, such as:

<<268543007|Cancer cervix - screening done (finding)|{{ +HISTORY_MOD }}

…will not include e.g. 1148678002|Screening for malignant neoplasm of cervix done (situation)| in their response.

As currently implemented and specified, ECLs history supplement provides only a partial mitigation to the problem of reporting over historical data after codes become inactive.