TRxHub IG
0.1.0 - ci-build
TRxHub IG - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| Official URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-message-bundle | Version: 0.1.0 | |||
| Draft as of 2026-10-08 | Computable Name: TRxHubMessageBundle | |||
Message Bundle for TRxHub. Not part of the FHIR API
This message bundle is not part of the TRxHub FHIR API and can be ignored by clients.
A message bundle must always contain a MessageHeader as its first entry.
If it's a request message, not a response to a previous message, it must contain another resource apart from the MessageHeader.
A response must only contain a MessageHeader and, if an error occurred, an OperationOutcome.
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() |
|---|---|---|---|---|
![]() |
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, trxhub-msg-1, trxhub-msg-2, trxhub-msg-3, trxhub-msg-4 |
![]() ![]() |
0..1 | uri | A set of rules under which this content was created | |
![]() ![]() |
1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: message | |
![]() ![]() |
1..1 | instant | When the bundle was assembled | |
![]() ![]() |
C | 1..* | BackboneElement | Entry in the bundle - will have a resource or information Slice: Unordered, Closed by type:resource Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
1..1 | uri | TRxHub FHIR base + ResourceType/id, or urn:uuid for resources without a server id (e.g. OperationOutcome) | |
![]() ![]() ![]() ![]() |
1..1 | Resource | A resource in the bundle | |
![]() ![]() ![]() |
C | 1..1 | BackboneElement | The MessageHeader (must be the first entry) 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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMessageHeader |
A resource that describes a message that is exchanged between systems | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubPatient |
Information about an individual or animal receiving health care services | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubCoverage |
Insurance or medical plan or a payment agreement | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubPractitioner |
A person with a formal responsibility in the provisioning of healthcare or related services | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubServiceRequest |
A request for a service to be performed | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationRequest |
Ordering of medication for patient or group | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationDispense |
Dispensing a medication to a named patient | |
![]() ![]() ![]() |
C | 0..* | BackboneElement | Not a defined TRxHub Resource. Simple DocumentReference containing the ePrescription (can only be sent by TRxHub not received) 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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | DocumentReference | A resource in the bundle | |
![]() ![]() ![]() |
C | 0..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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | OperationOutcome | A resource in the bundle | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Bundle.type | Base | required | BundleType | 📍4.0.1 | FHIR Std. |
| Bundle.entry.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:messageHeader.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:patient.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:coverage.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:practitioner.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:serviceRequest.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationRequest.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationDispense.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:ePrescription.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:operationOutcome.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| bdl-1 | error | Bundle | total only when a search or history |
total.empty() or (type = 'searchset') or (type = 'history')
|
| bdl-2 | error | Bundle | entry.search only when a search |
entry.search.empty() or (type = 'searchset')
|
| bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited |
entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
|
| bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited |
entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
|
| bdl-5 | error | Bundle.entry, Bundle.entry:messageHeader, Bundle.entry:patient, Bundle.entry:coverage, Bundle.entry:practitioner, Bundle.entry:serviceRequest, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:ePrescription, Bundle.entry:operationOutcome | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry, Bundle.entry:messageHeader, Bundle.entry:patient, Bundle.entry:coverage, Bundle.entry:practitioner, Bundle.entry:serviceRequest, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:ePrescription, Bundle.entry:operationOutcome | fullUrl cannot be a version specific reference |
fullUrl.contains('/_history/').not()
|
| bdl-9 | error | Bundle | A document must have an identifier with a system and a value |
type = 'document' implies (identifier.system.exists() and identifier.value.exists())
|
| bdl-10 | error | Bundle | A document must have a date |
type = 'document' implies (timestamp.hasValue())
|
| bdl-11 | error | Bundle | A document must have a Composition as the first resource |
type = 'document' implies entry.first().resource.is(Composition)
|
| bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource |
type = 'message' implies entry.first().resource.is(MessageHeader)
|
| 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()
|
| trxhub-msg-1 | error | Bundle | If the MessageHeader references response.details, they must be an OperationOutcome entry in this Bundle. |
entry.resource.ofType(MessageHeader).response.details.reference.exists() implies entry.where(resource is OperationOutcome).fullUrl contains entry.resource.ofType(MessageHeader).response.details.reference
|
| trxhub-msg-2 | error | Bundle | A response message contains only the MessageHeader and optionally an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() implies entry.all(resource is MessageHeader or resource is OperationOutcome)
|
| trxhub-msg-3 | error | Bundle | A request message (without MessageHeader.response) must not contain an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() or entry.resource.ofType(OperationOutcome).empty()
|
| trxhub-msg-4 | error | Bundle | A request message must contain at least one payload resource. |
entry.resource.ofType(MessageHeader).response.exists() or entry.count() > 1
|
This structure is derived from Bundle
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Bundle | Contains a collection of resources Constraints: trxhub-msg-1, trxhub-msg-2, trxhub-msg-3, trxhub-msg-4 |
![]() ![]() |
1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Fixed Value: message | |
![]() ![]() |
1..1 | instant | When the bundle was assembled | |
![]() ![]() |
0..0 | If search, the total number of matches | ||
![]() ![]() |
0..0 | Links related to this Bundle | ||
![]() ![]() |
1..* | BackboneElement | Entry in the bundle - will have a resource or information Slice: Unordered, Closed by type:resource Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them | |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
1..1 | uri | TRxHub FHIR base + ResourceType/id, or urn:uuid for resources without a server id (e.g. OperationOutcome) | |
![]() ![]() ![]() ![]() |
1..1 | Resource | A resource in the bundle | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
1..1 | BackboneElement | The MessageHeader (must be the first entry) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMessageHeader | A resource that describes a message that is exchanged between systems | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubPatient | Information about an individual or animal receiving health care services | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubCoverage | Insurance or medical plan or a payment agreement | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubPractitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubServiceRequest | A request for a service to be performed | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationRequest | Ordering of medication for patient or group | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationDispense | Dispensing a medication to a named patient | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Not a defined TRxHub Resource. Simple DocumentReference containing the ePrescription (can only be sent by TRxHub not received) | |
![]() ![]() ![]() ![]() |
0..1 | DocumentReference | A resource in the bundle | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..1 | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | OperationOutcome | A resource in the bundle | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() |
0..0 | Digital Signature | ||
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| trxhub-msg-1 | error | Bundle | If the MessageHeader references response.details, they must be an OperationOutcome entry in this Bundle. |
entry.resource.ofType(MessageHeader).response.details.reference.exists() implies entry.where(resource is OperationOutcome).fullUrl contains entry.resource.ofType(MessageHeader).response.details.reference
|
| trxhub-msg-2 | error | Bundle | A response message contains only the MessageHeader and optionally an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() implies entry.all(resource is MessageHeader or resource is OperationOutcome)
|
| trxhub-msg-3 | error | Bundle | A request message (without MessageHeader.response) must not contain an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() or entry.resource.ofType(OperationOutcome).empty()
|
| trxhub-msg-4 | error | Bundle | A request message must contain at least one payload resource. |
entry.resource.ofType(MessageHeader).response.exists() or entry.count() > 1
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
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, trxhub-msg-1, trxhub-msg-2, trxhub-msg-3, trxhub-msg-4 | ||||
![]() ![]() |
0..1 | id | Logical id of this artifact | |||||
![]() ![]() |
0..1 | Meta | Metadata about the resource | |||||
![]() ![]() |
0..1 | uri | A set of rules under which this content was created | |||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Identifier | Persistent identifier for the bundle | |||||
![]() ![]() |
1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: message | |||||
![]() ![]() |
1..1 | instant | When the bundle was assembled | |||||
![]() ![]() |
C | 1..* | BackboneElement | Entry in the bundle - will have a resource or information Slice: Unordered, Closed by type:resource Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them | ||||
![]() ![]() ![]() |
Content/Rules for all slices | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
1..1 | uri | TRxHub FHIR base + ResourceType/id, or urn:uuid for resources without a server id (e.g. OperationOutcome) | |||||
![]() ![]() ![]() ![]() |
1..1 | Resource | A resource in the bundle | |||||
![]() ![]() ![]() |
C | 1..1 | BackboneElement | The MessageHeader (must be the first entry) 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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubMessageHeader |
A resource that describes a message that is exchanged between systems | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubPatient |
Information about an individual or animal receiving health care services | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubCoverage |
Insurance or medical plan or a payment agreement | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubPractitioner |
A person with a formal responsibility in the provisioning of healthcare or related services | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubServiceRequest |
A request for a service to be performed | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationRequest |
Ordering of medication for patient or group | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationDispense |
Dispensing a medication to a named patient | |||||
![]() ![]() ![]() |
C | 0..* | BackboneElement | Not a defined TRxHub Resource. Simple DocumentReference containing the ePrescription (can only be sent by TRxHub not received) 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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | DocumentReference | A resource in the bundle | |||||
![]() ![]() ![]() |
C | 0..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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | OperationOutcome | A resource in the bundle | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Bundle.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| Bundle.type | Base | required | BundleType | 📍4.0.1 | FHIR Std. |
| Bundle.entry.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:messageHeader.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:messageHeader.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:patient.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:patient.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:coverage.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:coverage.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:practitioner.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:practitioner.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:serviceRequest.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:serviceRequest.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationRequest.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationRequest.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationDispense.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationDispense.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:ePrescription.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:ePrescription.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:operationOutcome.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:operationOutcome.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| bdl-1 | error | Bundle | total only when a search or history |
total.empty() or (type = 'searchset') or (type = 'history')
|
| bdl-2 | error | Bundle | entry.search only when a search |
entry.search.empty() or (type = 'searchset')
|
| bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited |
entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
|
| bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited |
entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
|
| bdl-5 | error | Bundle.entry, Bundle.entry:messageHeader, Bundle.entry:patient, Bundle.entry:coverage, Bundle.entry:practitioner, Bundle.entry:serviceRequest, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:ePrescription, Bundle.entry:operationOutcome | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry, Bundle.entry:messageHeader, Bundle.entry:patient, Bundle.entry:coverage, Bundle.entry:practitioner, Bundle.entry:serviceRequest, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:ePrescription, Bundle.entry:operationOutcome | fullUrl cannot be a version specific reference |
fullUrl.contains('/_history/').not()
|
| bdl-9 | error | Bundle | A document must have an identifier with a system and a value |
type = 'document' implies (identifier.system.exists() and identifier.value.exists())
|
| bdl-10 | error | Bundle | A document must have a date |
type = 'document' implies (timestamp.hasValue())
|
| bdl-11 | error | Bundle | A document must have a Composition as the first resource |
type = 'document' implies entry.first().resource.is(Composition)
|
| bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource |
type = 'message' implies entry.first().resource.is(MessageHeader)
|
| 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()
|
| trxhub-msg-1 | error | Bundle | If the MessageHeader references response.details, they must be an OperationOutcome entry in this Bundle. |
entry.resource.ofType(MessageHeader).response.details.reference.exists() implies entry.where(resource is OperationOutcome).fullUrl contains entry.resource.ofType(MessageHeader).response.details.reference
|
| trxhub-msg-2 | error | Bundle | A response message contains only the MessageHeader and optionally an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() implies entry.all(resource is MessageHeader or resource is OperationOutcome)
|
| trxhub-msg-3 | error | Bundle | A request message (without MessageHeader.response) must not contain an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() or entry.resource.ofType(OperationOutcome).empty()
|
| trxhub-msg-4 | error | Bundle | A request message must contain at least one payload resource. |
entry.resource.ofType(MessageHeader).response.exists() or entry.count() > 1
|
This structure is derived from Bundle
Summary
Mandatory: 5 elements
Must-Support: 14 elements
Fixed: 1 element
Prohibited: 33 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() |
|---|---|---|---|---|
![]() |
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, trxhub-msg-1, trxhub-msg-2, trxhub-msg-3, trxhub-msg-4 |
![]() ![]() |
0..1 | uri | A set of rules under which this content was created | |
![]() ![]() |
1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: message | |
![]() ![]() |
1..1 | instant | When the bundle was assembled | |
![]() ![]() |
C | 1..* | BackboneElement | Entry in the bundle - will have a resource or information Slice: Unordered, Closed by type:resource Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
1..1 | uri | TRxHub FHIR base + ResourceType/id, or urn:uuid for resources without a server id (e.g. OperationOutcome) | |
![]() ![]() ![]() ![]() |
1..1 | Resource | A resource in the bundle | |
![]() ![]() ![]() |
C | 1..1 | BackboneElement | The MessageHeader (must be the first entry) 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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMessageHeader |
A resource that describes a message that is exchanged between systems | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubPatient |
Information about an individual or animal receiving health care services | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubCoverage |
Insurance or medical plan or a payment agreement | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubPractitioner |
A person with a formal responsibility in the provisioning of healthcare or related services | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubServiceRequest |
A request for a service to be performed | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationRequest |
Ordering of medication for patient or group | |
![]() ![]() ![]() |
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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationDispense |
Dispensing a medication to a named patient | |
![]() ![]() ![]() |
C | 0..* | BackboneElement | Not a defined TRxHub Resource. Simple DocumentReference containing the ePrescription (can only be sent by TRxHub not received) 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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | DocumentReference | A resource in the bundle | |
![]() ![]() ![]() |
C | 0..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 |
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..1 | OperationOutcome | A resource in the bundle | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Bundle.type | Base | required | BundleType | 📍4.0.1 | FHIR Std. |
| Bundle.entry.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:messageHeader.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:patient.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:coverage.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:practitioner.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:serviceRequest.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationRequest.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationDispense.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:ePrescription.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:operationOutcome.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| bdl-1 | error | Bundle | total only when a search or history |
total.empty() or (type = 'searchset') or (type = 'history')
|
| bdl-2 | error | Bundle | entry.search only when a search |
entry.search.empty() or (type = 'searchset')
|
| bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited |
entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
|
| bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited |
entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
|
| bdl-5 | error | Bundle.entry, Bundle.entry:messageHeader, Bundle.entry:patient, Bundle.entry:coverage, Bundle.entry:practitioner, Bundle.entry:serviceRequest, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:ePrescription, Bundle.entry:operationOutcome | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry, Bundle.entry:messageHeader, Bundle.entry:patient, Bundle.entry:coverage, Bundle.entry:practitioner, Bundle.entry:serviceRequest, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:ePrescription, Bundle.entry:operationOutcome | fullUrl cannot be a version specific reference |
fullUrl.contains('/_history/').not()
|
| bdl-9 | error | Bundle | A document must have an identifier with a system and a value |
type = 'document' implies (identifier.system.exists() and identifier.value.exists())
|
| bdl-10 | error | Bundle | A document must have a date |
type = 'document' implies (timestamp.hasValue())
|
| bdl-11 | error | Bundle | A document must have a Composition as the first resource |
type = 'document' implies entry.first().resource.is(Composition)
|
| bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource |
type = 'message' implies entry.first().resource.is(MessageHeader)
|
| 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()
|
| trxhub-msg-1 | error | Bundle | If the MessageHeader references response.details, they must be an OperationOutcome entry in this Bundle. |
entry.resource.ofType(MessageHeader).response.details.reference.exists() implies entry.where(resource is OperationOutcome).fullUrl contains entry.resource.ofType(MessageHeader).response.details.reference
|
| trxhub-msg-2 | error | Bundle | A response message contains only the MessageHeader and optionally an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() implies entry.all(resource is MessageHeader or resource is OperationOutcome)
|
| trxhub-msg-3 | error | Bundle | A request message (without MessageHeader.response) must not contain an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() or entry.resource.ofType(OperationOutcome).empty()
|
| trxhub-msg-4 | error | Bundle | A request message must contain at least one payload resource. |
entry.resource.ofType(MessageHeader).response.exists() or entry.count() > 1
|
Differential View
This structure is derived from Bundle
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Bundle | Contains a collection of resources Constraints: trxhub-msg-1, trxhub-msg-2, trxhub-msg-3, trxhub-msg-4 |
![]() ![]() |
1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Fixed Value: message | |
![]() ![]() |
1..1 | instant | When the bundle was assembled | |
![]() ![]() |
0..0 | If search, the total number of matches | ||
![]() ![]() |
0..0 | Links related to this Bundle | ||
![]() ![]() |
1..* | BackboneElement | Entry in the bundle - will have a resource or information Slice: Unordered, Closed by type:resource Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them | |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
1..1 | uri | TRxHub FHIR base + ResourceType/id, or urn:uuid for resources without a server id (e.g. OperationOutcome) | |
![]() ![]() ![]() ![]() |
1..1 | Resource | A resource in the bundle | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
1..1 | BackboneElement | The MessageHeader (must be the first entry) | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMessageHeader | A resource that describes a message that is exchanged between systems | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubPatient | Information about an individual or animal receiving health care services | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubCoverage | Insurance or medical plan or a payment agreement | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubPractitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubServiceRequest | A request for a service to be performed | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationRequest | Ordering of medication for patient or group | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationDispense | Dispensing a medication to a named patient | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..* | BackboneElement | Not a defined TRxHub Resource. Simple DocumentReference containing the ePrescription (can only be sent by TRxHub not received) | |
![]() ![]() ![]() ![]() |
0..1 | DocumentReference | A resource in the bundle | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
0..1 | BackboneElement | Entry in the bundle - will have a resource or information | |
![]() ![]() ![]() ![]() |
0..1 | OperationOutcome | A resource in the bundle | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() |
0..0 | Digital Signature | ||
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| trxhub-msg-1 | error | Bundle | If the MessageHeader references response.details, they must be an OperationOutcome entry in this Bundle. |
entry.resource.ofType(MessageHeader).response.details.reference.exists() implies entry.where(resource is OperationOutcome).fullUrl contains entry.resource.ofType(MessageHeader).response.details.reference
|
| trxhub-msg-2 | error | Bundle | A response message contains only the MessageHeader and optionally an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() implies entry.all(resource is MessageHeader or resource is OperationOutcome)
|
| trxhub-msg-3 | error | Bundle | A request message (without MessageHeader.response) must not contain an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() or entry.resource.ofType(OperationOutcome).empty()
|
| trxhub-msg-4 | error | Bundle | A request message must contain at least one payload resource. |
entry.resource.ofType(MessageHeader).response.exists() or entry.count() > 1
|
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
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, trxhub-msg-1, trxhub-msg-2, trxhub-msg-3, trxhub-msg-4 | ||||
![]() ![]() |
0..1 | id | Logical id of this artifact | |||||
![]() ![]() |
0..1 | Meta | Metadata about the resource | |||||
![]() ![]() |
0..1 | uri | A set of rules under which this content was created | |||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Identifier | Persistent identifier for the bundle | |||||
![]() ![]() |
1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: message | |||||
![]() ![]() |
1..1 | instant | When the bundle was assembled | |||||
![]() ![]() |
C | 1..* | BackboneElement | Entry in the bundle - will have a resource or information Slice: Unordered, Closed by type:resource Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them | ||||
![]() ![]() ![]() |
Content/Rules for all slices | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
1..1 | uri | TRxHub FHIR base + ResourceType/id, or urn:uuid for resources without a server id (e.g. OperationOutcome) | |||||
![]() ![]() ![]() ![]() |
1..1 | Resource | A resource in the bundle | |||||
![]() ![]() ![]() |
C | 1..1 | BackboneElement | The MessageHeader (must be the first entry) 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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubMessageHeader |
A resource that describes a message that is exchanged between systems | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubPatient |
Information about an individual or animal receiving health care services | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubCoverage |
Insurance or medical plan or a payment agreement | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubPractitioner |
A person with a formal responsibility in the provisioning of healthcare or related services | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubServiceRequest |
A request for a service to be performed | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationRequest |
Ordering of medication for patient or group | |||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | TRxHubMedicationDispense |
Dispensing a medication to a named patient | |||||
![]() ![]() ![]() |
C | 0..* | BackboneElement | Not a defined TRxHub Resource. Simple DocumentReference containing the ePrescription (can only be sent by TRxHub not received) 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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | DocumentReference | A resource in the bundle | |||||
![]() ![]() ![]() |
C | 0..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 | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() ![]() |
0..* | See link (Bundle) | Links related to this entry | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |||||
![]() ![]() ![]() ![]() |
0..1 | OperationOutcome | A resource in the bundle | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Bundle.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| Bundle.type | Base | required | BundleType | 📍4.0.1 | FHIR Std. |
| Bundle.entry.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:messageHeader.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:messageHeader.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:patient.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:patient.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:coverage.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:coverage.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:practitioner.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:practitioner.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:serviceRequest.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:serviceRequest.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationRequest.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationRequest.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationDispense.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:medicationDispense.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:ePrescription.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:ePrescription.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:operationOutcome.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:operationOutcome.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| bdl-1 | error | Bundle | total only when a search or history |
total.empty() or (type = 'searchset') or (type = 'history')
|
| bdl-2 | error | Bundle | entry.search only when a search |
entry.search.empty() or (type = 'searchset')
|
| bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited |
entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
|
| bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited |
entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
|
| bdl-5 | error | Bundle.entry, Bundle.entry:messageHeader, Bundle.entry:patient, Bundle.entry:coverage, Bundle.entry:practitioner, Bundle.entry:serviceRequest, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:ePrescription, Bundle.entry:operationOutcome | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry, Bundle.entry:messageHeader, Bundle.entry:patient, Bundle.entry:coverage, Bundle.entry:practitioner, Bundle.entry:serviceRequest, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:ePrescription, Bundle.entry:operationOutcome | fullUrl cannot be a version specific reference |
fullUrl.contains('/_history/').not()
|
| bdl-9 | error | Bundle | A document must have an identifier with a system and a value |
type = 'document' implies (identifier.system.exists() and identifier.value.exists())
|
| bdl-10 | error | Bundle | A document must have a date |
type = 'document' implies (timestamp.hasValue())
|
| bdl-11 | error | Bundle | A document must have a Composition as the first resource |
type = 'document' implies entry.first().resource.is(Composition)
|
| bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource |
type = 'message' implies entry.first().resource.is(MessageHeader)
|
| 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()
|
| trxhub-msg-1 | error | Bundle | If the MessageHeader references response.details, they must be an OperationOutcome entry in this Bundle. |
entry.resource.ofType(MessageHeader).response.details.reference.exists() implies entry.where(resource is OperationOutcome).fullUrl contains entry.resource.ofType(MessageHeader).response.details.reference
|
| trxhub-msg-2 | error | Bundle | A response message contains only the MessageHeader and optionally an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() implies entry.all(resource is MessageHeader or resource is OperationOutcome)
|
| trxhub-msg-3 | error | Bundle | A request message (without MessageHeader.response) must not contain an OperationOutcome. |
entry.resource.ofType(MessageHeader).response.exists() or entry.resource.ofType(OperationOutcome).empty()
|
| trxhub-msg-4 | error | Bundle | A request message must contain at least one payload resource. |
entry.resource.ofType(MessageHeader).response.exists() or entry.count() > 1
|
This structure is derived from Bundle
Summary
Mandatory: 5 elements
Must-Support: 14 elements
Fixed: 1 element
Prohibited: 33 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron