Vital Records Death Reporting FHIR Implementation Guide
1.2.0 - STU 2 Ballot

This page is part of the Vital Records Mortality and Morbidity Reporting FHIR IG (v1.2.0: STU 2 Ballot 1) based on FHIR R4. The current version which supercedes this version is 2.0.0. For a full list of available versions, see the Directory of published versions

Resource Profile: Death Certificate

Defining URL:http://hl7.org/fhir/us/vrdr/StructureDefinition/VRDR-Death-Certificate
Version:1.2.0
Name:DeathCertificate
Title:VRDR Death Certificate
Status:Draft as of 2020-05-09
Definition:

The Death Certificate profile is the body of the death certificate document. It builds upon the FHIR Composition resource.

Publisher:Health Level Seven International
Source Resource:XML / JSON / Turtle

The official URL for this profile is:

http://hl7.org/fhir/us/vrdr/StructureDefinition/VRDR-Death-Certificate

Formal Views of Profile Content

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

This structure is derived from Composition

This structure is derived from Composition

NameFlagsCard.TypeDescription & Constraintsdoco
.. Composition 0..*CompositionA set of resources composed into a single coherent clinical statement with clinical attestation
... status 1..1codestatus
Binding: CompositionStatus (required)
... type 1..1CodeableConcepttype
Fixed Value: As shown
.... coding1..1CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 64297-5
..... display1..1stringRepresentation defined by the system
Fixed Value: Death certificate
... subject 1..1Reference(VRDR Decedent)subject
... attester 1..1BackboneElementattester
.... mode 1..1codemode
Fixed Value: legal
.... time 1..1dateTimetime
.... party 1..1Reference(VRDR Certifier)party
... event 1..1BackboneElementevent
.... code 1..1CodeableConceptcode
Fixed Value: As shown
..... coding1..1CodingCode defined by a terminology system
Fixed Value: (complex)
...... system1..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 103693007
...... display1..1stringRepresentation defined by the system
Fixed Value: Diagnostic procedure (procedure)
.... detail 1..1Reference(VRDR Death Certification)detail

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Composition 0..*CompositionA set of resources composed into a single coherent clinical statement with clinical attestation
... id Σ0..1stringLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..1IdentifierVersion-independent identifier for the Composition
... status ?!Σ1..1codestatus
Binding: CompositionStatus (required)
... type Σ1..1CodeableConcepttype
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.


Fixed Value: As shown
.... id0..0stringUnique id for inter-element referencing
.... extension0..0ExtensionAdditional content defined by implementations
.... coding1..1CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..0stringUnique id for inter-element referencing
..... extension0..0ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... version0..0stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 64297-5
..... display1..1stringRepresentation defined by the system
Fixed Value: Death certificate
..... userSelected0..0booleanIf this coding was chosen directly by the user
.... text0..0stringPlain text representation of the concept
... category Σ0..*CodeableConceptCategorization of Composition
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.


... subject Σ1..1Reference(VRDR Decedent)subject
... encounter Σ0..1Reference(Encounter)Context of the Composition
... date Σ1..1dateTimedate
... author Σ1..*Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization)Who and/or what authored the composition
... title Σ1..1stringHuman Readable name/title
... confidentiality Σ0..1codeAs defined by affinity domain
Binding: v3.ConfidentialityClassification (2014-03-26) (required): Codes specifying the level of confidentiality of the composition.

... attester 1..1BackboneElementattester
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... mode 1..1codemode
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.


Fixed Value: legal
.... time 1..1dateTimetime
.... party 1..1Reference(VRDR Certifier)party
... custodian Σ0..1Reference(Organization)Organization which maintains the composition
... relatesTo 0..*BackboneElementRelationships to other compositions/documents
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code 1..1codereplaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.

.... target[x] 1..1Target of the relationship
..... targetIdentifierIdentifier
..... targetReferenceReference(Composition)
... event Σ1..1BackboneElementevent
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1CodeableConceptcode
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.



