XpanDH Laboratory Report
0.1.0 - ci-build 150

XpanDH Laboratory Report, published by XpanDH Project. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7-eu/xpandh-lab/ and changes regularly. See the Directory of published versions

Resource Profile: DiagnosticReport: Laboratory Report

Official URL: http://hl7.eu/fhir/ig/xpandh/lab/StructureDefinition/DiagnosticReport-lab-xpandh Version: 0.1.0
Draft as of 2025-10-10 Computable Name: DiagnosticReportLabXpandh

DiagnosticReport used to represent an entry of a Laboratory Report, including its context, for the scope of the XPanDH project.

Usages:

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
.. DiagnosticReport 0..* DiagnosticReportLabEu Laboratory Report DiagnosticReport
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:DiagnosticReportCompositionR5 1..1 (Complex) Associated Lab Report Composition
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.composition
..... extension 0..0
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.composition"
..... value[x] 1..1 Reference(Composition: Laboratory Report) Value of extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code Status of the Report
Binding: DiagnosticReportStatus (required): The status of the diagnostic report.
... Slices for category Σ 0..* CodeableConceptIPS Report Category
Slice: Unordered, Open by pattern:$this
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.
.... category:studyType Σ 0..* CodeableConcept The way of grouping of the test results into clinically meaningful domains (e.g. hematology study, microbiology study, etc.)
Binding: Laboratory Study Types (required)
.... category:specialty Σ 0..* CodeableConcept The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry)
Binding: Laboratory Specialty (required)
... code 1..1 CodeableConceptIPS Type of (Laboratory) Report
Binding: Laboratory Report Types (required)
... subject Σ 1..1 Reference(Patient) Who and/or what this report is about
... result 0..* Reference(Observation Results: laboratory) results

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DiagnosticReport.status Base required DiagnosticReportStatus 📍4.0.1 FHIR Std.
DiagnosticReport.category Base example Diagnostic Service Section Codes 📦4.0.1 FHIR Std.
DiagnosticReport.category:studyType Base required Laboratory Study Types 📦0.1.0 HL7 Europe Laboratory Report v0.1
DiagnosticReport.category:specialty Base required Laboratory Specialty 📦0.1.0 HL7 Europe Laboratory Report v0.1
DiagnosticReport.code Base required Laboratory Report Types 📦0.1.0 HL7 Europe Laboratory Report v0.1

Constraints

Id Grade Path(s) Description Expression
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().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-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()

This structure is derived from DiagnosticReportLabEu

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DiagnosticReport DiagnosticReportLabEu
... basedOn 0..* Reference(ServiceRequest: Laboratory Order) What was requested
... code 1..1 CodeableConceptIPS Type of (Laboratory) Report
Binding: Laboratory Report Types (required)
... subject 1..1 Reference(Patient) Who and/or what this report is about

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
DiagnosticReport.code Base required Laboratory Report Types 📦0.1.0 HL7 Europe Laboratory Report v0.1
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DiagnosticReport 0..* DiagnosticReportLabEu Laboratory Report DiagnosticReport
... 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
... 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
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:DiagnosticReportCompositionR5 1..1 (Complex) Associated Lab Report Composition
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.composition
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.composition"
..... value[x] 1..1 Reference(Composition: Laboratory Report) Value of extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Report identifier
... basedOn 0..* Reference(ServiceRequest: Laboratory Order) What was requested
... status ?!Σ 1..1 code Status of the Report
Binding: DiagnosticReportStatus (required): The status of the diagnostic report.
... Slices for category Σ 0..* CodeableConceptIPS Report Category
Slice: Unordered, Open by pattern:$this
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.
.... category:studyType Σ 0..* CodeableConcept The way of grouping of the test results into clinically meaningful domains (e.g. hematology study, microbiology study, etc.)
Binding: Laboratory Study Types (required)
.... category:specialty Σ 0..* CodeableConcept The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry)
Binding: Laboratory Specialty (required)
... code 1..1 CodeableConceptIPS Type of (Laboratory) Report
Binding: Laboratory Report Types (required)
... subject Σ 1..1 Reference(Patient) Who and/or what this report is about
... encounter Σ 0..1 Reference(Encounter) The healthcare event which this Laboratory Report is about (when test ordered).
... effective[x] Σ 0..1 Clinically relevant time/time-period for report.
.... effectiveDateTime dateTime
.... effectivePeriod Period
... 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: Laboratory) Specimens this report is based on.
... result 0..* Reference(Observation Results: laboratory) results
... media Σ 0..* BackboneElement Key images 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 (e.g. explanation)
.... link Σ 1..1 Reference(Media) Reference to the image source
... conclusion 0..1 string Clinical conclusion (interpretation) of test results
... conclusionCode 0..* CodeableConcept Codes for the clinical conclusion of test results
Binding: SNOMEDCTClinicalFindings (example): Diagnosis codes provided as adjuncts to the report.
... presentedForm 0..* Attachment Entire report as issued (pdf recommended)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DiagnosticReport.language Base preferred Common Languages 📦4.0.1 FHIR Std.
DiagnosticReport.status Base required DiagnosticReportStatus 📍4.0.1 FHIR Std.
DiagnosticReport.category Base example Diagnostic Service Section Codes 📦4.0.1 FHIR Std.
DiagnosticReport.category:studyType Base required Laboratory Study Types 📦0.1.0 HL7 Europe Laboratory Report v0.1
DiagnosticReport.category:specialty Base required Laboratory Specialty 📦0.1.0 HL7 Europe Laboratory Report v0.1
DiagnosticReport.code Base required Laboratory Report Types 📦0.1.0 HL7 Europe Laboratory Report v0.1
DiagnosticReport.conclusionCode Base example SNOMED CT Clinical Findings 📦4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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().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-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()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DiagnosticReport 0..* DiagnosticReportLabEu Laboratory Report DiagnosticReport
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:DiagnosticReportCompositionR5 1..1 (Complex) Associated Lab Report Composition
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.composition
..... extension 0..0
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.composition"
..... value[x] 1..1 Reference(Composition: Laboratory Report) Value of extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code Status of the Report
Binding: DiagnosticReportStatus (required): The status of the diagnostic report.
... Slices for category Σ 0..* CodeableConceptIPS Report Category
Slice: Unordered, Open by pattern:$this
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.
.... category:studyType Σ 0..* CodeableConcept The way of grouping of the test results into clinically meaningful domains (e.g. hematology study, microbiology study, etc.)
Binding: Laboratory Study Types (required)
.... category:specialty Σ 0..* CodeableConcept The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry)
Binding: Laboratory Specialty (required)
... code 1..1 CodeableConceptIPS Type of (Laboratory) Report
Binding: Laboratory Report Types (required)
... subject Σ 1..1 Reference(Patient) Who and/or what this report is about
... result 0..* Reference(Observation Results: laboratory) results

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DiagnosticReport.status Base required DiagnosticReportStatus 📍4.0.1 FHIR Std.
DiagnosticReport.category Base example Diagnostic Service Section Codes 📦4.0.1 FHIR Std.
DiagnosticReport.category:studyType Base required Laboratory Study Types 📦0.1.0 HL7 Europe Laboratory Report v0.1
DiagnosticReport.category:specialty Base required Laboratory Specialty 📦0.1.0 HL7 Europe Laboratory Report v0.1
DiagnosticReport.code Base required Laboratory Report Types 📦0.1.0 HL7 Europe Laboratory Report v0.1

