Profile: SetContextTransactionBundle

Canonical URL: http://fhir.infoway-inforoute.ca/io/HALO/StructureDefinition/set-context-transaction-bundle

Simplifier project page: SetContextTransactionBundle

Derived from: Bundle (R4)

Formal Views of Profile Content

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

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
identifierΣ0..1Identifier
typeΣ1..1codeBindingFixed Value
timestampΣ0..1instant
totalΣ C0..1unsignedInt
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
relationΣ1..1string
urlΣ1..1uri
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
fullUrlΣ1..1uri
resourceΣ0..1Resource
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
modeΣ0..1codeBinding
scoreΣ0..1decimal
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
methodΣ1..1codeBindingFixed Value
urlΣ1..1uri
ifNoneMatchΣ0..1string
ifModifiedSinceΣ0..1instant
ifMatchΣ0..1string
ifNoneExistΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
statusΣ1..1string
locationΣ0..1uri
etagΣ0..1string
lastModifiedΣ0..1instant
outcomeΣ0..1Resource
signatureΣ0..1Signature
idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
identifierΣ0..1Identifier
typeΣ1..1codeBindingFixed Value
timestampΣ0..1instant
totalΣ C0..1unsignedInt
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
relationΣ1..1string
urlΣ1..1uri
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
fullUrlΣ1..1uri
resourceΣ0..1Resource
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
modeΣ0..1codeBinding
scoreΣ0..1decimal
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
methodΣ1..1codeBindingFixed Value
urlΣ1..1uri
ifNoneMatchΣ0..1string
ifModifiedSinceΣ0..1instant
ifMatchΣ0..1string
ifNoneExistΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
statusΣ1..1string
locationΣ0..1uri
etagΣ0..1string
lastModifiedΣ0..1instant
outcomeΣ0..1Resource
signatureΣ0..1Signature
idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
identifierΣ0..1Identifier
typeΣ1..1codeBindingFixed Value
timestampΣ0..1instant
totalΣ C0..1unsignedInt
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
relationΣ1..1string
urlΣ1..1uri
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
fullUrlΣ1..1uri
resourceΣ0..1Resource
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
modeΣ0..1codeBinding
scoreΣ0..1decimal
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
methodΣ1..1codeBindingFixed Value
urlΣ1..1uri
ifNoneMatchΣ0..1string
ifModifiedSinceΣ0..1instant
ifMatchΣ0..1string
ifNoneExistΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
statusΣ1..1string
locationΣ0..1uri
etagΣ0..1string
lastModifiedΣ0..1instant
outcomeΣ0..1Resource
signatureΣ0..1Signature
Bundle..
Bundle.type..
Bundle.entry..
Bundle.entry.fullUrl1..
Bundle.entry.request1..
Bundle.entry.request.method..

{
"resourceType": "StructureDefinition",
"id": "set-context-transaction-bundle",
"text": {
"status": "additional",
--- We have skipped the narrative for better readability of the resource ---
},
"url": "http://fhir.infoway-inforoute.ca/io/HALO/StructureDefinition/set-context-transaction-bundle",
"name": "SetContextTransactionBundle",
"status": "draft",
"description": "A profile of Bundle capturing the resources to be populated within the SoFA as a result of the $set-context operation.",
"fhirVersion": "4.0.1",
"kind": "resource",
"abstract": false,
"type": "Bundle",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Bundle",
"derivation": "constraint",
"element": [
{
"id": "Bundle.type",
"path": "Bundle.type",
"fixedCode": "transaction"
},
{
"id": "Bundle.entry.fullUrl",
"path": "Bundle.entry.fullUrl",
"min": 1
},
{
"id": "Bundle.entry.request",
"path": "Bundle.entry.request",
"min": 1
},
{
"id": "Bundle.entry.request.method",
"path": "Bundle.entry.request.method",
"fixedCode": "POST"
}
]
}
}
<StructureDefinition xmlns="http://hl7.org/fhir">
<id value="set-context-transaction-bundle" />
<status value="additional" />
--- We have skipped the narrative for better readability of the resource ---
</text>
<url value="http://fhir.infoway-inforoute.ca/io/HALO/StructureDefinition/set-context-transaction-bundle" />
<name value="SetContextTransactionBundle" />
<status value="draft" />
<description value="A profile of Bundle capturing the resources to be populated within the SoFA as a result of the $set-context operation." />
<fhirVersion value="4.0.1" />
<kind value="resource" />
<abstract value="false" />
<type value="Bundle" />
<baseDefinition value="http://hl7.org/fhir/StructureDefinition/Bundle" />
<derivation value="constraint" />
<element id="Bundle.type">
<path value="Bundle.type" />
<fixedCode value="transaction" />
</element>
<element id="Bundle.entry.fullUrl">
<path value="Bundle.entry.fullUrl" />
<min value="1" />
</element>
<element id="Bundle.entry.request">
<path value="Bundle.entry.request" />
<min value="1" />
</element>
<element id="Bundle.entry.request.method">
<path value="Bundle.entry.request.method" />
<fixedCode value="POST" />
</element>
</differential>
</StructureDefinition>

Usage

This profile defines constraints on the FHIR Bundle resource used in the resources input parameter of the $set-context operation to support the writing of clinical context data to the SoFA FHIR server before launching a SMART app. Its primary purpose is to constrain the resources a Point of Care (PoC) system can include—such as Patient, Encounter, or Practitioner—when invoking the operation, ensuring that the necessary clinical context is available to and interpretable by the SMART on FHIR app.

The Bundle SHALL be of type transaction, meaning all operations within the Bundle are processed atomically. If any operation fails, the entire transaction SHALL be rolled back to maintain system consistency. Resources included in the Bundle, where profiled, SHALL conform to the specified CA Core+ profiles and types defined by the jurisdictional implementation. The SoFA system SHALL reject any Bundle containing unsupported resource types or resources that violate these constraints.

For additional details on the role of the resources input parameter and its usage within the $set-context operation, see the Operation: $set-context page.