CardX - Cardiac Implantable Electronic Devices
2.0.0 - ci-build International flag

CardX - Cardiac Implantable Electronic Devices, published by HL7 International / Clinical Interoperability Council. This guide is not an authorized publication; it is the continuous build for version 2.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/CardX-CIED/ and changes regularly. See the Directory of published versions

Resource Profile: CIED Diagnostic Report Profile

Official URL: http://hl7.org/fhir/uv/cardx-cied/StructureDefinition/cied-diagnostic-report Version: 2.0.0
Standards status: Trial-use Active as of 2026-04-09 Maturity Level: 2 Computable Name: CIEDDiagnosticReport

The CIED Diagnostic Report Profile contains the metadata, device references,observation references, and attachments for an interrogated device transmission. Several device and observation references may exist depending on the number of devices implanted in a patient and how the observation data are associated with the devices. Separate observations may also be created during additional post-processing by the remote monitoring software or other processing systems used to interrogate the device data.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DiagnosticReport C 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
Constraints: dgr-1
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... code SΣ 1..1 CodeableConcept Name/Code for this diagnostic report
Binding: LOINCDiagnosticReportCodes (preferred): LOINC Codes for Diagnostic Reports
... subject SΣ 0..1 Reference(Patient - CIED Patient Profile) The subject of the report - usually, but not always, the patient
... Slices for effective[x] Σ 0..1 Clinically relevant time/time-period for report
Slice: Unordered, Open by type:$this
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effective[x]:effectiveDateTime SΣ 0..1 dateTime Clinically relevant time/time-period for report
... result SC 0..* Reference(Implantable Device Cardiac Observation) Observations
... presentedForm S 0..* Attachment Entire report as issued

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DiagnosticReport.status Base required Diagnostic Report Status 📍5.0.0 FHIR Std.
DiagnosticReport.code Base preferred LOINC Diagnostic Report Codes 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dgr-1 error DiagnosticReport When a Composition is referenced in `Diagnostic.composition`, all Observation resources referenced in `Composition.entry` must also be referenced in `Diagnostic.entry` or in the references Observations in `Observation.hasMember` composition.exists() implies (composition.resolve().section.entry.reference.where(resolve() is Observation) in (result.reference|result.reference.resolve().hasMember.reference))
dom-2 error DiagnosticReport If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DiagnosticReport If 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error DiagnosticReport If 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-5 error DiagnosticReport If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DiagnosticReport A resource should have narrative for robust management text.`div`.exists()
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()

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DiagnosticReport 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
... status S 1..1 code registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown
... code S 1..1 CodeableConcept Name/Code for this diagnostic report
... subject S 0..1 Reference(Patient - CIED Patient Profile) The subject of the report - usually, but not always, the patient
.... effective[x]:effectiveDateTime S 0..1 dateTime Clinically relevant time/time-period for report
... result S 0..* Reference(Implantable Device Cardiac Observation) Observations
... presentedForm S 0..* Attachment Entire report as issued

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DiagnosticReport C 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
Constraints: dgr-1
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Business identifier for report
... basedOn 0..* Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) What was requested
... status ?!SΣ 1..1 code registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown
Binding: DiagnosticReportStatus (required): The status of the diagnostic report.
... category Σ 0..* CodeableConcept Service category
Binding: DiagnosticServiceSectionCodes (example): HL7 V2 table 0074
... code SΣ 1..1 CodeableConcept Name/Code for this diagnostic report
Binding: LOINCDiagnosticReportCodes (preferred): LOINC Codes for Diagnostic Reports
... subject SΣ 0..1 Reference(Patient - CIED Patient Profile) The subject of the report - usually, but not always, the patient
... encounter Σ 0..1 Reference(Encounter) Health care event when test ordered
... Slices for effective[x] Σ 0..1 Clinically relevant time/time-period for report
Slice: Unordered, Open by type:$this
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effective[x]:effectiveDateTime SΣ 0..1 dateTime Clinically relevant time/time-period for report
... issued Σ 0..1 instant DateTime this version was made
... performer Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam) Responsible Diagnostic Service
... resultsInterpreter Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam) Primary result interpreter
... specimen 0..* Reference(Specimen) Specimens this report is based on
... result SC 0..* Reference(Implantable Device Cardiac Observation) Observations
... note 0..* Annotation Comments about the diagnostic report
... study 0..* Reference(GenomicStudy | ImagingStudy) Reference to full details of an analysis associated with the diagnostic report
... supportingInfo 0..* BackboneElement Additional information supporting the diagnostic report
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept Supporting information role code
Binding: hl7VS-VS-observationType (example): The code value for the role of the supporting information in the diagnostic report.
.... reference 1..1 Reference(Procedure | Observation | DiagnosticReport | Citation) Supporting information reference
... media Σ 0..* BackboneElement Key images or data associated with this report
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... comment 0..1 string Comment about the image or data (e.g. explanation)
.... link Σ 1..1 Reference(DocumentReference) Reference to the image or data source
... composition C 0..1 Reference(Composition) Reference to a Composition resource for the DiagnosticReport structure
... conclusion 0..1 markdown Clinical conclusion (interpretation) of test results
... conclusionCode 0..* CodeableConcept Codes for the clinical conclusion of test results
Binding: SNOMEDCTClinicalFindings (example): SNOMED CT Clinical Findings
... presentedForm S 0..* Attachment Entire report as issued

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DiagnosticReport.language Base required All Languages 📍5.0.0 FHIR Std.
DiagnosticReport.status Base required Diagnostic Report Status 📍5.0.0 FHIR Std.
DiagnosticReport.category Base example Diagnostic Service Section Codes 📍5.0.0 FHIR Std.
DiagnosticReport.code Base preferred LOINC Diagnostic Report Codes 📍5.0.0 FHIR Std.
DiagnosticReport.supportingInfo.​type Base example hl7VS-VS-observationType 📦3.0.0 THO v7.1
DiagnosticReport.conclusionCode Base example SNOMED CT Clinical Findings 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dgr-1 error DiagnosticReport When a Composition is referenced in `Diagnostic.composition`, all Observation resources referenced in `Composition.entry` must also be referenced in `Diagnostic.entry` or in the references Observations in `Observation.hasMember` composition.exists() implies (composition.resolve().section.entry.reference.where(resolve() is Observation) in (result.reference|result.reference.resolve().hasMember.reference))
dom-2 error DiagnosticReport If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DiagnosticReport If 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error DiagnosticReport If 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-5 error DiagnosticReport If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DiagnosticReport A resource should have narrative for robust management text.`div`.exists()
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()

