WHO Digital Documentation of COVID-19 Certificates (DDCC)
1.0.0 - CI Build International flag

This is the continuous build for version 1.0.0. This version is based on the current content of https://github.com/WorldHealthOrganization/ddcc and changes regularly.

Resource Profile: DDCC Diagnostic Report

Official URL: http://smart.who.int/ddcc/StructureDefinition/DDCCDiagnosticReport Version: 1.0.0
Draft as of 2024-01-19 Computable Name: DDCCDiagnosticReport

A DDCC Diagnostic Report contains the content corresponding to a row in the Test Events section of a Paper DDCC. While this is not a further profile of the International Patient Summary (IPS) DiagnosticReport resouce, this is intended to map into an IPS DiagnosticReport resource.

Usage:

Formal Views of Profile Content

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

This structure is derived from DiagnosticReportUvIps

NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport 0..*DiagnosticReportUvIpsA Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
... code 1..1CodeableConceptIPSConcept - reference to a terminology or just text
Binding: WHO Type of Covid-19 Test (required)
... effective[x] 1..1dateTimeClinically relevant time/time-period for report
... specimen S1..1Reference(DDCC Specimen)Specimens this report is based on
... result:observation-results 0..1Reference(DDCC Observation)Observations

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
DiagnosticReport.coderequiredWHO_DDCC_Type_of_Test_COVID_19
NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport 0..*DiagnosticReportUvIpsA Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... status ?!Σ1..1coderegistered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required): The status of the diagnostic report.


Fixed Value: final
... code S1..1CodeableConceptIPSConcept - reference to a terminology or just text
Binding: WHO Type of Covid-19 Test (required)
... subject SΣ1..1Reference(Patient (IPS) | Group)The subject of the report - usually, but not always, the patient
.... reference SΣC1..1stringLiteral reference, Relative, internal or absolute URL
... effective[x] SΣ1..1dateTimeClinically relevant time/time-period for report
.... data-absent-reason S0..1codeeffective[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required): Used to specify why the normally expected content of the data element is missing.


... performer SΣ0..*Reference(Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS) | CareTeam)Responsible Diagnostic Service
... specimen S1..1Reference(DDCC Specimen)Specimens this report is based on
... Slices for result S1..1Reference(DDCC Observation)Observation results included in the diagnostic report.
Slice: Unordered, Open by profile:resolve()
.... result:observation-results S0..1Reference(DDCC Observation)Observations

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
DiagnosticReport.statusrequiredFixed Value: final
DiagnosticReport.categoryexampleDiagnosticServiceSectionCodes
DiagnosticReport.coderequiredWHO_DDCC_Type_of_Test_COVID_19

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorDiagnosticReportIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorDiagnosticReportIf 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-4errorDiagnosticReportIf 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-5errorDiagnosticReportIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceDiagnosticReportA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport 0..*DiagnosticReportUvIpsA Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
... id Σ0..1idLogical 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..*IdentifierBusiness identifier for report
... basedOn 0..*Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest)What was requested
... status ?!Σ1..1coderegistered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required): The status of the diagnostic report.


Fixed Value: final
... category S1..1CodeableConceptIPSConcept - reference to a terminology or just text
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.


... code S1..1CodeableConceptIPSConcept - reference to a terminology or just text
Binding: WHO Type of Covid-19 Test (required)
... subject SΣ1..1Reference(Patient (IPS) | Group)The subject of the report - usually, but not always, the patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣC1..1stringLiteral reference, Relative, internal or absolute URL
.... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ0..1IdentifierLogical reference, when literal reference is not known
.... display Σ0..1stringText alternative for the resource
... encounter Σ0..1Reference(Encounter)Health care event when test ordered
... effective[x] SΣ1..1dateTimeClinically relevant time/time-period for report
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... data-absent-reason S0..1codeeffective[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required): Used to specify why the normally expected content of the data element is missing.


... issued Σ0..1instantDateTime this version was made
... performer SΣ0..*Reference(Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS) | CareTeam)Responsible Diagnostic Service
... resultsInterpreter Σ0..*Reference(Practitioner | PractitionerRole | Organization | CareTeam)Primary result interpreter
... specimen S1..1Reference(DDCC Specimen)Specimens this report is based on
... Slices for result S1..1Reference(DDCC Observation)Observation results included in the diagnostic report.
Slice: Unordered, Open by profile:resolve()
.... result:observation-results S0..1Reference(DDCC Observation)Observations
... imagingStudy 0..*Reference(ImagingStudy)Reference to full details of imaging associated with the diagnostic report
... media Σ0..*BackboneElementKey images associated with this report
.... 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
.... comment 0..1stringComment about the image (e.g. explanation)
.... link Σ1..1Reference(Media)Reference to the image source
... conclusion 0..1stringClinical conclusion (interpretation) of test results
... conclusionCode 0..*CodeableConceptCodes for the clinical conclusion of test results
Binding: SNOMEDCTClinicalFindings (example): Diagnosis codes provided as adjuncts to the report.


... presentedForm 0..*AttachmentEntire report as issued

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
DiagnosticReport.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
DiagnosticReport.statusrequiredFixed Value: final
DiagnosticReport.categoryexampleDiagnosticServiceSectionCodes
DiagnosticReport.coderequiredWHO_DDCC_Type_of_Test_COVID_19
DiagnosticReport.subject.typeextensibleResourceType
DiagnosticReport.conclusionCodeexampleSNOMEDCTClinicalFindings

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorDiagnosticReportIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorDiagnosticReportIf 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-4errorDiagnosticReportIf 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-5errorDiagnosticReportIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceDiagnosticReportA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from DiagnosticReportUvIps

