DHIN 2025Connectathon FHIR IG
0.2.0 - ci-build
DHIN 2025Connectathon FHIR IG, published by DHIN. This guide is not an authorized publication; it is the continuous build for version 0.2.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/Nigeria-FHIR-Community/2025Connectathon/ and changes regularly. See the Directory of published versions
| Official URL: https://sandbox.dhin-hie.org/ig/StructureDefinition/ng-ips-document-bundle | Version: 0.2.0 | |||
| Active as of 2025-11-25 | Computable Name: NgIPSDocumentBundle | |||
A document Bundle wrapping an NG IPS Composition and its referenced resources for use in the DHIN 2025 Connectathon. The first entry is the IPS Composition, and subsequent entries carry the Patient, Conditions, Medications, Immunizations, Procedures, Results, Devices, and CarePlan referenced by the Composition.
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 |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
SΣ | 0..1 | Identifier | Identifier for this IPS document bundle |
![]() ![]() |
SΣ | 1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: document |
![]() ![]() |
SΣ | 1..1 | instant | When the bundle (document) was assembled |
![]() ![]() |
SΣC | 1..* | BackboneElement | Entries that compose the IPS document Slice: Unordered, Open by type:resource, profile:resource Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Document Composition (NG IPS) |
![]() ![]() ![]() ![]() |
1..1 | NgIPSComposition | A set of resources composed into a single coherent clinical statement with clinical attestation | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgPatient | Information about an individual or animal receiving health care services | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgPractitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgOrganization | A grouping of people or organizations with a common purpose | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgCondition | Detailed information about conditions, problems or diagnoses | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgMedicationRequest | Ordering of medication for patient or group | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgMedicationDispense | Dispensing a medication to a named patient | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgImmunization | Immunization event information | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgProcedure | An action that is being or was performed on a patient | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgObservation | Measurements and simple assertions | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgDevice | Item used in healthcare | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgCarePlan | Healthcare plan for patient or group | |
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:composition.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:practitioner.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:organization.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:condition.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:immunization.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:procedure.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:observation.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:device.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:carePlan.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:composition, Bundle.entry:patient, Bundle.entry:practitioner, Bundle.entry:organization, Bundle.entry:condition, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:immunization, Bundle.entry:procedure, Bundle.entry:observation, Bundle.entry:device, Bundle.entry:carePlan | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry, Bundle.entry:composition, Bundle.entry:patient, Bundle.entry:practitioner, Bundle.entry:organization, Bundle.entry:condition, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:immunization, Bundle.entry:procedure, Bundle.entry:observation, Bundle.entry:device, Bundle.entry:carePlan | 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()
|
This structure is derived from Bundle
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Bundle | Contains a collection of resources | |
![]() ![]() |
S | 0..1 | Identifier | Identifier for this IPS document bundle |
![]() ![]() |
S | 1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Fixed Value: document |
![]() ![]() |
S | 1..1 | instant | When the bundle (document) was assembled |
![]() ![]() |
S | 1..* | BackboneElement | Entries that compose the IPS document Slice: Unordered, Open by type:resource, profile:resource |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
S | 1..1 | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
1..1 | uri | Document Composition (NG IPS) | |
![]() ![]() ![]() ![]() |
1..1 | NgIPSComposition | A set of resources composed into a single coherent clinical statement with clinical attestation | |
![]() ![]() ![]() |
S | 0..1 | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgPatient | Information about an individual or animal receiving health care services | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgPractitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgOrganization | A grouping of people or organizations with a common purpose | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgCondition | Detailed information about conditions, problems or diagnoses | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgMedicationRequest | Ordering of medication for patient or group | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgMedicationDispense | Dispensing a medication to a named patient | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgImmunization | Immunization event information | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgProcedure | An action that is being or was performed on a patient | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgObservation | Measurements and simple assertions | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgDevice | Item used in healthcare | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgCarePlan | Healthcare plan for patient or group | |
Documentation for this format | ||||
| 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 | ||||
![]() ![]() |
Σ | 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.
| |||||
![]() ![]() |
SΣ | 0..1 | Identifier | Identifier for this IPS document bundle | ||||
![]() ![]() |
SΣ | 1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: document | ||||
![]() ![]() |
SΣ | 1..1 | instant | When the bundle (document) was assembled | ||||
![]() ![]() |
ΣC | 0..1 | unsignedInt | If search, the total number of matches | ||||
![]() ![]() |
Σ | 0..* | BackboneElement | Links related to this Bundle | ||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() |
Σ | 1..1 | string | See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1 | ||||
![]() ![]() ![]() |
Σ | 1..1 | uri | Reference details for the link | ||||
![]() ![]() |
SΣC | 1..* | BackboneElement | Entries that compose the IPS document Slice: Unordered, Open by type:resource, profile:resource Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
![]() ![]() ![]() |
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 | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Resource | A resource in the bundle | ||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
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 | Document Composition (NG IPS) | ||||
![]() ![]() ![]() ![]() |
1..1 | NgIPSComposition | A set of resources composed into a single coherent clinical statement with clinical attestation | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgPatient | Information about an individual or animal receiving health care services | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgPractitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgOrganization | A grouping of people or organizations with a common purpose | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgCondition | Detailed information about conditions, problems or diagnoses | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgMedicationRequest | Ordering of medication for patient or group | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgMedicationDispense | Dispensing a medication to a named patient | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgImmunization | Immunization event information | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgProcedure | An action that is being or was performed on a patient | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgObservation | Measurements and simple assertions | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgDevice | Item used in healthcare | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgCarePlan | Healthcare plan for patient or group | |||||
![]() ![]() |
Σ | 0..1 | Signature | Digital Signature | ||||
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:composition.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:composition.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry: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: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:organization.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:organization.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:condition.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:condition.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:immunization.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:immunization.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:procedure.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:procedure.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:observation.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:observation.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:device.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:device.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:carePlan.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:carePlan.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:composition, Bundle.entry:patient, Bundle.entry:practitioner, Bundle.entry:organization, Bundle.entry:condition, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:immunization, Bundle.entry:procedure, Bundle.entry:observation, Bundle.entry:device, Bundle.entry:carePlan | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry, Bundle.entry:composition, Bundle.entry:patient, Bundle.entry:practitioner, Bundle.entry:organization, Bundle.entry:condition, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:immunization, Bundle.entry:procedure, Bundle.entry:observation, Bundle.entry:device, Bundle.entry:carePlan | 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()
|
This structure is derived from Bundle
Summary
Mandatory: 4 elements(1 nested mandatory element)
Must-Support: 16 elements
Fixed: 1 element
Prohibited: 3 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 |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
SΣ | 0..1 | Identifier | Identifier for this IPS document bundle |
![]() ![]() |
SΣ | 1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: document |
![]() ![]() |
SΣ | 1..1 | instant | When the bundle (document) was assembled |
![]() ![]() |
SΣC | 1..* | BackboneElement | Entries that compose the IPS document Slice: Unordered, Open by type:resource, profile:resource Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Document Composition (NG IPS) |
![]() ![]() ![]() ![]() |
1..1 | NgIPSComposition | A set of resources composed into a single coherent clinical statement with clinical attestation | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgPatient | Information about an individual or animal receiving health care services | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgPractitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgOrganization | A grouping of people or organizations with a common purpose | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgCondition | Detailed information about conditions, problems or diagnoses | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgMedicationRequest | Ordering of medication for patient or group | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgMedicationDispense | Dispensing a medication to a named patient | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgImmunization | Immunization event information | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgProcedure | An action that is being or was performed on a patient | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgObservation | Measurements and simple assertions | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgDevice | Item used in healthcare | |
![]() ![]() ![]() |
SΣ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 |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) |
![]() ![]() ![]() ![]() |
0..1 | NgCarePlan | Healthcare plan for patient or group | |
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:composition.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:practitioner.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:organization.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:condition.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:immunization.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:procedure.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:observation.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:device.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:carePlan.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:composition, Bundle.entry:patient, Bundle.entry:practitioner, Bundle.entry:organization, Bundle.entry:condition, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:immunization, Bundle.entry:procedure, Bundle.entry:observation, Bundle.entry:device, Bundle.entry:carePlan | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry, Bundle.entry:composition, Bundle.entry:patient, Bundle.entry:practitioner, Bundle.entry:organization, Bundle.entry:condition, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:immunization, Bundle.entry:procedure, Bundle.entry:observation, Bundle.entry:device, Bundle.entry:carePlan | 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()
|
Differential View
This structure is derived from Bundle
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Bundle | Contains a collection of resources | |
![]() ![]() |
S | 0..1 | Identifier | Identifier for this IPS document bundle |
![]() ![]() |
S | 1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Fixed Value: document |
![]() ![]() |
S | 1..1 | instant | When the bundle (document) was assembled |
![]() ![]() |
S | 1..* | BackboneElement | Entries that compose the IPS document Slice: Unordered, Open by type:resource, profile:resource |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | |
![]() ![]() ![]() ![]() |
0..0 | Search related information | ||
![]() ![]() ![]() ![]() |
0..0 | Additional execution information (transaction/batch/history) | ||
![]() ![]() ![]() ![]() |
0..0 | Results of execution (transaction/batch/history) | ||
![]() ![]() ![]() |
S | 1..1 | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
1..1 | uri | Document Composition (NG IPS) | |
![]() ![]() ![]() ![]() |
1..1 | NgIPSComposition | A set of resources composed into a single coherent clinical statement with clinical attestation | |
![]() ![]() ![]() |
S | 0..1 | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgPatient | Information about an individual or animal receiving health care services | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgPractitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgOrganization | A grouping of people or organizations with a common purpose | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgCondition | Detailed information about conditions, problems or diagnoses | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgMedicationRequest | Ordering of medication for patient or group | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgMedicationDispense | Dispensing a medication to a named patient | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgImmunization | Immunization event information | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgProcedure | An action that is being or was performed on a patient | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgObservation | Measurements and simple assertions | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgDevice | Item used in healthcare | |
![]() ![]() ![]() |
S | 0..* | BackboneElement | Entry in the bundle - will have a resource or information |
![]() ![]() ![]() ![]() |
0..1 | NgCarePlan | Healthcare plan for patient or group | |
Documentation for this format | ||||
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 | ||||
![]() ![]() |
Σ | 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.
| |||||
![]() ![]() |
SΣ | 0..1 | Identifier | Identifier for this IPS document bundle | ||||
![]() ![]() |
SΣ | 1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: document | ||||
![]() ![]() |
SΣ | 1..1 | instant | When the bundle (document) was assembled | ||||
![]() ![]() |
ΣC | 0..1 | unsignedInt | If search, the total number of matches | ||||
![]() ![]() |
Σ | 0..* | BackboneElement | Links related to this Bundle | ||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() |
Σ | 1..1 | string | See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1 | ||||
![]() ![]() ![]() |
Σ | 1..1 | uri | Reference details for the link | ||||
![]() ![]() |
SΣC | 1..* | BackboneElement | Entries that compose the IPS document Slice: Unordered, Open by type:resource, profile:resource Constraints: bdl-5, bdl-8 This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
![]() ![]() ![]() |
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 | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Resource | A resource in the bundle | ||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
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 | Document Composition (NG IPS) | ||||
![]() ![]() ![]() ![]() |
1..1 | NgIPSComposition | A set of resources composed into a single coherent clinical statement with clinical attestation | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgPatient | Information about an individual or animal receiving health care services | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgPractitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgOrganization | A grouping of people or organizations with a common purpose | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgCondition | Detailed information about conditions, problems or diagnoses | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgMedicationRequest | Ordering of medication for patient or group | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgMedicationDispense | Dispensing a medication to a named patient | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgImmunization | Immunization event information | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgProcedure | An action that is being or was performed on a patient | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgObservation | Measurements and simple assertions | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgDevice | Item used in healthcare | |||||
![]() ![]() ![]() |
SΣ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 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
![]() ![]() ![]() ![]() |
0..1 | NgCarePlan | Healthcare plan for patient or group | |||||
![]() ![]() |
Σ | 0..1 | Signature | Digital Signature | ||||
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:composition.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:composition.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry: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: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:organization.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:organization.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:condition.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:condition.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:immunization.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:immunization.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:procedure.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:procedure.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:observation.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:observation.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:device.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:device.request.method | Base | required | HTTPVerb | 📍4.0.1 | FHIR Std. |
| Bundle.entry:carePlan.search.mode | Base | required | SearchEntryMode | 📍4.0.1 | FHIR Std. |
| Bundle.entry:carePlan.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:composition, Bundle.entry:patient, Bundle.entry:practitioner, Bundle.entry:organization, Bundle.entry:condition, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:immunization, Bundle.entry:procedure, Bundle.entry:observation, Bundle.entry:device, Bundle.entry:carePlan | must be a resource unless there's a request or response |
resource.exists() or request.exists() or response.exists()
|
| bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) |
(type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
|
| bdl-8 | error | Bundle.entry, Bundle.entry:composition, Bundle.entry:patient, Bundle.entry:practitioner, Bundle.entry:organization, Bundle.entry:condition, Bundle.entry:medicationRequest, Bundle.entry:medicationDispense, Bundle.entry:immunization, Bundle.entry:procedure, Bundle.entry:observation, Bundle.entry:device, Bundle.entry:carePlan | 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()
|
This structure is derived from Bundle
Summary
Mandatory: 4 elements(1 nested mandatory element)
Must-Support: 16 elements
Fixed: 1 element
Prohibited: 3 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron