IDEA4RC FHIR Implementation Guide
0.1.0 - CI Build 150

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

Resource Profile: Bundle: IDEA4RC

Official URL: http://hl7.eu/fhir/ig/idea4rc/StructureDefinition/Bundle-eu-i4rc Version: 0.1.0
Draft as of 2025-06-27 Computable Name: BundleI4rc

This profile defines how to represent a Bundle in FHIR for the purpose of the IDEA4RC project.

Usages:

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

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... type Σ 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.
Required Pattern: collection
... timestamp Σ 1..1 instant When the bundle was assembled
.... 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: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 Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PatientI4rc Information about an individual receiving health care services
.... entry:condition ΣC 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 ConditionPrimaryCancerI4rc, ConditionSecondaryCancerI4rc Detailed information about conditions, problems or diagnoses
.... 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 Observation A resource in the bundle
.... 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 EncounterI4rc An interaction during which services are provided to the patient
.... entry:episodeOfCare Σ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 EpisodeOfCareI4rc An association of a Patient with an Organization and Healthcare Provider(s) for a period of time that the Organization assumes some level of responsibility
.... entry:procedure-radio Σ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 ProcedureRadiotherapyI4rc An action that is being or was performed on a patient
.... entry:procedure-surgery Σ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 ProcedureSurgeryI4rc An action that is being or was performed on a patient
.... entry:medicationAdministration Σ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 MedicationAdministrationI4rc Administration of medication to a patient

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Bundle.typerequiredPattern Value: collection
http://hl7.org/fhir/ValueSet/bundle-type|4.0.1
From the FHIR Standard
Bundle.entry.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:patient.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:condition.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:observation.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:encounter.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:episodeOfCare.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:procedure-radio.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:procedure-surgery.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:medicationAdministration.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
bdl-1errorBundletotal only when a search or history
: total.empty() or (type = 'searchset') or (type = 'history')
bdl-2errorBundleentry.search only when a search
: entry.search.empty() or (type = 'searchset')
bdl-3errorBundleentry.request mandatory for batch/transaction/history, otherwise prohibited
: entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4errorBundleentry.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-5errorBundle.entry, Bundle.entry:patient, Bundle.entry:condition, Bundle.entry:observation, Bundle.entry:encounter, Bundle.entry:episodeOfCare, Bundle.entry:procedure-radio, Bundle.entry:procedure-surgery, Bundle.entry:medicationAdministrationmust be a resource unless there's a request or response
: resource.exists() or request.exists() or response.exists()
bdl-7errorBundleFullUrl 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-8errorBundle.entry, Bundle.entry:patient, Bundle.entry:condition, Bundle.entry:observation, Bundle.entry:encounter, Bundle.entry:episodeOfCare, Bundle.entry:procedure-radio, Bundle.entry:procedure-surgery, Bundle.entry:medicationAdministrationfullUrl cannot be a version specific reference
: fullUrl.contains('/_history/').not()
bdl-9errorBundleA document must have an identifier with a system and a value
: type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10errorBundleA document must have a date
: type = 'document' implies (timestamp.hasValue())
bdl-11errorBundleA document must have a Composition as the first resource
: type = 'document' implies entry.first().resource.is(Composition)
bdl-12errorBundleA message must have a MessageHeader as the first resource
: type = 'message' implies entry.first().resource.is(MessageHeader)
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Bundle

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle 0..* Bundle Contains a collection of resources
... type 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Required Pattern: collection
... timestamp 1..1 instant When the bundle was assembled
... total 0..0
... Slices for entry 2..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by value:resource
.... entry:All Slices Content/Rules for all slices
..... link 0..0
..... 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
..... search 0..0
..... request 0..0
..... response 0..0
.... entry:patient 1..1 BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 PatientI4rc Information about an individual receiving health care services
.... entry:condition 1..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 ConditionPrimaryCancerI4rc, ConditionSecondaryCancerI4rc Detailed information about conditions, problems or diagnoses
.... entry:observation 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 Observation A resource in the bundle
.... entry:encounter 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 EncounterI4rc An interaction during which services are provided to the patient
.... entry:episodeOfCare 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 EpisodeOfCareI4rc An association of a Patient with an Organization and Healthcare Provider(s) for a period of time that the Organization assumes some level of responsibility
.... entry:procedure-radio 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 ProcedureRadiotherapyI4rc An action that is being or was performed on a patient
.... entry:procedure-surgery 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 ProcedureSurgeryI4rc An action that is being or was performed on a patient
.... entry:medicationAdministration 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 MedicationAdministrationI4rc Administration of medication to a patient

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12
... 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 Σ 0..1 Identifier Persistent identifier for the bundle
... type Σ 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.
Required Pattern: collection
... timestamp Σ 1..1 instant When the bundle was assembled
... Slices for entry ΣC 2..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by value: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: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 Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PatientI4rc Information about an individual receiving health care services
.... entry:condition ΣC 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 ConditionPrimaryCancerI4rc, ConditionSecondaryCancerI4rc Detailed information about conditions, problems or diagnoses
.... 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 Observation A resource in the bundle
.... 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 EncounterI4rc An interaction during which services are provided to the patient
.... entry:episodeOfCare Σ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 EpisodeOfCareI4rc An association of a Patient with an Organization and Healthcare Provider(s) for a period of time that the Organization assumes some level of responsibility
.... entry:procedure-radio Σ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 ProcedureRadiotherapyI4rc An action that is being or was performed on a patient
.... entry:procedure-surgery Σ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 ProcedureSurgeryI4rc An action that is being or was performed on a patient
.... entry:medicationAdministration Σ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 MedicationAdministrationI4rc Administration of medication to a patient
... signature Σ 0..1 Signature Digital Signature

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Bundle.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Bundle.typerequiredPattern Value: collection
http://hl7.org/fhir/ValueSet/bundle-type|4.0.1
From the FHIR Standard
Bundle.entry.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:patient.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:patient.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:condition.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:condition.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:observation.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:observation.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:encounter.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:encounter.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:episodeOfCare.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:episodeOfCare.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:procedure-radio.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:procedure-radio.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:procedure-surgery.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:procedure-surgery.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:medicationAdministration.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:medicationAdministration.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
bdl-1errorBundletotal only when a search or history
: total.empty() or (type = 'searchset') or (type = 'history')
bdl-2errorBundleentry.search only when a search
: entry.search.empty() or (type = 'searchset')
bdl-3errorBundleentry.request mandatory for batch/transaction/history, otherwise prohibited
: entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4errorBundleentry.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-5errorBundle.entry, Bundle.entry:patient, Bundle.entry:condition, Bundle.entry:observation, Bundle.entry:encounter, Bundle.entry:episodeOfCare, Bundle.entry:procedure-radio, Bundle.entry:procedure-surgery, Bundle.entry:medicationAdministrationmust be a resource unless there's a request or response
: resource.exists() or request.exists() or response.exists()
bdl-7errorBundleFullUrl 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-8errorBundle.entry, Bundle.entry:patient, Bundle.entry:condition, Bundle.entry:observation, Bundle.entry:encounter, Bundle.entry:episodeOfCare, Bundle.entry:procedure-radio, Bundle.entry:procedure-surgery, Bundle.entry:medicationAdministrationfullUrl cannot be a version specific reference
: fullUrl.contains('/_history/').not()
bdl-9errorBundleA document must have an identifier with a system and a value
: type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10errorBundleA document must have a date
: type = 'document' implies (timestamp.hasValue())
bdl-11errorBundleA document must have a Composition as the first resource
: type = 'document' implies entry.first().resource.is(Composition)
bdl-12errorBundleA message must have a MessageHeader as the first resource
: type = 'message' implies entry.first().resource.is(MessageHeader)
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... type Σ 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.
Required Pattern: collection
... timestamp Σ 1..1 instant When the bundle was assembled
.... 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: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 Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PatientI4rc Information about an individual receiving health care services
.... entry:condition ΣC 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 ConditionPrimaryCancerI4rc, ConditionSecondaryCancerI4rc Detailed information about conditions, problems or diagnoses
.... 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 Observation A resource in the bundle
.... 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 EncounterI4rc An interaction during which services are provided to the patient
.... entry:episodeOfCare Σ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 EpisodeOfCareI4rc An association of a Patient with an Organization and Healthcare Provider(s) for a period of time that the Organization assumes some level of responsibility
.... entry:procedure-radio Σ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 ProcedureRadiotherapyI4rc An action that is being or was performed on a patient
.... entry:procedure-surgery Σ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 ProcedureSurgeryI4rc An action that is being or was performed on a patient
.... entry:medicationAdministration Σ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 MedicationAdministrationI4rc Administration of medication to a patient

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Bundle.typerequiredPattern Value: collection
http://hl7.org/fhir/ValueSet/bundle-type|4.0.1
From the FHIR Standard
Bundle.entry.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:patient.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:condition.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:observation.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:encounter.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:episodeOfCare.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:procedure-radio.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:procedure-surgery.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:medicationAdministration.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
bdl-1errorBundletotal only when a search or history
: total.empty() or (type = 'searchset') or (type = 'history')
bdl-2errorBundleentry.search only when a search
: entry.search.empty() or (type = 'searchset')
bdl-3errorBundleentry.request mandatory for batch/transaction/history, otherwise prohibited
: entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4errorBundleentry.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-5errorBundle.entry, Bundle.entry:patient, Bundle.entry:condition, Bundle.entry:observation, Bundle.entry:encounter, Bundle.entry:episodeOfCare, Bundle.entry:procedure-radio, Bundle.entry:procedure-surgery, Bundle.entry:medicationAdministrationmust be a resource unless there's a request or response
: resource.exists() or request.exists() or response.exists()
bdl-7errorBundleFullUrl 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-8errorBundle.entry, Bundle.entry:patient, Bundle.entry:condition, Bundle.entry:observation, Bundle.entry:encounter, Bundle.entry:episodeOfCare, Bundle.entry:procedure-radio, Bundle.entry:procedure-surgery, Bundle.entry:medicationAdministrationfullUrl cannot be a version specific reference
: fullUrl.contains('/_history/').not()
bdl-9errorBundleA document must have an identifier with a system and a value
: type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10errorBundleA document must have a date
: type = 'document' implies (timestamp.hasValue())
bdl-11errorBundleA document must have a Composition as the first resource
: type = 'document' implies entry.first().resource.is(Composition)
bdl-12errorBundleA message must have a MessageHeader as the first resource
: type = 'message' implies entry.first().resource.is(MessageHeader)
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Differential View

