HL7 Austria ELGA Laboratory Report R4 Implementation Guide
0.1.0 - ci-build Austria flag

HL7 Austria ELGA Laboratory Report R4 Implementation Guide, published by HL7 Austria. 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/gabriel0316/test-laboratory/ and changes regularly. See the Directory of published versions

Resource Profile: AT ELGA Laboratory Report Bundle

Official URL: https://fhir.hl7.at/elga-labor/StructureDefinition/at-elga-lab-bundle Version: 0.1.0
Draft as of 2026-05-04 Computable Name: ATELGALabBundle

FHIR Bundle for Austrian ELGA Laboratory Reports.

Extends the HL7 Europe Laboratory Report Bundle with Austrian-specific requirements:

  • Mandatory Austrian business identifier using the GDA (Gesundheitsdiensteanbieter) OID namespace
  • Entries referencing Austrian-profiled resources (AT ELGA Lab profiles)

This bundle represents a legally signable, self-contained laboratory report document.

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
.. Bundle C 0..* BundleLabReportEu Laboratory Report bundle
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, one-comp, one-dr, dr-comp-identifier, dr-comp-type, dr-comp-category, dr-comp-subj, dr-comp-enc
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... identifier SΣ 1..1 Identifier Persistent identifier for this laboratory report bundle
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
.... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string The value that is unique
Example General: 123456
... type SΣ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Fixed Value: document
... Slices for entry ΣC 2..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by type:resource
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... entry:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Resource A resource in the bundle
.... entry:composition ΣC 1..1 BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 CompositionLabReportEu Laboratory Report composition
.... entry:diagnosticReport ΣC 1..1 BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 DiagnosticReportLabEu Laboratory Report DiagnosticReport
.... entry:patient ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PatientEuLab, PatientAnimalEu Information about an individual or animal receiving health care services
.... entry:observation ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 ObservationResultsLaboratoryEu Laboratory result for a simple test or for a panel/study
.... entry:specimen ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 SpecimenEu Laboratory Specimen
.... entry:serviceRequest ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 ServiceRequestLabEu Laboratory Order
.... entry:organization ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Organization A resource in the bundle
.... entry:practitioner ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PractitionerEu A person with a formal responsibility in the provisioning of healthcare or related services
.... entry:practitionerRole ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PractitionerRoleEu Roles/organizations the practitioner is associated with
.... entry:bodyStructure ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 BodyStructureEuLab Specific and identified anatomical structure
.... entry:encounter ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Encounter A resource in the bundle
.... entry:location ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Location A resource in the bundle
.... entry:provenance ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Provenance A resource in the bundle
.... entry:coverage ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Coverage A resource in the bundle
.... entry:device ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Device A resource in the bundle

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Bundle.type Base required BundleType 📍4.0.1 FHIR Std.
Bundle.entry.request.​method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:composition.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:diagnosticReport.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:patient.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:observation.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:specimen.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:serviceRequest.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:organization.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:practitioner.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:practitionerRole.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:bodyStructure.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:encounter.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:location.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:provenance.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:coverage.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:device.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
bdl-1 error Bundle total only when a search or history total.empty() or (type = 'searchset') or (type = 'history')
bdl-2 error Bundle entry.search only when a search entry.search.empty() or (type = 'searchset')
bdl-3 error Bundle entry.request mandatory for batch/transaction/history, otherwise prohibited entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4 error Bundle entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5 error Bundle.entry, Bundle.entry:composition, Bundle.entry:diagnosticReport, Bundle.entry:patient, Bundle.entry:observation, Bundle.entry:specimen, Bundle.entry:serviceRequest, Bundle.entry:organization, Bundle.entry:practitioner, Bundle.entry:practitionerRole, Bundle.entry:bodyStructure, Bundle.entry:encounter, Bundle.entry:location, Bundle.entry:provenance, Bundle.entry:coverage, Bundle.entry:device must be a resource unless there's a request or response resource.exists() or request.exists() or response.exists()
bdl-7 error Bundle FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:composition, Bundle.entry:diagnosticReport, Bundle.entry:patient, Bundle.entry:observation, Bundle.entry:specimen, Bundle.entry:serviceRequest, Bundle.entry:organization, Bundle.entry:practitioner, Bundle.entry:practitionerRole, Bundle.entry:bodyStructure, Bundle.entry:encounter, Bundle.entry:location, Bundle.entry:provenance, Bundle.entry:coverage, Bundle.entry:device fullUrl cannot be a version specific reference fullUrl.contains('/_history/').not()
bdl-9 error Bundle A document must have an identifier with a system and a value type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10 error Bundle A document must have a date type = 'document' implies (timestamp.hasValue())
bdl-11 error Bundle A document must have a Composition as the first resource type = 'document' implies entry.first().resource.is(Composition)
bdl-12 error Bundle A message must have a MessageHeader as the first resource type = 'message' implies entry.first().resource.is(MessageHeader)
dr-comp-category error Bundle At least one DiagnosticReport.category.coding and Composition.category.coding SHALL be equal (entry.resource.ofType(Composition).category.exists() or entry.resource.ofType(DiagnosticReport).category.exists()) implies entry.resource.ofType(Composition).category.coding.intersect(entry.resource.ofType(DiagnosticReport).category.coding).exists()
dr-comp-enc error Bundle DiagnosticReport and Composition SHALL have the same encounter ( (entry.resource.ofType(Composition).encounter.empty() and entry.resource.ofType(DiagnosticReport).encounter.empty() ) or entry.resource.ofType(Composition).encounter = entry.resource.ofType(DiagnosticReport).encounter )
dr-comp-identifier error Bundle If one or more DiagnosticReport.identifiers are given, at least one of them SHALL be equal to the Composition.identifier (entry.resource.ofType(Composition).identifier.exists() or entry.resource.ofType(DiagnosticReport).identifier.exists()) implies entry.resource.ofType(Composition).identifier.intersect(entry.resource.ofType(DiagnosticReport).identifier).exists()
dr-comp-subj error Bundle DiagnosticReport and Composition SHALL have the same subject ( (entry.resource.ofType(Composition).subject.empty() and entry.resource.ofType(DiagnosticReport).subject.empty() ) or entry.resource.ofType(Composition).subject = entry.resource.ofType(DiagnosticReport).subject )
dr-comp-type error Bundle At least one DiagnosticReport.code.coding and Composition.type.coding SHALL be equal entry.resource.ofType(Composition).type.coding.intersect(entry.resource.ofType(DiagnosticReport).code.coding).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()
one-comp error Bundle A laboratory report bundle SHALL include one and only one Composition entry.resource.ofType(Composition).count() = 1
one-dr error Bundle A laboratory report SHALL include one and only one DiagnosticReport entry.resource.ofType(DiagnosticReport).count() = 1

