AeHIN Medical Certificate of Cause of Death (MCCoD) Implementation Guide
0.1.0 - Draft for AeHIN Member Review Asia

AeHIN Medical Certificate of Cause of Death (MCCoD) Implementation Guide - Published by Asia eHealth Information Network (AeHIN). See the Directory of published versions

Frame A: Cause of Death (Mandatory)

Frame A is the mandatory section of every MCCoD document. It captures the complete cause of death chain, the underlying cause of death, and other significant conditions contributing to death. No MCCoD document is conformant without a complete and valid Frame A.

Structure Overview

Frame A is represented as a single Composition.section with LOINC code 79378-6 (Cause of death). It contains references to three types of FHIR Condition resources, each with a distinct profile:

WHO MCCoD Form Element FHIR Profile Cardinality in Section Identifies By
Line a — Immediate cause of death MCCoDCauseOfDeathCondition 1..1 extension[linePosition] = #a
Line b — Antecedent cause MCCoDCauseOfDeathCondition 0..1 extension[linePosition] = #b
Line c — Antecedent cause MCCoDCauseOfDeathCondition 0..1 extension[linePosition] = #c
Line d — Antecedent cause MCCoDCauseOfDeathCondition 0..1 extension[linePosition] = #d
Underlying cause of death MCCoDUnderlyingCauseOfDeath 1..1 category = #underlying-cause-of-death
Part 2 — Contributing conditions MCCoDContributingCondition 0..* category = #contributing-condition

Part 1 — The Causal Chain (Lines a–d)

The causal chain represents the sequence of conditions that led to death, from the most immediate (line a) to the most remote antecedent (lines b, c, d). Each line is a separate instance of MCCoDCauseOfDeathCondition, identified by the mccod-cause-of-death-line-position extension.