Constraints

Id Grade Path(s) Description Expression
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().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-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

This structure is derived from DiagnosticReportLabEu

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DiagnosticReport DiagnosticReportLabEu
... basedOn 0..* Reference(ServiceRequest: Laboratory Order) What was requested
... code 1..1 CodeableConceptIPS Type of (Laboratory) Report
Binding: Laboratory Report Types (required)
... subject 1..1 Reference(Patient) Who and/or what this report is about

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
DiagnosticReport.code Base required Laboratory Report Types 📦0.1.0 HL7 Europe Laboratory Report v0.1

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DiagnosticReport 0..* DiagnosticReportLabEu Laboratory Report DiagnosticReport
... 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
... 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
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:DiagnosticReportCompositionR5 1..1 (Complex) Associated Lab Report Composition
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.composition
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-DiagnosticReport.composition"
..... value[x] 1..1 Reference(Composition: Laboratory Report) Value of extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Report identifier
... basedOn 0..* Reference(ServiceRequest: Laboratory Order) What was requested
... status ?!Σ 1..1 code Status of the Report
Binding: DiagnosticReportStatus (required): The status of the diagnostic report.
... Slices for category Σ 0..* CodeableConceptIPS Report Category
Slice: Unordered, Open by pattern:$this
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.
.... category:studyType Σ 0..* CodeableConcept The way of grouping of the test results into clinically meaningful domains (e.g. hematology study, microbiology study, etc.)
Binding: Laboratory Study Types (required)
.... category:specialty Σ 0..* CodeableConcept The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry)
Binding: Laboratory Specialty (required)
... code 1..1 CodeableConceptIPS Type of (Laboratory) Report
Binding: Laboratory Report Types (required)
... subject Σ 1..1 Reference(Patient) Who and/or what this report is about
... encounter Σ 0..1 Reference(Encounter) The healthcare event which this Laboratory Report is about (when test ordered).
... effective[x] Σ 0..1 Clinically relevant time/time-period for report.
.... effectiveDateTime dateTime
.... effectivePeriod Period
... 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: Laboratory) Specimens this report is based on.
... result 0..* Reference(Observation Results: laboratory) results
... media Σ 0..* BackboneElement Key images 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 (e.g. explanation)
.... link Σ 1..1 Reference(Media) Reference to the image source
... conclusion 0..1 string Clinical conclusion (interpretation) of test results
... conclusionCode 0..* CodeableConcept Codes for the clinical conclusion of test results
Binding: SNOMEDCTClinicalFindings (example): Diagnosis codes provided as adjuncts to the report.
... presentedForm 0..* Attachment Entire report as issued (pdf recommended)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DiagnosticReport.language Base preferred Common Languages 📦4.0.1 FHIR Std.
DiagnosticReport.status Base required DiagnosticReportStatus 📍4.0.1 FHIR Std.
DiagnosticReport.category Base example Diagnostic Service Section Codes 📦4.0.1 FHIR Std.
DiagnosticReport.category:studyType Base required Laboratory Study Types 📦0.1.0 HL7 Europe Laboratory Report v0.1
DiagnosticReport.category:specialty Base required Laboratory Specialty 📦0.1.0 HL7 Europe Laboratory Report v0.1
DiagnosticReport.code Base required Laboratory Report Types 📦0.1.0 HL7 Europe Laboratory Report v0.1
DiagnosticReport.conclusionCode Base example SNOMED CT Clinical Findings 📦4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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().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-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()

 

Other representations of profile: CSV, Excel, Schematron