This structure is derived from BundleLabReportEu

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle 0..* BundleLabReportEu Laboratory Report bundle
... identifier S 1..1 Identifier Persistent identifier for this laboratory report bundle
.... system S 1..1 uri The namespace for the identifier value
.... value S 1..1 string The value that is unique
... type S 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Fixed Value: document
... timestamp S 1..1 instant Date/time the bundle was assembled

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* BundleLabReportEu Laboratory Report bundle
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, one-comp, one-dr, dr-comp-identifier, dr-comp-type, dr-comp-category, dr-comp-subj, dr-comp-enc
... 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
... identifier SΣ 1..1 Identifier Persistent identifier for this laboratory report bundle
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
.... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string The value that is unique
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... type SΣ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Fixed Value: document
... timestamp SΣ 1..1 instant Date/time the bundle was assembled
... Slices for entry ΣC 2..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by type:resource
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... entry:All Slices Content/Rules for all slices
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Resource A resource in the bundle
.... entry:composition ΣC 1..1 BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 CompositionLabReportEu Laboratory Report composition
.... entry:diagnosticReport ΣC 1..1 BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 DiagnosticReportLabEu Laboratory Report DiagnosticReport
.... entry:patient ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PatientEuLab, PatientAnimalEu Information about an individual or animal receiving health care services
.... entry:observation ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 ObservationResultsLaboratoryEu Laboratory result for a simple test or for a panel/study
.... entry:specimen ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 SpecimenEu Laboratory Specimen
.... entry:serviceRequest ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 ServiceRequestLabEu Laboratory Order
.... entry:organization ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Organization A resource in the bundle
.... entry:practitioner ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PractitionerEu A person with a formal responsibility in the provisioning of healthcare or related services
.... entry:practitionerRole ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PractitionerRoleEu Roles/organizations the practitioner is associated with
.... entry:bodyStructure ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 BodyStructureEuLab Specific and identified anatomical structure
.... entry:encounter ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Encounter A resource in the bundle
.... entry:location ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Location A resource in the bundle
.... entry:provenance ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Provenance A resource in the bundle
.... entry:coverage ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Coverage A resource in the bundle
.... entry:device ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Device A resource in the bundle
... signature Σ 0..1 Signature Digital Signature of this report

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.language Base preferred Common Languages 📦4.0.1 FHIR Std.
Bundle.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Bundle.identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Bundle.type Base required BundleType 📍4.0.1 FHIR Std.
Bundle.entry.search.​mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry.request.​method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:composition.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:composition.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:diagnosticReport.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:diagnosticReport.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:patient.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:patient.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:observation.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:observation.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:specimen.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:specimen.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:serviceRequest.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:serviceRequest.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:organization.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:organization.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:practitioner.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:practitioner.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:practitionerRole.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:practitionerRole.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:bodyStructure.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:bodyStructure.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:encounter.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:encounter.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:location.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:location.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:provenance.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:provenance.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:coverage.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:coverage.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:device.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:device.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
bdl-1 error Bundle total only when a search or history total.empty() or (type = 'searchset') or (type = 'history')
bdl-2 error Bundle entry.search only when a search entry.search.empty() or (type = 'searchset')
bdl-3 error Bundle entry.request mandatory for batch/transaction/history, otherwise prohibited entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4 error Bundle entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5 error Bundle.entry, Bundle.entry:composition, Bundle.entry:diagnosticReport, Bundle.entry:patient, Bundle.entry:observation, Bundle.entry:specimen, Bundle.entry:serviceRequest, Bundle.entry:organization, Bundle.entry:practitioner, Bundle.entry:practitionerRole, Bundle.entry:bodyStructure, Bundle.entry:encounter, Bundle.entry:location, Bundle.entry:provenance, Bundle.entry:coverage, Bundle.entry:device must be a resource unless there's a request or response resource.exists() or request.exists() or response.exists()
bdl-7 error Bundle FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:composition, Bundle.entry:diagnosticReport, Bundle.entry:patient, Bundle.entry:observation, Bundle.entry:specimen, Bundle.entry:serviceRequest, Bundle.entry:organization, Bundle.entry:practitioner, Bundle.entry:practitionerRole, Bundle.entry:bodyStructure, Bundle.entry:encounter, Bundle.entry:location, Bundle.entry:provenance, Bundle.entry:coverage, Bundle.entry:device fullUrl cannot be a version specific reference fullUrl.contains('/_history/').not()
bdl-9 error Bundle A document must have an identifier with a system and a value type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10 error Bundle A document must have a date type = 'document' implies (timestamp.hasValue())
bdl-11 error Bundle A document must have a Composition as the first resource type = 'document' implies entry.first().resource.is(Composition)
bdl-12 error Bundle A message must have a MessageHeader as the first resource type = 'message' implies entry.first().resource.is(MessageHeader)
dr-comp-category error Bundle At least one DiagnosticReport.category.coding and Composition.category.coding SHALL be equal (entry.resource.ofType(Composition).category.exists() or entry.resource.ofType(DiagnosticReport).category.exists()) implies entry.resource.ofType(Composition).category.coding.intersect(entry.resource.ofType(DiagnosticReport).category.coding).exists()
dr-comp-enc error Bundle DiagnosticReport and Composition SHALL have the same encounter ( (entry.resource.ofType(Composition).encounter.empty() and entry.resource.ofType(DiagnosticReport).encounter.empty() ) or entry.resource.ofType(Composition).encounter = entry.resource.ofType(DiagnosticReport).encounter )
dr-comp-identifier error Bundle If one or more DiagnosticReport.identifiers are given, at least one of them SHALL be equal to the Composition.identifier (entry.resource.ofType(Composition).identifier.exists() or entry.resource.ofType(DiagnosticReport).identifier.exists()) implies entry.resource.ofType(Composition).identifier.intersect(entry.resource.ofType(DiagnosticReport).identifier).exists()
dr-comp-subj error Bundle DiagnosticReport and Composition SHALL have the same subject ( (entry.resource.ofType(Composition).subject.empty() and entry.resource.ofType(DiagnosticReport).subject.empty() ) or entry.resource.ofType(Composition).subject = entry.resource.ofType(DiagnosticReport).subject )
dr-comp-type error Bundle At least one DiagnosticReport.code.coding and Composition.type.coding SHALL be equal entry.resource.ofType(Composition).type.coding.intersect(entry.resource.ofType(DiagnosticReport).code.coding).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()
one-comp error Bundle A laboratory report bundle SHALL include one and only one Composition entry.resource.ofType(Composition).count() = 1
one-dr error Bundle A laboratory report SHALL include one and only one DiagnosticReport entry.resource.ofType(DiagnosticReport).count() = 1