Fixed Value: As shown
..... id0..0stringUnique id for inter-element referencing
..... extension0..0ExtensionAdditional content defined by implementations
..... coding1..1CodingCode defined by a terminology system
Fixed Value: (complex)
...... id0..0stringUnique id for inter-element referencing
...... extension0..0ExtensionAdditional content defined by implementations
...... system1..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
...... version0..0stringVersion of the system - if relevant
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 103693007
...... display1..1stringRepresentation defined by the system
Fixed Value: Diagnostic procedure (procedure)
...... userSelected0..0booleanIf this coding was chosen directly by the user
..... text0..0stringPlain text representation of the concept
.... period Σ0..1PeriodThe period covered by the documentation
.... detail Σ1..1Reference(VRDR Death Certification)detail
... section I0..*BackboneElementComposition is broken into sections
cmp-1: A section must contain at least one of text, entries, or sub-sections
cmp-2: A section can only have an emptyReason if it is empty
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... title 0..1stringLabel for section (e.g. for ToC)
.... code 0..1CodeableConceptClassification of section (recommended)
Binding: DocumentSectionCodes (example): Classification of a section of a composition/document.

.... author 0..*Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization)Who and/or what authored the section
.... focus 0..1Reference(Resource)Who/what the section is about, when it is not about the subject of composition
.... text I0..1NarrativeText summary of the section, for human interpretation
.... mode 0..1codeworking | snapshot | changes
Binding: ListMode (required): The processing mode that applies to this section.

.... orderedBy 0..1CodeableConceptOrder of section entries
Binding: ListOrderCodes (preferred): What order applies to the items in the entry.

.... entry I0..*Reference(Resource)A reference to data that supports this section
.... emptyReason I0..1CodeableConceptWhy the section is empty
Binding: ListEmptyReasons (preferred): If a section is empty, why it is empty.

.... section I0..*See section (Composition)Nested Section

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Composition 0..*CompositionA set of resources composed into a single coherent clinical statement with clinical attestation

doco Documentation for this format

This structure is derived from Composition

Differential View

This structure is derived from Composition

NameFlagsCard.TypeDescription & Constraintsdoco
.. Composition 0..*CompositionA set of resources composed into a single coherent clinical statement with clinical attestation
... status 1..1codestatus
Binding: CompositionStatus (required)
... type 1..1CodeableConcepttype
Fixed Value: As shown
.... coding1..1CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 64297-5
..... display1..1stringRepresentation defined by the system
Fixed Value: Death certificate
... subject 1..1Reference(VRDR Decedent)subject
... attester 1..1BackboneElementattester
.... mode 1..1codemode
Fixed Value: legal
.... time 1..1dateTimetime
.... party 1..1Reference(VRDR Certifier)party
... event 1..1BackboneElementevent
.... code 1..1CodeableConceptcode
Fixed Value: As shown
..... coding1..1CodingCode defined by a terminology system
Fixed Value: (complex)
...... system1..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 103693007
...... display1..1stringRepresentation defined by the system
Fixed Value: Diagnostic procedure (procedure)
.... detail 1..1Reference(VRDR Death Certification)detail

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Composition 0..*CompositionA set of resources composed into a single coherent clinical statement with clinical attestation
... id Σ0..1stringLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..1IdentifierVersion-independent identifier for the Composition
... status ?!Σ1..1codestatus
Binding: CompositionStatus (required)
... type Σ1..1CodeableConcepttype
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.


Fixed Value: As shown
.... id0..0stringUnique id for inter-element referencing
.... extension0..0ExtensionAdditional content defined by implementations
.... coding1..1CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..0stringUnique id for inter-element referencing
..... extension0..0ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... version0..0stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 64297-5
..... display1..1stringRepresentation defined by the system
Fixed Value: Death certificate
..... userSelected0..0booleanIf this coding was chosen directly by the user
.... text0..0stringPlain text representation of the concept
... category Σ0..*CodeableConceptCategorization of Composition
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.


... subject Σ1..1Reference(VRDR Decedent)subject
... encounter Σ0..1Reference(Encounter)Context of the Composition
... date Σ1..1dateTimedate
... author Σ1..*Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization)Who and/or what authored the composition
... title Σ1..1stringHuman Readable name/title
... confidentiality Σ0..1codeAs defined by affinity domain
Binding: v3.ConfidentialityClassification (2014-03-26) (required): Codes specifying the level of confidentiality of the composition.

... attester 1..1BackboneElementattester
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... mode 1..1codemode
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.


Fixed Value: legal
.... time 1..1dateTimetime
.... party 1..1Reference(VRDR Certifier)party
... custodian Σ0..1Reference(Organization)Organization which maintains the composition
... relatesTo 0..*BackboneElementRelationships to other compositions/documents
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code 1..1codereplaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.

