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

Bangladesh Core FHIR Implementation Guide - Published by Ministry of Health and Family Welfare. See the Directory of published versions

Logical Model: MCCoD Frame A Logical Model — Cause of Death ( Experimental )

Official URL: http://mccod.w3datanet.com/fhir/StructureDefinition/mccod-frame-a-model Version: 0.1.0
Draft as of 2026-05-21 Computable Name: MCCoDFrameAModel

Copyright/Legal: Copyright 2026 AeHIN. Licensed under CC0-1.0.

Logical model representing the data elements of Frame A (Medical Data, Parts 1 and 2) of the WHO Medical Certificate of Cause of Death (MCCoD).

Frame A is MANDATORY in its entirety. At minimum, the immediate cause of death (line a) and the underlying cause of death MUST be present. Lines b, c, and d are required if the preceding line is present and a further antecedent cause exists. The underlying cause of death is captured as a separate mandatory element and may differ from any of lines a–d, consistent with WHO DORIS methodology for ICD-11.

This model is derived from:

  • WHO International Form of Medical Certificate of Cause of Death
  • openEHR-EHR-EVALUATION.death_summary.v0 (CKM archetype)
  • WHO SMART Guidelines L2 DAK data dictionary pattern

Usages:

  • This Logical Model is not used by any profiles in this Implementation Guide

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. mccod-frame-a-model 0..* Base MCCoD Frame A Logical Model — Cause of Death
... causeOfDeathChain 1..1 BackboneElement Cause of Death Chain (Frame A Part 1)
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... lineA 1..1 BackboneElement Line a — Immediate Cause of Death
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineB 0..1 BackboneElement Line b — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineC 0..1 BackboneElement Line c — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineD 0..1 BackboneElement Line d — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
... underlyingCauseOfDeath 1..1 BackboneElement Underlying Cause of Death
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... causeText 1..1 string Underlying cause description (text)
.... causeCode 0..1 CodeableConcept Underlying cause code (ICD-10 or ICD-11)
.... dorisDerived 0..1 boolean Derived by DORIS tool
... otherSignificantConditions 0..* BackboneElement Other Significant Conditions (Frame A Part 2)
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... conditionText 1..1 string Condition description (text)
.... conditionCode 0..1 CodeableConcept Condition code (ICD-10 or ICD-11)
.... timeInterval 0..1 string Time interval

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Base

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. mccod-frame-a-model 0..* Base MCCoD Frame A Logical Model — Cause of Death
... causeOfDeathChain 1..1 BackboneElement Cause of Death Chain (Frame A Part 1)
.... lineA 1..1 BackboneElement Line a — Immediate Cause of Death
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineB 0..1 BackboneElement Line b — Antecedent Cause
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineC 0..1 BackboneElement Line c — Antecedent Cause
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineD 0..1 BackboneElement Line d — Antecedent Cause
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
... underlyingCauseOfDeath 1..1 BackboneElement Underlying Cause of Death
.... causeText 1..1 string Underlying cause description (text)
.... causeCode 0..1 CodeableConcept Underlying cause code (ICD-10 or ICD-11)
.... dorisDerived 0..1 boolean Derived by DORIS tool
... otherSignificantConditions 0..* BackboneElement Other Significant Conditions (Frame A Part 2)
.... conditionText 1..1 string Condition description (text)
.... conditionCode 0..1 CodeableConcept Condition code (ICD-10 or ICD-11)
.... timeInterval 0..1 string Time interval

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. mccod-frame-a-model 0..* Base MCCoD Frame A Logical Model — Cause of Death
... causeOfDeathChain 1..1 BackboneElement Cause of Death Chain (Frame A Part 1)
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... lineA 1..1 BackboneElement Line a — Immediate Cause of Death
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineB 0..1 BackboneElement Line b — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineC 0..1 BackboneElement Line c — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineD 0..1 BackboneElement Line d — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
... underlyingCauseOfDeath 1..1 BackboneElement Underlying Cause of Death
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... causeText 1..1 string Underlying cause description (text)
.... causeCode 0..1 CodeableConcept Underlying cause code (ICD-10 or ICD-11)
.... dorisDerived 0..1 boolean Derived by DORIS tool
... otherSignificantConditions 0..* BackboneElement Other Significant Conditions (Frame A Part 2)
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... conditionText 1..1 string Condition description (text)
.... conditionCode 0..1 CodeableConcept Condition code (ICD-10 or ICD-11)
.... timeInterval 0..1 string Time interval

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Base