Mandatory Elements on Each Condition

  • extension[linePosition] (1..1): The line position code (#a, #b, #c, or #d). Required on every instance.
  • code.text (1..1): The cause of death as written by the certifying practitioner. Always required, even when a coded value is also provided. This preserves the original clinical language.
  • clinicalStatus (1..1): Fixed to #inactive (the patient is deceased).
  • verificationStatus (1..1): Fixed to #confirmed (certified by the practitioner on the death certificate).
  • subject (1..1): Reference to the deceased Patient.

Optional Elements

  • code.coding (0..*): Coded representation of the cause. When present, should use ICD-10 or ICD-11 system URIs. See Terminology for the declared system URIs. Binding is extensible to mccod-cause-of-death-codes.
  • extension[onsetToDeathInterval] (0..1): Approximate interval from onset of this condition to death, as a free-text string (e.g. "2 hours", "3 weeks"). Corresponds to LOINC 69440-6 (Disease onset to death interval). Represented as string, not Duration, because clinical estimates are inherently imprecise.
  • recorder (0..1): The certifying practitioner.

Causal Chain Ordering Rules

The ordering of lines in the causal chain is enforced by error-level invariants on MCCoDComposition:

  • Line a (immediate cause) SHALL always be present — enforced by invariant mccod-comp-line-a-required.
  • If line c is present, line b SHALL also be present — enforced by invariant mccod-comp-line-b-chain.
  • If line d is present, line c SHALL also be present — enforced by invariant mccod-comp-line-c-chain.

Note: The ordering rule does not require that line b be present whenever line a is present. A death certificate with only line a (immediate cause) and no antecedent chain is valid when the certifying practitioner determines no further antecedent cause applies.

Underlying Cause of Death

The underlying cause of death is defined by WHO as: "(a) the disease or injury which initiated the train of morbid events leading directly to death, or (b) the circumstances of the accident or violence which produced the fatal injury." It is the primary basis for mortality statistics.

The underlying cause is represented as a separate mandatory MCCoDUnderlyingCauseOfDeath Condition resource. It is distinct from and independent of the causal chain entries (lines a–d). Exactly one instance SHALL be present in every MCCoD document — enforced by invariant mccod-comp-ucod-required.

DORIS and ICD-11

When the WHO DORIS tool is used for ICD-11 mortality coding, the underlying cause selected by DORIS may differ from any condition explicitly listed on lines a–d. This occurs when DORIS applies a selection or modification rule — for example, the linkage rule, the specificity rule, or the duration rule — that identifies a more appropriate underlying cause from the full clinical picture on the certificate.

This scenario is explicitly supported: the MCCoDUnderlyingCauseOfDeath profile is designed to hold a condition not present on any line of the causal chain. The mccod-doris-derived boolean extension SHALL be present on every instance:

  • dorisDerived = true: The underlying cause was selected by the DORIS tool. The code.coding SHOULD use the ICD-11 MMS system URI (http://id.who.int/icd/release/11/mms).
  • dorisDerived = false: The underlying cause was selected by manual ICD-10 or ICD-11 mortality coding rules, or by the certifying practitioner directly.

Part 2 — Contributing Conditions

Frame A Part 2 captures other significant conditions that contributed to the death of the patient but were not part of the direct causal chain in Part 1. These are comorbidities or concurrent conditions noted by the certifying practitioner.

Each contributing condition is a separate instance of MCCoDContributingCondition, identified by category = #contributing-condition. Zero or more instances are permitted.

The WHO MCCoD form notes that time intervals can be included in brackets after each contributing condition (e.g. "Hypertension (15 years)"). This is captured by the mccod-onset-to-death-interval string extension, consistent with the causal chain entries.

Cause-of-Death Coding Guidance

Text is Always Required

Condition.code.text is required on all three Condition profiles (MCCoDCauseOfDeathCondition, MCCoDUnderlyingCauseOfDeath, MCCoDContributingCondition). This requirement is enforced by error-level invariants (mccod-cod-text-required, mccod-ucod-text-required, mccod-contrib-text-required).

Text must be present even when an ICD code is also provided. This preserves the original clinical language of the certifying practitioner, supports countries without electronic coding capability, and enables audit of coding accuracy.

ICD Coding

When providing coded cause-of-death values, use the appropriate ICD system URI:

ICD Version System URI
ICD-10 (WHO reference) http://hl7.org/fhir/sid/icd-10
ICD-10-CM (US clinical modification) http://hl7.org/fhir/sid/icd-10-cm
ICD-11 MMS http://id.who.int/icd/release/11/mms
SNOMED CT http://snomed.info/sct

National ICD variants (e.g. ICD-10-AM used in Australia and New Zealand) are also permitted — member countries should declare the system URI for their national variant in their national implementation guide.

Invariants Summary

Invariant ID Severity Rule Defined On
mccod-comp-line-a-required Error Frame A SHALL contain exactly one Condition with linePosition = a MCCoDComposition
mccod-comp-line-b-chain Error If line c present, line b SHALL be present MCCoDComposition
mccod-comp-line-c-chain Error If line d present, line c SHALL be present MCCoDComposition
mccod-comp-ucod-required Error Frame A SHALL contain exactly one MCCoDUnderlyingCauseOfDeath MCCoDComposition
mccod-cod-text-required Error Cause of death text SHALL always be present MCCoDCauseOfDeathCondition
mccod-cod-line-position-required Error Line position extension SHALL be present MCCoDCauseOfDeathCondition
mccod-ucod-text-required Error Underlying cause text SHALL always be present MCCoDUnderlyingCauseOfDeath
mccod-ucod-doris-flag-required Error dorisDerived extension SHALL be present MCCoDUnderlyingCauseOfDeath
mccod-ucod-icd11-when-doris Warning When dorisDerived = true, ICD-11 MMS SHOULD be used for coding MCCoDUnderlyingCauseOfDeath
mccod-contrib-text-required Error Contributing condition text SHALL always be present MCCoDContributingCondition

Example

See the Examples page for a complete worked example demonstrating Frame A with a two-line causal chain (myocardial infarction due to coronary artery disease), an underlying cause selected by ICD-10 mortality coding rules (dorisDerived = false), and a contributing condition (hypertension).