Summary

Mandatory: 2 elements
Must-Support: 1 element

Structures

This structure refers to these other structures:

Differential View

This structure is derived from DiagnosticReportUvIps

NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport 0..*DiagnosticReportUvIpsA Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
... code 1..1CodeableConceptIPSConcept - reference to a terminology or just text
Binding: WHO Type of Covid-19 Test (required)
... effective[x] 1..1dateTimeClinically relevant time/time-period for report
... specimen S1..1Reference(DDCC Specimen)Specimens this report is based on
... result:observation-results 0..1Reference(DDCC Observation)Observations

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
DiagnosticReport.coderequiredWHO_DDCC_Type_of_Test_COVID_19

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport 0..*DiagnosticReportUvIpsA Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... status ?!Σ1..1coderegistered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required): The status of the diagnostic report.


Fixed Value: final
... code S1..1CodeableConceptIPSConcept - reference to a terminology or just text
Binding: WHO Type of Covid-19 Test (required)
... subject SΣ1..1Reference(Patient (IPS) | Group)The subject of the report - usually, but not always, the patient
.... reference SΣC1..1stringLiteral reference, Relative, internal or absolute URL
... effective[x] SΣ1..1dateTimeClinically relevant time/time-period for report
.... data-absent-reason S0..1codeeffective[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required): Used to specify why the normally expected content of the data element is missing.


... performer SΣ0..*Reference(Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS) | CareTeam)Responsible Diagnostic Service
... specimen S1..1Reference(DDCC Specimen)Specimens this report is based on
... Slices for result S1..1Reference(DDCC Observation)Observation results included in the diagnostic report.
Slice: Unordered, Open by profile:resolve()
.... result:observation-results S0..1Reference(DDCC Observation)Observations

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
DiagnosticReport.statusrequiredFixed Value: final
DiagnosticReport.categoryexampleDiagnosticServiceSectionCodes
DiagnosticReport.coderequiredWHO_DDCC_Type_of_Test_COVID_19

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorDiagnosticReportIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorDiagnosticReportIf 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-4errorDiagnosticReportIf 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-5errorDiagnosticReportIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceDiagnosticReportA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport 0..*DiagnosticReportUvIpsA Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
... id Σ0..1idLogical 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..*IdentifierBusiness identifier for report
... basedOn 0..*Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest)What was requested
... status ?!Σ1..1coderegistered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required): The status of the diagnostic report.


Fixed Value: final
... category S1..1CodeableConceptIPSConcept - reference to a terminology or just text
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.


... code S1..1CodeableConceptIPSConcept - reference to a terminology or just text
Binding: WHO Type of Covid-19 Test (required)
... subject SΣ1..1Reference(Patient (IPS) | Group)The subject of the report - usually, but not always, the patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣC1..1stringLiteral reference, Relative, internal or absolute URL
.... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ0..1IdentifierLogical reference, when literal reference is not known
.... display Σ0..1stringText alternative for the resource
... encounter Σ0..1Reference(Encounter)Health care event when test ordered
... effective[x] SΣ1..1dateTimeClinically relevant time/time-period for report
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... data-absent-reason S0..1codeeffective[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required): Used to specify why the normally expected content of the data element is missing.


... issued Σ0..1instantDateTime this version was made
... performer SΣ0..*Reference(Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS) | CareTeam)Responsible Diagnostic Service
... resultsInterpreter Σ0..*Reference(Practitioner | PractitionerRole | Organization | CareTeam)Primary result interpreter
... specimen S1..1Reference(DDCC Specimen)Specimens this report is based on
... Slices for result S1..1Reference(DDCC Observation)Observation results included in the diagnostic report.
Slice: Unordered, Open by profile:resolve()
.... result:observation-results S0..1Reference(DDCC Observation)Observations
... imagingStudy 0..*Reference(ImagingStudy)Reference to full details of imaging associated with the diagnostic report
... media Σ0..*BackboneElementKey images associated with this report
.... 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
.... comment 0..1stringComment about the image (e.g. explanation)
.... link Σ1..1Reference(Media)Reference to the image source
... conclusion 0..1stringClinical conclusion (interpretation) of test results
... conclusionCode 0..*CodeableConceptCodes for the clinical conclusion of test results
Binding: SNOMEDCTClinicalFindings (example): Diagnosis codes provided as adjuncts to the report.


... presentedForm 0..*AttachmentEntire report as issued

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
DiagnosticReport.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
DiagnosticReport.statusrequiredFixed Value: final
DiagnosticReport.categoryexampleDiagnosticServiceSectionCodes
DiagnosticReport.coderequiredWHO_DDCC_Type_of_Test_COVID_19
DiagnosticReport.subject.typeextensibleResourceType
DiagnosticReport.conclusionCodeexampleSNOMEDCTClinicalFindings

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorDiagnosticReportIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorDiagnosticReportIf 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-4errorDiagnosticReportIf 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-5errorDiagnosticReportIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceDiagnosticReportA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from DiagnosticReportUvIps

Summary

Mandatory: 2 elements
Must-Support: 1 element

Structures

This structure refers to these other structures:

 

Other representations of profile: CSV, Excel, Schematron