HL7 Europe Imaging Report R5
0.1.1-build - 150

HL7 Europe Imaging Report R5, published by HL7 Europe. This guide is not an authorized publication; it is the continuous build for version 0.1.1-build built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7-eu/imaging-r5/ and changes regularly. See the Directory of published versions

Resource Profile: Bundle: Imaging Report

Official URL: http://hl7.eu/fhir/imaging-r5/StructureDefinition/BundleReportEuImaging Version: 0.1.1-build
Standards status: Draft Draft as of 2025-10-20 Maturity Level: 1 Computable Name: BundleReportEuImaging

Copyright/Legal: Copyright HL7 Europe. Licensed under Creative Commons public domain (CC0 1.0).

Document Bundle for Imaging Report

Usages:

  • This Profile is not used by any profiles in this Implementation Guide

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, bdl-13, bdl-14, bdl-15, bdl-16, bdl-17, bdl-18, bdl-3a, bdl-3b, bdl-3c, bdl-3d, dr-comp-author-org
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... type ΣC 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Required Pattern: document
... Slices for entry ΣC 3..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by profile: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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource ΣC 1..1 Resource A resource in the bundle
.... entry:CompositionEuImaging Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 CompositionEuImaging Imaging Report composition
.... entry:DiagnosticReportEuImaging Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 DiagnosticReportEuImaging A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
.... entry:patient Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 PatientEuCore Information about an individual or animal receiving health care services

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.type Base required Bundle Type 📍5.0.0 FHIR Std.
Bundle.link.relation Base required Link Relation Types 📍5.0.0 FHIR Std.
Bundle.entry.request.​method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:CompositionEuImaging.​request.method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:DiagnosticReportEuImaging.​request.method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:patient.​request.method Base required H T T P Verb 📍5.0.0 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 (type = 'searchset') or entry.search.empty()
bdl-5 error Bundle.entry, Bundle.entry:CompositionEuImaging, Bundle.entry:DiagnosticReportEuImaging, Bundle.entry:patient 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&iif(resource.meta.versionId.exists(), resource.meta.versionId, '')).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:CompositionEuImaging, Bundle.entry:DiagnosticReportEuImaging, Bundle.entry:patient fullUrl cannot be a version specific reference fullUrl.exists() implies 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)
bdl-13 error Bundle A subscription-notification must have a SubscriptionStatus as the first resource type = 'subscription-notification' implies entry.first().resource.is(SubscriptionStatus)
bdl-14 error Bundle entry.request.method PATCH not allowed for history type = 'history' implies entry.request.method != 'PATCH'
bdl-15 error Bundle Bundle resources where type is not transaction, transaction-response, batch, or batch-response or when the request is a POST SHALL have Bundle.entry.fullUrl populated type='transaction' or type='transaction-response' or type='batch' or type='batch-response' or entry.all(fullUrl.exists() or request.method='POST')
bdl-16 error Bundle Issue.severity for all issues within the OperationOutcome must be either 'information' or 'warning'. issues.exists() implies (issues.issue.severity = 'information' or issues.issue.severity = 'warning')
bdl-17 error Bundle Use and meaning of issues for documents has not been validated because the content will not be rendered in the document. type = 'document' implies issues.empty()
bdl-18 error Bundle Self link is required for searchsets. type = 'searchset' implies link.where(relation = 'self' and url.exists()).exists()
bdl-3a error Bundle For collections of type document, message, searchset or collection, all entries must contain resources, and not have request or response elements type in ('document' | 'message' | 'searchset' | 'collection') implies entry.all(resource.exists() and request.empty() and response.empty())
bdl-3b error Bundle For collections of type history, all entries must contain request or response elements, and resources if the method is POST, PUT or PATCH type = 'history' implies entry.all(request.exists() and response.exists() and ((request.method in ('POST' | 'PATCH' | 'PUT')) = resource.exists()))
bdl-3c error Bundle For collections of type transaction or batch, all entries must contain request elements, and resources if the method is POST, PUT or PATCH type in ('transaction' | 'batch') implies entry.all(request.method.exists() and ((request.method in ('POST' | 'PATCH' | 'PUT')) = resource.exists()))
bdl-3d error Bundle For collections of type transaction-response or batch-response, all entries must contain response elements type in ('transaction-response' | 'batch-response') implies entry.all(response.exists())
dr-comp-author-org error Bundle DiagnosticReport and Composition SHALL have the same author Organization Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization) = Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization) or (Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization).empty() and Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization).empty())
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle 0..* Bundle Contains a collection of resources
Constraints: dr-comp-author-org
... type 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Required Pattern: document
... total 0..0
... link 0..0
.... entry:All Slices Content/Rules for all slices
..... link 0..0
..... fullUrl 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 Resource A resource in the bundle
..... search 0..0
..... request 0..0
..... response 0..0
.... entry:CompositionEuImaging 1..1 BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 CompositionEuImaging Imaging Report composition
.... entry:DiagnosticReportEuImaging 1..1 BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 DiagnosticReportEuImaging A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
.... entry:patient 1..1 BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 PatientEuCore Information about an individual or animal receiving health care services

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
dr-comp-author-org error Bundle DiagnosticReport and Composition SHALL have the same author Organization Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization) = Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization) or (Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization).empty() and Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization).empty())
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, bdl-13, bdl-14, bdl-15, bdl-16, bdl-17, bdl-18, bdl-3a, bdl-3b, bdl-3c, bdl-3d, dr-comp-author-org
... 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 ΣC 0..1 Identifier Persistent identifier for the bundle
... type ΣC 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Required Pattern: document
... timestamp ΣC 0..1 instant When the bundle was assembled
... Slices for entry ΣC 3..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by profile: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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource ΣC 1..1 Resource A resource in the bundle
.... entry:CompositionEuImaging Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 CompositionEuImaging Imaging Report composition
.... entry:DiagnosticReportEuImaging Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 DiagnosticReportEuImaging A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
.... entry:patient Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 PatientEuCore Information about an individual or animal receiving health care services
... signature Σ 0..1 Signature Digital Signature
... issues ΣC 0..1 OperationOutcome(5.0.0) Issues with the Bundle

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.language Base required All Languages 📍5.0.0 FHIR Std.
Bundle.type Base required Bundle Type 📍5.0.0 FHIR Std.
Bundle.link.relation Base required Link Relation Types 📍5.0.0 FHIR Std.
Bundle.entry.search.​mode Base required Search Entry Mode 📍5.0.0 FHIR Std.
Bundle.entry.request.​method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:CompositionEuImaging.​search.mode Base required Search Entry Mode 📍5.0.0 FHIR Std.
Bundle.entry:CompositionEuImaging.​request.method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:DiagnosticReportEuImaging.​search.mode Base required Search Entry Mode 📍5.0.0 FHIR Std.
Bundle.entry:DiagnosticReportEuImaging.​request.method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:patient.​search.mode Base required Search Entry Mode 📍5.0.0 FHIR Std.
Bundle.entry:patient.​request.method Base required H T T P Verb 📍5.0.0 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 (type = 'searchset') or entry.search.empty()
bdl-5 error Bundle.entry, Bundle.entry:CompositionEuImaging, Bundle.entry:DiagnosticReportEuImaging, Bundle.entry:patient 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&iif(resource.meta.versionId.exists(), resource.meta.versionId, '')).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:CompositionEuImaging, Bundle.entry:DiagnosticReportEuImaging, Bundle.entry:patient fullUrl cannot be a version specific reference fullUrl.exists() implies 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)
bdl-13 error Bundle A subscription-notification must have a SubscriptionStatus as the first resource type = 'subscription-notification' implies entry.first().resource.is(SubscriptionStatus)
bdl-14 error Bundle entry.request.method PATCH not allowed for history type = 'history' implies entry.request.method != 'PATCH'
bdl-15 error Bundle Bundle resources where type is not transaction, transaction-response, batch, or batch-response or when the request is a POST SHALL have Bundle.entry.fullUrl populated type='transaction' or type='transaction-response' or type='batch' or type='batch-response' or entry.all(fullUrl.exists() or request.method='POST')
bdl-16 error Bundle Issue.severity for all issues within the OperationOutcome must be either 'information' or 'warning'. issues.exists() implies (issues.issue.severity = 'information' or issues.issue.severity = 'warning')
bdl-17 error Bundle Use and meaning of issues for documents has not been validated because the content will not be rendered in the document. type = 'document' implies issues.empty()
bdl-18 error Bundle Self link is required for searchsets. type = 'searchset' implies link.where(relation = 'self' and url.exists()).exists()
bdl-3a error Bundle For collections of type document, message, searchset or collection, all entries must contain resources, and not have request or response elements type in ('document' | 'message' | 'searchset' | 'collection') implies entry.all(resource.exists() and request.empty() and response.empty())
bdl-3b error Bundle For collections of type history, all entries must contain request or response elements, and resources if the method is POST, PUT or PATCH type = 'history' implies entry.all(request.exists() and response.exists() and ((request.method in ('POST' | 'PATCH' | 'PUT')) = resource.exists()))
bdl-3c error Bundle For collections of type transaction or batch, all entries must contain request elements, and resources if the method is POST, PUT or PATCH type in ('transaction' | 'batch') implies entry.all(request.method.exists() and ((request.method in ('POST' | 'PATCH' | 'PUT')) = resource.exists()))
bdl-3d error Bundle For collections of type transaction-response or batch-response, all entries must contain response elements type in ('transaction-response' | 'batch-response') implies entry.all(response.exists())
dr-comp-author-org error Bundle DiagnosticReport and Composition SHALL have the same author Organization Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization) = Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization) or (Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization).empty() and Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization).empty())
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