Summary

Must-Support: 6 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of DiagnosticReport.effective[x]

Maturity: 2

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DiagnosticReport C 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
Constraints: dgr-1
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... code SΣ 1..1 CodeableConcept Name/Code for this diagnostic report
Binding: LOINCDiagnosticReportCodes (preferred): LOINC Codes for Diagnostic Reports
... subject SΣ 0..1 Reference(Patient - CIED Patient Profile) The subject of the report - usually, but not always, the patient
... Slices for effective[x] Σ 0..1 Clinically relevant time/time-period for report
Slice: Unordered, Open by type:$this
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effective[x]:effectiveDateTime SΣ 0..1 dateTime Clinically relevant time/time-period for report
... result SC 0..* Reference(Implantable Device Cardiac Observation) Observations
... presentedForm S 0..* Attachment Entire report as issued

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DiagnosticReport.status Base required Diagnostic Report Status 📍5.0.0 FHIR Std.
DiagnosticReport.code Base preferred LOINC Diagnostic Report Codes 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dgr-1 error DiagnosticReport When a Composition is referenced in `Diagnostic.composition`, all Observation resources referenced in `Composition.entry` must also be referenced in `Diagnostic.entry` or in the references Observations in `Observation.hasMember` composition.exists() implies (composition.resolve().section.entry.reference.where(resolve() is Observation) in (result.reference|result.reference.resolve().hasMember.reference))
dom-2 error DiagnosticReport If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DiagnosticReport If 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error DiagnosticReport If 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-5 error DiagnosticReport If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DiagnosticReport A resource should have narrative for robust management text.`div`.exists()
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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DiagnosticReport 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
... status S 1..1 code registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown
... code S 1..1 CodeableConcept Name/Code for this diagnostic report
... subject S 0..1 Reference(Patient - CIED Patient Profile) The subject of the report - usually, but not always, the patient
.... effective[x]:effectiveDateTime S 0..1 dateTime Clinically relevant time/time-period for report
... result S 0..* Reference(Implantable Device Cardiac Observation) Observations
... presentedForm S 0..* Attachment Entire report as issued