Summary

Mandatory: 0 element(9 nested mandatory elements)

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. mccod-frame-a-model 0..* Base MCCoD Frame A Logical Model — Cause of Death
... causeOfDeathChain 1..1 BackboneElement Cause of Death Chain (Frame A Part 1)
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... lineA 1..1 BackboneElement Line a — Immediate Cause of Death
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineB 0..1 BackboneElement Line b — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineC 0..1 BackboneElement Line c — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineD 0..1 BackboneElement Line d — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
... underlyingCauseOfDeath 1..1 BackboneElement Underlying Cause of Death
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... causeText 1..1 string Underlying cause description (text)
.... causeCode 0..1 CodeableConcept Underlying cause code (ICD-10 or ICD-11)
.... dorisDerived 0..1 boolean Derived by DORIS tool
... otherSignificantConditions 0..* BackboneElement Other Significant Conditions (Frame A Part 2)
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... conditionText 1..1 string Condition description (text)
.... conditionCode 0..1 CodeableConcept Condition code (ICD-10 or ICD-11)
.... timeInterval 0..1 string Time interval

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

Differential View

This structure is derived from Base

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. mccod-frame-a-model 0..* Base MCCoD Frame A Logical Model — Cause of Death
... causeOfDeathChain 1..1 BackboneElement Cause of Death Chain (Frame A Part 1)
.... lineA 1..1 BackboneElement Line a — Immediate Cause of Death
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineB 0..1 BackboneElement Line b — Antecedent Cause
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineC 0..1 BackboneElement Line c — Antecedent Cause
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineD 0..1 BackboneElement Line d — Antecedent Cause
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
... underlyingCauseOfDeath 1..1 BackboneElement Underlying Cause of Death
.... causeText 1..1 string Underlying cause description (text)
.... causeCode 0..1 CodeableConcept Underlying cause code (ICD-10 or ICD-11)
.... dorisDerived 0..1 boolean Derived by DORIS tool
... otherSignificantConditions 0..* BackboneElement Other Significant Conditions (Frame A Part 2)
.... conditionText 1..1 string Condition description (text)
.... conditionCode 0..1 CodeableConcept Condition code (ICD-10 or ICD-11)
.... timeInterval 0..1 string Time interval

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. mccod-frame-a-model 0..* Base MCCoD Frame A Logical Model — Cause of Death
... causeOfDeathChain 1..1 BackboneElement Cause of Death Chain (Frame A Part 1)
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... lineA 1..1 BackboneElement Line a — Immediate Cause of Death
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineB 0..1 BackboneElement Line b — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineC 0..1 BackboneElement Line c — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
.... lineD 0..1 BackboneElement Line d — Antecedent Cause
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... causeText 1..1 string Cause description (text)
..... causeCode 0..1 CodeableConcept Cause code (ICD-10 or ICD-11)
..... onsetToDeathInterval 0..1 string Approximate interval from onset to death
... underlyingCauseOfDeath 1..1 BackboneElement Underlying Cause of Death
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... causeText 1..1 string Underlying cause description (text)
.... causeCode 0..1 CodeableConcept Underlying cause code (ICD-10 or ICD-11)
.... dorisDerived 0..1 boolean Derived by DORIS tool
... otherSignificantConditions 0..* BackboneElement Other Significant Conditions (Frame A Part 2)
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... conditionText 1..1 string Condition description (text)
.... conditionCode 0..1 CodeableConcept Condition code (ICD-10 or ICD-11)
.... timeInterval 0..1 string Time interval

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Base

Summary

Mandatory: 0 element(9 nested mandatory elements)

 

Other representations of profile: CSV, Excel