This structure is derived from Bundle

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle 0..* Bundle Contains a collection of resources
... type 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Required Pattern: collection
... timestamp 1..1 instant When the bundle was assembled
... total 0..0
... Slices for entry 2..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by value:resource
.... entry:All Slices Content/Rules for all slices
..... link 0..0
..... 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
..... search 0..0
..... request 0..0
..... response 0..0
.... entry:patient 1..1 BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 PatientI4rc Information about an individual receiving health care services
.... entry:condition 1..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 ConditionPrimaryCancerI4rc, ConditionSecondaryCancerI4rc Detailed information about conditions, problems or diagnoses
.... entry:observation 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 Observation A resource in the bundle
.... entry:encounter 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 EncounterI4rc An interaction during which services are provided to the patient
.... entry:episodeOfCare 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 EpisodeOfCareI4rc An association of a Patient with an Organization and Healthcare Provider(s) for a period of time that the Organization assumes some level of responsibility
.... entry:procedure-radio 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 ProcedureRadiotherapyI4rc An action that is being or was performed on a patient
.... entry:procedure-surgery 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 ProcedureSurgeryI4rc An action that is being or was performed on a patient
.... entry:medicationAdministration 0..* BackboneElement Entry in the bundle - will have a resource or information
..... resource 1..1 MedicationAdministrationI4rc Administration of medication to a patient

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12
... 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 Σ 0..1 Identifier Persistent identifier for the bundle
... type Σ 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.
Required Pattern: collection
... timestamp Σ 1..1 instant When the bundle was assembled
... Slices for entry ΣC 2..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by value: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: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 Σ 1..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource 1..1 PatientI4rc Information about an individual receiving health care services
.... entry:condition ΣC 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 ConditionPrimaryCancerI4rc, ConditionSecondaryCancerI4rc Detailed information about conditions, problems or diagnoses
.... 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 Observation A resource in the bundle
.... 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 EncounterI4rc An interaction during which services are provided to the patient
.... entry:episodeOfCare Σ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 EpisodeOfCareI4rc An association of a Patient with an Organization and Healthcare Provider(s) for a period of time that the Organization assumes some level of responsibility
.... entry:procedure-radio Σ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 ProcedureRadiotherapyI4rc An action that is being or was performed on a patient
.... entry:procedure-surgery Σ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 ProcedureSurgeryI4rc An action that is being or was performed on a patient
.... entry:medicationAdministration Σ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 MedicationAdministrationI4rc Administration of medication to a patient
... signature Σ 0..1 Signature Digital Signature

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Bundle.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Bundle.typerequiredPattern Value: collection
http://hl7.org/fhir/ValueSet/bundle-type|4.0.1
From the FHIR Standard
Bundle.entry.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:patient.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:patient.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:condition.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:condition.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:observation.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:observation.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:encounter.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:encounter.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:episodeOfCare.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:episodeOfCare.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:procedure-radio.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:procedure-radio.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:procedure-surgery.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:procedure-surgery.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard
Bundle.entry:medicationAdministration.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1
From the FHIR Standard
Bundle.entry:medicationAdministration.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
bdl-1errorBundletotal only when a search or history
: total.empty() or (type = 'searchset') or (type = 'history')
bdl-2errorBundleentry.search only when a search
: entry.search.empty() or (type = 'searchset')
bdl-3errorBundleentry.request mandatory for batch/transaction/history, otherwise prohibited
: entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4errorBundleentry.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-5errorBundle.entry, Bundle.entry:patient, Bundle.entry:condition, Bundle.entry:observation, Bundle.entry:encounter, Bundle.entry:episodeOfCare, Bundle.entry:procedure-radio, Bundle.entry:procedure-surgery, Bundle.entry:medicationAdministrationmust be a resource unless there's a request or response
: resource.exists() or request.exists() or response.exists()
bdl-7errorBundleFullUrl 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-8errorBundle.entry, Bundle.entry:patient, Bundle.entry:condition, Bundle.entry:observation, Bundle.entry:encounter, Bundle.entry:episodeOfCare, Bundle.entry:procedure-radio, Bundle.entry:procedure-surgery, Bundle.entry:medicationAdministrationfullUrl cannot be a version specific reference
: fullUrl.contains('/_history/').not()
bdl-9errorBundleA document must have an identifier with a system and a value
: type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10errorBundleA document must have a date
: type = 'document' implies (timestamp.hasValue())
bdl-11errorBundleA document must have a Composition as the first resource
: type = 'document' implies entry.first().resource.is(Composition)
bdl-12errorBundleA message must have a MessageHeader as the first resource
: type = 'message' implies entry.first().resource.is(MessageHeader)
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

 

Other representations of profile: CSV, Excel, Schematron