doco Documentation for this format

Snapshot ViewView

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DiagnosticReport C 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
Constraints: dgr-1
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Business identifier for report
... basedOn 0..* Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) What was requested
... status ?!SΣ 1..1 code registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown
Binding: DiagnosticReportStatus (required): The status of the diagnostic report.
... category Σ 0..* CodeableConcept Service category
Binding: DiagnosticServiceSectionCodes (example): HL7 V2 table 0074
... code SΣ 1..1 CodeableConcept Name/Code for this diagnostic report
Binding: LOINCDiagnosticReportCodes (preferred): LOINC Codes for Diagnostic Reports
... subject SΣ 0..1 Reference(Patient - CIED Patient Profile) The subject of the report - usually, but not always, the patient
... encounter Σ 0..1 Reference(Encounter) Health care event when test ordered
... Slices for effective[x] Σ 0..1 Clinically relevant time/time-period for report
Slice: Unordered, Open by type:$this
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effective[x]:effectiveDateTime SΣ 0..1 dateTime Clinically relevant time/time-period for report
... issued Σ 0..1 instant DateTime this version was made
... performer Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam) Responsible Diagnostic Service
... resultsInterpreter Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam) Primary result interpreter
... specimen 0..* Reference(Specimen) Specimens this report is based on
... result SC 0..* Reference(Implantable Device Cardiac Observation) Observations
... note 0..* Annotation Comments about the diagnostic report
... study 0..* Reference(GenomicStudy | ImagingStudy) Reference to full details of an analysis associated with the diagnostic report
... supportingInfo 0..* BackboneElement Additional information supporting the diagnostic report
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept Supporting information role code
Binding: hl7VS-VS-observationType (example): The code value for the role of the supporting information in the diagnostic report.
.... reference 1..1 Reference(Procedure | Observation | DiagnosticReport | Citation) Supporting information reference
... media Σ 0..* BackboneElement Key images or data associated with this report
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... comment 0..1 string Comment about the image or data (e.g. explanation)
.... link Σ 1..1 Reference(DocumentReference) Reference to the image or data source
... composition C 0..1 Reference(Composition) Reference to a Composition resource for the DiagnosticReport structure
... conclusion 0..1 markdown Clinical conclusion (interpretation) of test results
... conclusionCode 0..* CodeableConcept Codes for the clinical conclusion of test results
Binding: SNOMEDCTClinicalFindings (example): SNOMED CT Clinical Findings
... presentedForm S 0..* Attachment Entire report as issued

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DiagnosticReport.language Base required All Languages 📍5.0.0 FHIR Std.
DiagnosticReport.status Base required Diagnostic Report Status 📍5.0.0 FHIR Std.
DiagnosticReport.category Base example Diagnostic Service Section Codes 📍5.0.0 FHIR Std.
DiagnosticReport.code Base preferred LOINC Diagnostic Report Codes 📍5.0.0 FHIR Std.
DiagnosticReport.supportingInfo.​type Base example hl7VS-VS-observationType 📦3.0.0 THO v7.1
DiagnosticReport.conclusionCode Base example SNOMED CT Clinical Findings 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dgr-1 error DiagnosticReport When a Composition is referenced in `Diagnostic.composition`, all Observation resources referenced in `Composition.entry` must also be referenced in `Diagnostic.entry` or in the references Observations in `Observation.hasMember` composition.exists() implies (composition.resolve().section.entry.reference.where(resolve() is Observation) in (result.reference|result.reference.resolve().hasMember.reference))
dom-2 error DiagnosticReport If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DiagnosticReport If 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error DiagnosticReport If 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-5 error DiagnosticReport If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DiagnosticReport A resource should have narrative for robust management text.`div`.exists()
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()

Summary

Must-Support: 6 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of DiagnosticReport.effective[x]

Maturity: 2

 

Other representations of profile: CSV, Excel, Schematron