HL7 Europe Laboratory Report, published by HL7 Europe. This guide is not an authorized publication; it is the continuous build for version 2.2.0-ci built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7-eu/laboratory/ and changes regularly. See the Directory of published versions
This page summarizes the main changes applied to this version of the guide.
Version 2.1.0 is an STU update of the 2.0.0 release. Alongside the corrections listed below it adds capability the published version does not offer, which is why it is an update rather than a technical correction. Some of the changes make instances that were valid under 2.0.0 fail; each of them says so.
Composition.section:attachment slice, following the resolution of FHIR-53138. Additional data such as images or diagrams is conveyed through DiagnosticReport.media, whose definition and short description were clarified.statusReason extension to ObservationResultsLaboratoryEu and DiagnosticReportLabEu, together with a note on status that the statuses amended, corrected, cancelled and entered-in-error, and for the report also appended, should be accompanied by the reason for that status.lowComparator and highComparator modifier extensions on Observation.referenceRange, with the value sets ReferenceRangeLowComparator and ReferenceRangeHighComparator, pre-adopting the R6 solution for exclusive or explicitly inclusive bounds.Substance and BiologicallyDerivedProduct to the reference targets of Observation.focus, now that the EU core profile allows them.Patient and BiologicallyDerivedProduct to the reference targets of the SpecimenFocus extension. The Specimen profile no longer narrows those targets a second time.alternate-reference extension on Specimen.collection.collector.patient-animal-eu-core, a canonical that exists in neither Base 2.0.0 nor 2.0.1, from the subject targets of DiagnosticReportLabEu, and PatientAnimalEu from those of ServiceRequestLabEu. Both profiles now allow the subject types of the base resource, with the patient pinned to PatientEuCore. PatientAnimalEu stays in the guide.1.. constraint on Specimen.type.laboratory-accredited). It is defined in the HL7 Europe Extensions IG from now on, under the unchanged canonical http://hl7.eu/fhir/StructureDefinition/laboratory-accredited. The profiles keep referencing it, so nothing changes for implementers.eu-lab-2 to require a result in every component. It used to require a value[x], the R5 component.value[x] cross-version extension or a dataAbsentReason in at least one component; now each Observation.component has to carry one of them, unless the Observation is registered or cancelled. Instances in which only some components carry a result were valid under 2.0.0 and fail now. The texts of eu-lab-1 and eu-lab-2 now name the R5 value extensions, which both invariants already accepted, and examples were added for results conveyed through those extensions and for a component without a result.DiagnosticReport.media.link.extension:link to 1..1. The profile already required display, defined as text stating that a DocumentReference is linked through this extension, but not the extension itself. Instances that carry a media entry without a DocumentReference were valid under 2.0.0 and fail now.Specimen.container.extension:device to 1..1. The R5 cross-version extension defines its own root as 1..1 while the profile constrained the slice to 0..1 โ a mismatch no tooling reports, because the cardinality of a contains rule is only checked against the base element. Specimen.container itself stays 0..*, so the constraint applies only where a container is present. Instances with a Specimen.container that does not carry the extension were valid under 2.0.0 and fail now.eu-lab-1 and eu-lab-2 to test hasValue() instead of exists(), so that an element carrying an extension but no value no longer satisfies the invariant. Instances in which a result value carries only an extension were valid under 2.0.0 and fail now.trial-use on QuantityEuLab, RatioEuLab, RangeEuLab and SpecimenAdditiveSubstance, which, unlike every other profile of this guide, carried neither.Specimen.collection.bodySite. The profile used http://hl7.org/fhir/StructureDefinition/bodySite, whose contexts in version 5.2.0, which 2.0.0 referenced, do not include Specimen.collection, so it was never allowed here. It is replaced by the cross-version extension extension-Specimen.collection.bodySite, which declares the matching context and, carrying the reference half of what became a CodeableReference in R5, is nested under the bodySite element rather than under collection. Instances that use the old extension have to be migrated.valueBoolean, valueInteger and valueSampledData on Observation.value[x] and Observation.component.value[x], the three data types that had no slice, so that no data type of value[x] is excluded any more. The closed slicing was removed from the differential, but the IG Publisher treats slicing by type as closed in any case. The constraints on the other slices are unchanged.Observation.value[x]:valueCodeableConcept and Observation.component.value[x]:valueCodeableConcept. The blood group and microorganism bindings pointed to subsets of the value set bound to the element. The presence/absence binding pointed to LabPresenceAbsenceEuVs, which is not contained in it: 13 of its 38 codes, such as Normal, Reactive and Equivocal, are not in the bound value set. The guide therefore no longer recommends these codes; FHIR-59528 proposes to restore that binding.dr-comp-enc and dr-comp-subj to comparing Reference.reference, and only where both references are present. Comparing the whole Reference reported a difference in display text or identifier as an error. Both invariants are now warnings: DiagnosticReport and Composition SHOULD, rather than SHALL, have the same encounter and subject.Composition.extension:diagnosticReport, which required the extension, where present, to carry a literal reference to the DiagnosticReport. The guide pre-adopts the R5 rules for document bundles, under which the DiagnosticReport is part of the document through its own reference to the Composition. The extension stays available as inherited from CompositionEuCore, so instances that carry it remain valid. The examples no longer carry it.iso21090-uncertainty and iso21090-uncertaintyType extensions in RatioEuLab and RangeEuLab from the data type root to numerator and denominator and to low and high. Both extensions are defined for Quantity only, so they could not be used where the profiles placed them (#54).dr-comp-type to compare system, version and code rather than the whole coding. Changed dr-comp-identifier to compare system and value rather than the whole identifier. It now applies only when the DiagnosticReport has an identifier; before, it also failed when only the Composition had one. Removed dr-comp-category together with its obeys rule: the two categories need not be the same, one classifies the document and the other the medical discipline of the report.DiagnosticReport.media.link.display and the display text in dr-status-reason-media-example. They called the alternate-reference extension a cross-version extension.LaboratoryResultStandardEuVs, which includes NPU codes but carried only the LOINC copyright.LabStudyTypesEuVs. Markdown collapses single line breaks, so the notes were rendered as a single paragraph, and their labels had no space after the colon.ServiceRequest.supportingInfo, while keeping its target types open.Composition.identifier has to have the same system and value as one of the DiagnosticReport.identifier, and pointed it at the invariant that enforces it, dr-comp-identifier in the constraints section of the Bundle profile.intendedRecipient[x] of the laboratory report became header.intendedRecipient[x], component.code of the laboratory observation became component.type, udiCarrier of the device became udi and dosageInstructions of the medication administration became dosage. Apart from the new names, this does not change the mappings. The logical models page and the mapping pages no longer describe the models as under development.collection.bodySite and collection.performer[x] of the specimen now map to the extensions introduced for FHIR-57051 and FHIR-57901, and accreditationStatus of the laboratory observation maps to the Laboratory Accredited extension (laboratory-accredited) on the Observation.header.eventType to the studyType slice and header.serviceSpecialty to the specialty slice of Composition.category. Its attachments map to the DocumentReference linked from DiagnosticReport.media. The laboratory observation maps header.author[x] to performer, as HL7 Europe Base does. The service request maps description to code.text instead of the narrative. pointOfCareTest is no longer mapped to Observation.category, because this guide defines no code for it. Rows for elements that this guide cannot represent are marked no-map and stay highlighted, and the legend on the mapping pages now says so.body.supportingInformation of the laboratory report, for the child elements of referenceRange and component.referenceRange of the laboratory observation, and for header.source of the service request and the medication administration.Specimen-container-device-example, a blood specimen collected into an evacuated tube whose container is described by a contained Device referenced through the extension.Specimen-collection-example, a capillary blood specimen the patient collected themselves, with the collection body site conveyed through the R5 cross-version extension and the collector through the alternate-reference extension.Specimen-focus-bdp-example, a sample drawn from a red blood cell unit, where the entity the specimen was collected from is a BiologicallyDerivedProduct and the subject of record is the patient.obs-focus-substance-example and obs-focus-bdp-example, results about a substance and about a blood unit rather than about the patient directly.obs-status-reason-example, a cancelled result carrying the reason for that status.dr-status-reason-media-example, a corrected report carrying the reason for that status and the additional data in DiagnosticReport.media, together with the result it is issued for.SimpleChemistryResultReport by the Czech displays. The Composition has the language cs-CZ, and the terminology server validates the displays of 18719-5, 26436-6 and 11502-2 against their Czech designations.hl7.fhir.eu.base from 2.0.0 to 2.0.1 and hl7.fhir.eu.extensions.r4 from 1.3.0 to 1.3.1. Base 2.0.1 provides the Observation.focus targets added for FHIR-57055, and Extensions 1.3.1 defines the Laboratory Accredited extension moved for FHIR-57043.hl7.fhir.uv.ips 2.0.1. Version 2.0.0 was published without it, neither directly nor through another dependency, although its result profile binds to an IPS value set and LabOrderCodesEuVs is built on another, so a validator working from the 2.0.0 package could not resolve them.hl7.fhir.uv.extensions.r4 5.3.0 instead of 5.2.0, and the package depends on hl7.terminology.r4 7.4.0 instead of 7.1.0.Observation.component uses the R5 cross-version extension extension-Observation.component.value instead of extension-Observation.value, together with the obs-value-2 constraint, which forbids using both component.value[x] and that extension. DiagnosticReport.performer is sliced by resolve(). The snapshot of the 2.0.0 package restricted Observation.subject to the patient and Observation.performer to practitioners and organizations, although this guide does not constrain their targets; 2.1.0 has the targets of the EU core result profile, which add Device, Group and Location as subject and Patient and RelatedPerson as performer.hl7.fhir.eu.extensions.r4 (FHIR-53210).bodyStructure references (FHIR-44969).DIagRptStatus-to-CompStatus-map.fsh (FHIR-53126).sct-expansion-params.fsh, index updates).Updated lab-related profiles:
bundle.fshbundle-lab.fshcomposition-lab.fshdiagnosticReport-lab.fshobservation-lab.fsh
(FHIR-44969, FHIR-53224, FHIR-53529, FHIR-53584, FHIR-55624, FHIR-56181)DiagnosticReport.media.link mapping.RelatedPerson-based representation (FHIR-56314, FHIR-55624).Updated bundle definitions:
Bundle-MicroCultureSuscLabResultDetailed.fshBundle-IT-CDA2FHIR.fshBundle-HepatitisPanel.fsh
(FHIR-53224, FHIR-55624, FHIR-56181)NPU-microbiology-example.fsh (maintainance update, no dedicated FHIR tracker).Examples.fsh) (FHIR-55624, FHIR-56314).alias-systems.fsh, alias-lab.fsh) (FHIR-46043, FHIR-53210, FHIR-53224, FHIR-53529).sushi-config.yaml and aliases (FHIR-53210, FHIR-53224).README.md, index.md) (FHIR-53126).pat-cnt-2or3-char error fixed.ConceptMap.sourceUri and ConceptMap.targetUri errors...* (fix).Patient.animal.