This structure is derived from BundleLabReportEu

Summary

Mandatory: 2 elements
Must-Support: 5 elements
Fixed: 1 element

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* BundleLabReportEu Laboratory Report bundle
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, one-comp, one-dr, dr-comp-identifier, dr-comp-type, dr-comp-category, dr-comp-subj, dr-comp-enc
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... identifier SΣ 1..1 Identifier Persistent identifier for this laboratory report bundle
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
.... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string The value that is unique
Example General: 123456
... type SΣ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Fixed Value: document
... Slices for entry ΣC 2..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by type:resource
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... entry:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Resource A resource in the bundle
.... entry:composition ΣC 1..1 BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 CompositionLabReportEu Laboratory Report composition
.... entry:diagnosticReport ΣC 1..1 BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 DiagnosticReportLabEu Laboratory Report DiagnosticReport
.... entry:patient ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PatientEuLab, PatientAnimalEu Information about an individual or animal receiving health care services
.... entry:observation ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 ObservationResultsLaboratoryEu Laboratory result for a simple test or for a panel/study
.... entry:specimen ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 SpecimenEu Laboratory Specimen
.... entry:serviceRequest ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 ServiceRequestLabEu Laboratory Order
.... entry:organization ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Organization A resource in the bundle
.... entry:practitioner ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PractitionerEu A person with a formal responsibility in the provisioning of healthcare or related services
.... entry:practitionerRole ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PractitionerRoleEu Roles/organizations the practitioner is associated with
.... entry:bodyStructure ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 BodyStructureEuLab Specific and identified anatomical structure
.... entry:encounter ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Encounter A resource in the bundle
.... entry:location ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Location A resource in the bundle
.... entry:provenance ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Provenance A resource in the bundle
.... entry:coverage ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Coverage A resource in the bundle
.... entry:device ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Device A resource in the bundle

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Bundle.type Base required BundleType 📍4.0.1 FHIR Std.
Bundle.entry.request.​method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:composition.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:diagnosticReport.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:patient.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:observation.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:specimen.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:serviceRequest.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:organization.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:practitioner.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:practitionerRole.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:bodyStructure.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:encounter.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:location.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:provenance.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:coverage.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:device.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
bdl-1 error Bundle total only when a search or history total.empty() or (type = 'searchset') or (type = 'history')
bdl-2 error Bundle entry.search only when a search entry.search.empty() or (type = 'searchset')
bdl-3 error Bundle entry.request mandatory for batch/transaction/history, otherwise prohibited entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4 error Bundle entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5 error Bundle.entry, Bundle.entry:composition, Bundle.entry:diagnosticReport, Bundle.entry:patient, Bundle.entry:observation, Bundle.entry:specimen, Bundle.entry:serviceRequest, Bundle.entry:organization, Bundle.entry:practitioner, Bundle.entry:practitionerRole, Bundle.entry:bodyStructure, Bundle.entry:encounter, Bundle.entry:location, Bundle.entry:provenance, Bundle.entry:coverage, Bundle.entry:device must be a resource unless there's a request or response resource.exists() or request.exists() or response.exists()
bdl-7 error Bundle FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:composition, Bundle.entry:diagnosticReport, Bundle.entry:patient, Bundle.entry:observation, Bundle.entry:specimen, Bundle.entry:serviceRequest, Bundle.entry:organization, Bundle.entry:practitioner, Bundle.entry:practitionerRole, Bundle.entry:bodyStructure, Bundle.entry:encounter, Bundle.entry:location, Bundle.entry:provenance, Bundle.entry:coverage, Bundle.entry:device fullUrl cannot be a version specific reference fullUrl.contains('/_history/').not()
bdl-9 error Bundle A document must have an identifier with a system and a value type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10 error Bundle A document must have a date type = 'document' implies (timestamp.hasValue())
bdl-11 error Bundle A document must have a Composition as the first resource type = 'document' implies entry.first().resource.is(Composition)
bdl-12 error Bundle A message must have a MessageHeader as the first resource type = 'message' implies entry.first().resource.is(MessageHeader)
dr-comp-category error Bundle At least one DiagnosticReport.category.coding and Composition.category.coding SHALL be equal (entry.resource.ofType(Composition).category.exists() or entry.resource.ofType(DiagnosticReport).category.exists()) implies entry.resource.ofType(Composition).category.coding.intersect(entry.resource.ofType(DiagnosticReport).category.coding).exists()
dr-comp-enc error Bundle DiagnosticReport and Composition SHALL have the same encounter ( (entry.resource.ofType(Composition).encounter.empty() and entry.resource.ofType(DiagnosticReport).encounter.empty() ) or entry.resource.ofType(Composition).encounter = entry.resource.ofType(DiagnosticReport).encounter )
dr-comp-identifier error Bundle If one or more DiagnosticReport.identifiers are given, at least one of them SHALL be equal to the Composition.identifier (entry.resource.ofType(Composition).identifier.exists() or entry.resource.ofType(DiagnosticReport).identifier.exists()) implies entry.resource.ofType(Composition).identifier.intersect(entry.resource.ofType(DiagnosticReport).identifier).exists()
dr-comp-subj error Bundle DiagnosticReport and Composition SHALL have the same subject ( (entry.resource.ofType(Composition).subject.empty() and entry.resource.ofType(DiagnosticReport).subject.empty() ) or entry.resource.ofType(Composition).subject = entry.resource.ofType(DiagnosticReport).subject )
dr-comp-type error Bundle At least one DiagnosticReport.code.coding and Composition.type.coding SHALL be equal entry.resource.ofType(Composition).type.coding.intersect(entry.resource.ofType(DiagnosticReport).code.coding).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()
one-comp error Bundle A laboratory report bundle SHALL include one and only one Composition entry.resource.ofType(Composition).count() = 1
one-dr error Bundle A laboratory report SHALL include one and only one DiagnosticReport entry.resource.ofType(DiagnosticReport).count() = 1