.... target[x] 1..1Target of the relationship
..... targetIdentifierIdentifier
..... targetReferenceReference(Composition)
... event Σ1..1BackboneElementevent
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1CodeableConceptcode
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.



Fixed Value: As shown
..... id0..0stringUnique id for inter-element referencing
..... extension0..0ExtensionAdditional content defined by implementations
..... coding1..1CodingCode defined by a terminology system
Fixed Value: (complex)
...... id0..0stringUnique id for inter-element referencing
...... extension0..0ExtensionAdditional content defined by implementations
...... system1..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
...... version0..0stringVersion of the system - if relevant
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 103693007
...... display1..1stringRepresentation defined by the system
Fixed Value: Diagnostic procedure (procedure)
...... userSelected0..0booleanIf this coding was chosen directly by the user
..... text0..0stringPlain text representation of the concept
.... period Σ0..1PeriodThe period covered by the documentation
.... detail Σ1..1Reference(VRDR Death Certification)detail
... section I0..*BackboneElementComposition is broken into sections
cmp-1: A section must contain at least one of text, entries, or sub-sections
cmp-2: A section can only have an emptyReason if it is empty
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... title 0..1stringLabel for section (e.g. for ToC)
.... code 0..1CodeableConceptClassification of section (recommended)
Binding: DocumentSectionCodes (example): Classification of a section of a composition/document.

.... author 0..*Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization)Who and/or what authored the section
.... focus 0..1Reference(Resource)Who/what the section is about, when it is not about the subject of composition
.... text I0..1NarrativeText summary of the section, for human interpretation
.... mode 0..1codeworking | snapshot | changes
Binding: ListMode (required): The processing mode that applies to this section.

.... orderedBy 0..1CodeableConceptOrder of section entries
Binding: ListOrderCodes (preferred): What order applies to the items in the entry.

.... entry I0..*Reference(Resource)A reference to data that supports this section
.... emptyReason I0..1CodeableConceptWhy the section is empty
Binding: ListEmptyReasons (preferred): If a section is empty, why it is empty.

.... section I0..*See section (Composition)Nested Section

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet / Code
Composition.languagepreferredCommonLanguages
Max Binding: AllLanguages
Composition.statusrequiredCompositionStatus
Composition.typepreferredFixed Value: LOINC code 64297-5("Death certificate")
Composition.categoryexampleDocumentClassValueSet
Composition.confidentialityrequiredv3.ConfidentialityClassification
Composition.attester.moderequiredFixed Value: legal
Composition.relatesTo.coderequiredDocumentRelationshipType
Composition.event.codeexampleFixed Value: SNOMED CT code 103693007("Diagnostic procedure (procedure)")
Composition.section.codeexampleDocumentSectionCodes
Composition.section.moderequiredListMode
Composition.section.orderedBypreferredListOrderCodes
Composition.section.emptyReasonpreferredListEmptyReasons

Constraints

IdPathDetailsRequirements
dom-2CompositionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3CompositionIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4CompositionIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5CompositionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6CompositionA resource should have narrative for robust management
: text.`div`.exists()
ele-1Composition.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Composition.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Composition.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Composition.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Composition.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.subjectAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.encounterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.dateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.authorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.titleAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.confidentialityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.attesterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.attester.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Composition.attester.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Composition.attester.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Composition.attester.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Composition.attester.modeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.attester.timeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.attester.partyAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.custodianAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.relatesToAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.relatesTo.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Composition.relatesTo.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Composition.relatesTo.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Composition.relatesTo.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Composition.relatesTo.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.relatesTo.target[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.eventAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.event.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Composition.event.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Composition.event.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Composition.event.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Composition.event.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.event.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.event.detailAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
cmp-1Composition.sectionA section must contain at least one of text, entries, or sub-sections
: text.exists() or entry.exists() or section.exists()
cmp-2Composition.sectionA section can only have an emptyReason if it is empty
: emptyReason.empty() or entry.empty()
ele-1Composition.sectionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.section.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Composition.section.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Composition.section.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Composition.section.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Composition.section.titleAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.section.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.section.authorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.section.focusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.section.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.section.modeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.section.orderedByAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.section.entryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.section.emptyReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Composition.section.sectionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())