Summary

Mandatory: 5 elements
Prohibited: 6 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Bundle.entry

Maturity: 1

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, bdl-13, bdl-14, bdl-15, bdl-16, bdl-17, bdl-18, bdl-3a, bdl-3b, bdl-3c, bdl-3d, dr-comp-author-org
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... type ΣC 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Required Pattern: document
... Slices for entry ΣC 3..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by profile: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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource ΣC 1..1 Resource A resource in the bundle
.... entry:CompositionEuImaging Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 CompositionEuImaging Imaging Report composition
.... entry:DiagnosticReportEuImaging Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 DiagnosticReportEuImaging A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
.... entry:patient Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 PatientEuCore Information about an individual or animal receiving health care services

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.type Base required Bundle Type 📍5.0.0 FHIR Std.
Bundle.link.relation Base required Link Relation Types 📍5.0.0 FHIR Std.
Bundle.entry.request.​method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:CompositionEuImaging.​request.method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:DiagnosticReportEuImaging.​request.method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:patient.​request.method Base required H T T P Verb 📍5.0.0 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 (type = 'searchset') or entry.search.empty()
bdl-5 error Bundle.entry, Bundle.entry:CompositionEuImaging, Bundle.entry:DiagnosticReportEuImaging, Bundle.entry:patient 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&iif(resource.meta.versionId.exists(), resource.meta.versionId, '')).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:CompositionEuImaging, Bundle.entry:DiagnosticReportEuImaging, Bundle.entry:patient fullUrl cannot be a version specific reference fullUrl.exists() implies 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)
bdl-13 error Bundle A subscription-notification must have a SubscriptionStatus as the first resource type = 'subscription-notification' implies entry.first().resource.is(SubscriptionStatus)
bdl-14 error Bundle entry.request.method PATCH not allowed for history type = 'history' implies entry.request.method != 'PATCH'
bdl-15 error Bundle Bundle resources where type is not transaction, transaction-response, batch, or batch-response or when the request is a POST SHALL have Bundle.entry.fullUrl populated type='transaction' or type='transaction-response' or type='batch' or type='batch-response' or entry.all(fullUrl.exists() or request.method='POST')
bdl-16 error Bundle Issue.severity for all issues within the OperationOutcome must be either 'information' or 'warning'. issues.exists() implies (issues.issue.severity = 'information' or issues.issue.severity = 'warning')
bdl-17 error Bundle Use and meaning of issues for documents has not been validated because the content will not be rendered in the document. type = 'document' implies issues.empty()
bdl-18 error Bundle Self link is required for searchsets. type = 'searchset' implies link.where(relation = 'self' and url.exists()).exists()
bdl-3a error Bundle For collections of type document, message, searchset or collection, all entries must contain resources, and not have request or response elements type in ('document' | 'message' | 'searchset' | 'collection') implies entry.all(resource.exists() and request.empty() and response.empty())
bdl-3b error Bundle For collections of type history, all entries must contain request or response elements, and resources if the method is POST, PUT or PATCH type = 'history' implies entry.all(request.exists() and response.exists() and ((request.method in ('POST' | 'PATCH' | 'PUT')) = resource.exists()))
bdl-3c error Bundle For collections of type transaction or batch, all entries must contain request elements, and resources if the method is POST, PUT or PATCH type in ('transaction' | 'batch') implies entry.all(request.method.exists() and ((request.method in ('POST' | 'PATCH' | 'PUT')) = resource.exists()))
bdl-3d error Bundle For collections of type transaction-response or batch-response, all entries must contain response elements type in ('transaction-response' | 'batch-response') implies entry.all(response.exists())
dr-comp-author-org error Bundle DiagnosticReport and Composition SHALL have the same author Organization Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization) = Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization) or (Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization).empty() and Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization).empty())
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