Differential View

This structure is derived from BundleLabReportEu

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle 0..* BundleLabReportEu Laboratory Report bundle
... identifier S 1..1 Identifier Persistent identifier for this laboratory report bundle
.... system S 1..1 uri The namespace for the identifier value
.... value S 1..1 string The value that is unique
... type S 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Fixed Value: document
... timestamp S 1..1 instant Date/time the bundle was assembled

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* BundleLabReportEu Laboratory Report bundle
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, one-comp, one-dr, dr-comp-identifier, dr-comp-type, dr-comp-category, dr-comp-subj, dr-comp-enc
... 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
... identifier SΣ 1..1 Identifier Persistent identifier for this laboratory report bundle
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
.... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string The value that is unique
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... type SΣ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Fixed Value: document
... timestamp SΣ 1..1 instant Date/time the bundle was assembled
... Slices for entry ΣC 2..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by type:resource
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... entry:All Slices Content/Rules for all slices
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Resource A resource in the bundle
.... entry:composition ΣC 1..1 BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 CompositionLabReportEu Laboratory Report composition
.... entry:diagnosticReport ΣC 1..1 BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 DiagnosticReportLabEu Laboratory Report DiagnosticReport
.... entry:patient ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PatientEuLab, PatientAnimalEu Information about an individual or animal receiving health care services
.... entry:observation ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 ObservationResultsLaboratoryEu Laboratory result for a simple test or for a panel/study
.... entry:specimen ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 SpecimenEu Laboratory Specimen
.... entry:serviceRequest ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 ServiceRequestLabEu Laboratory Order
.... entry:organization ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Organization A resource in the bundle
.... entry:practitioner ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PractitionerEu A person with a formal responsibility in the provisioning of healthcare or related services
.... entry:practitionerRole ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PractitionerRoleEu Roles/organizations the practitioner is associated with
.... entry:bodyStructure ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 BodyStructureEuLab Specific and identified anatomical structure
.... entry:encounter ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Encounter A resource in the bundle
.... entry:location ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Location A resource in the bundle
.... entry:provenance ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Provenance A resource in the bundle
.... entry:coverage ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Coverage A resource in the bundle
.... entry:device ΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... fullUrl Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource Σ 1..1 Device A resource in the bundle
... signature Σ 0..1 Signature Digital Signature of this report

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.language Base preferred Common Languages 📦4.0.1 FHIR Std.
Bundle.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Bundle.identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Bundle.type Base required BundleType 📍4.0.1 FHIR Std.
Bundle.entry.search.​mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry.request.​method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:composition.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:composition.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:diagnosticReport.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:diagnosticReport.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:patient.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:patient.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:observation.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:observation.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:specimen.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:specimen.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:serviceRequest.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:serviceRequest.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:organization.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:organization.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:practitioner.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:practitioner.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:practitionerRole.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:practitionerRole.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:bodyStructure.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:bodyStructure.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:encounter.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:encounter.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:location.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:location.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:provenance.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:provenance.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:coverage.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:coverage.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:device.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:device.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
bdl-1 error Bundle total only when a search or history total.empty() or (type = 'searchset') or (type = 'history')
bdl-2 error Bundle entry.search only when a search entry.search.empty() or (type = 'searchset')
bdl-3 error Bundle entry.request mandatory for batch/transaction/history, otherwise prohibited entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4 error Bundle entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5 error Bundle.entry, Bundle.entry:composition, Bundle.entry:diagnosticReport, Bundle.entry:patient, Bundle.entry:observation, Bundle.entry:specimen, Bundle.entry:serviceRequest, Bundle.entry:organization, Bundle.entry:practitioner, Bundle.entry:practitionerRole, Bundle.entry:bodyStructure, Bundle.entry:encounter, Bundle.entry:location, Bundle.entry:provenance, Bundle.entry:coverage, Bundle.entry:device must be a resource unless there's a request or response resource.exists() or request.exists() or response.exists()
bdl-7 error Bundle FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:composition, Bundle.entry:diagnosticReport, Bundle.entry:patient, Bundle.entry:observation, Bundle.entry:specimen, Bundle.entry:serviceRequest, Bundle.entry:organization, Bundle.entry:practitioner, Bundle.entry:practitionerRole, Bundle.entry:bodyStructure, Bundle.entry:encounter, Bundle.entry:location, Bundle.entry:provenance, Bundle.entry:coverage, Bundle.entry:device fullUrl cannot be a version specific reference fullUrl.contains('/_history/').not()
bdl-9 error Bundle A document must have an identifier with a system and a value type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10 error Bundle A document must have a date type = 'document' implies (timestamp.hasValue())
bdl-11 error Bundle A document must have a Composition as the first resource type = 'document' implies entry.first().resource.is(Composition)
bdl-12 error Bundle A message must have a MessageHeader as the first resource type = 'message' implies entry.first().resource.is(MessageHeader)
dr-comp-category error Bundle At least one DiagnosticReport.category.coding and Composition.category.coding SHALL be equal (entry.resource.ofType(Composition).category.exists() or entry.resource.ofType(DiagnosticReport).category.exists()) implies entry.resource.ofType(Composition).category.coding.intersect(entry.resource.ofType(DiagnosticReport).category.coding).exists()
dr-comp-enc error Bundle DiagnosticReport and Composition SHALL have the same encounter ( (entry.resource.ofType(Composition).encounter.empty() and entry.resource.ofType(DiagnosticReport).encounter.empty() ) or entry.resource.ofType(Composition).encounter = entry.resource.ofType(DiagnosticReport).encounter )
dr-comp-identifier error Bundle If one or more DiagnosticReport.identifiers are given, at least one of them SHALL be equal to the Composition.identifier (entry.resource.ofType(Composition).identifier.exists() or entry.resource.ofType(DiagnosticReport).identifier.exists()) implies entry.resource.ofType(Composition).identifier.intersect(entry.resource.ofType(DiagnosticReport).identifier).exists()
dr-comp-subj error Bundle DiagnosticReport and Composition SHALL have the same subject ( (entry.resource.ofType(Composition).subject.empty() and entry.resource.ofType(DiagnosticReport).subject.empty() ) or entry.resource.ofType(Composition).subject = entry.resource.ofType(DiagnosticReport).subject )
dr-comp-type error Bundle At least one DiagnosticReport.code.coding and Composition.type.coding SHALL be equal entry.resource.ofType(Composition).type.coding.intersect(entry.resource.ofType(DiagnosticReport).code.coding).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()
one-comp error Bundle A laboratory report bundle SHALL include one and only one Composition entry.resource.ofType(Composition).count() = 1
one-dr error Bundle A laboratory report SHALL include one and only one DiagnosticReport entry.resource.ofType(DiagnosticReport).count() = 1

This structure is derived from BundleLabReportEu

Summary

Mandatory: 2 elements
Must-Support: 5 elements
Fixed: 1 element

 

Other representations of profile: CSV, Excel, Schematron