Differential View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle 0..* Bundle Contains a collection of resources
Constraints: dr-comp-author-org
... type 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Required Pattern: document
... total 0..0
... link 0..0
.... entry:All Slices Content/Rules for all slices
..... link 0..0
..... fullUrl 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 Resource A resource in the bundle
..... search 0..0
..... request 0..0
..... response 0..0
.... entry:CompositionEuImaging 1..1 BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 CompositionEuImaging Imaging Report composition
.... entry:DiagnosticReportEuImaging 1..1 BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 DiagnosticReportEuImaging A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
.... entry:patient 1..1 BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 PatientEuCore Information about an individual or animal receiving health care services

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
dr-comp-author-org error Bundle DiagnosticReport and Composition SHALL have the same author Organization Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization) = Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization) or (Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization).empty() and Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization).empty())

Snapshot ViewView

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, bdl-13, bdl-14, bdl-15, bdl-16, bdl-17, bdl-18, bdl-3a, bdl-3b, bdl-3c, bdl-3d, dr-comp-author-org
... 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 ΣC 0..1 Identifier Persistent identifier for the bundle
... type ΣC 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Required Pattern: document
... timestamp ΣC 0..1 instant When the bundle was assembled
... Slices for entry ΣC 3..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by profile: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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource ΣC 1..1 Resource A resource in the bundle
.... entry:CompositionEuImaging Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 CompositionEuImaging Imaging Report composition
.... entry:DiagnosticReportEuImaging Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 DiagnosticReportEuImaging A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
.... entry:patient Σ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 ΣC 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
..... resource 1..1 PatientEuCore Information about an individual or animal receiving health care services
... signature Σ 0..1 Signature Digital Signature
... issues ΣC 0..1 OperationOutcome(5.0.0) Issues with the Bundle

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.language Base required All Languages 📍5.0.0 FHIR Std.
Bundle.type Base required Bundle Type 📍5.0.0 FHIR Std.
Bundle.link.relation Base required Link Relation Types 📍5.0.0 FHIR Std.
Bundle.entry.search.​mode Base required Search Entry Mode 📍5.0.0 FHIR Std.
Bundle.entry.request.​method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:CompositionEuImaging.​search.mode Base required Search Entry Mode 📍5.0.0 FHIR Std.
Bundle.entry:CompositionEuImaging.​request.method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:DiagnosticReportEuImaging.​search.mode Base required Search Entry Mode 📍5.0.0 FHIR Std.
Bundle.entry:DiagnosticReportEuImaging.​request.method Base required H T T P Verb 📍5.0.0 FHIR Std.
Bundle.entry:patient.​search.mode Base required Search Entry Mode 📍5.0.0 FHIR Std.
Bundle.entry:patient.​request.method Base required H T T P Verb 📍5.0.0 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 (type = 'searchset') or entry.search.empty()
bdl-5 error Bundle.entry, Bundle.entry:CompositionEuImaging, Bundle.entry:DiagnosticReportEuImaging, Bundle.entry:patient 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&iif(resource.meta.versionId.exists(), resource.meta.versionId, '')).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:CompositionEuImaging, Bundle.entry:DiagnosticReportEuImaging, Bundle.entry:patient fullUrl cannot be a version specific reference fullUrl.exists() implies 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)
bdl-13 error Bundle A subscription-notification must have a SubscriptionStatus as the first resource type = 'subscription-notification' implies entry.first().resource.is(SubscriptionStatus)
bdl-14 error Bundle entry.request.method PATCH not allowed for history type = 'history' implies entry.request.method != 'PATCH'
bdl-15 error Bundle Bundle resources where type is not transaction, transaction-response, batch, or batch-response or when the request is a POST SHALL have Bundle.entry.fullUrl populated type='transaction' or type='transaction-response' or type='batch' or type='batch-response' or entry.all(fullUrl.exists() or request.method='POST')
bdl-16 error Bundle Issue.severity for all issues within the OperationOutcome must be either 'information' or 'warning'. issues.exists() implies (issues.issue.severity = 'information' or issues.issue.severity = 'warning')
bdl-17 error Bundle Use and meaning of issues for documents has not been validated because the content will not be rendered in the document. type = 'document' implies issues.empty()
bdl-18 error Bundle Self link is required for searchsets. type = 'searchset' implies link.where(relation = 'self' and url.exists()).exists()
bdl-3a error Bundle For collections of type document, message, searchset or collection, all entries must contain resources, and not have request or response elements type in ('document' | 'message' | 'searchset' | 'collection') implies entry.all(resource.exists() and request.empty() and response.empty())
bdl-3b error Bundle For collections of type history, all entries must contain request or response elements, and resources if the method is POST, PUT or PATCH type = 'history' implies entry.all(request.exists() and response.exists() and ((request.method in ('POST' | 'PATCH' | 'PUT')) = resource.exists()))
bdl-3c error Bundle For collections of type transaction or batch, all entries must contain request elements, and resources if the method is POST, PUT or PATCH type in ('transaction' | 'batch') implies entry.all(request.method.exists() and ((request.method in ('POST' | 'PATCH' | 'PUT')) = resource.exists()))
bdl-3d error Bundle For collections of type transaction-response or batch-response, all entries must contain response elements type in ('transaction-response' | 'batch-response') implies entry.all(response.exists())
dr-comp-author-org error Bundle DiagnosticReport and Composition SHALL have the same author Organization Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization) = Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization) or (Bundle.entry.resource.ofType(DiagnosticReport).performer.resolve().ofType(Organization).empty() and Bundle.entry.resource.ofType(Composition).author.resolve().ofType(Organization).empty())
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

Summary

Mandatory: 5 elements
Prohibited: 6 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Bundle.entry

Maturity: 1

 

Other representations of profile: CSV, Excel, Schematron