This page is part of the Argonaut Scheduling Implementation Guide (v1.0.0: Release) based on FHIR R3. This is the current published version in it's permanent home (it will always be available at this URL).  For a full list of available versions, see the Directory of published versions 
SD.7 StructureDefinition-avail-bundle
The Argonaut Appointment Bundle profile sets the minimum expectations for the Bundle resource which is returned as a result of the $find operation and when fetching appointments.
Mandatory Data Elements
Each Bundle must have:
- a bundle type
- a total number of matches
The system Must Support if available:
- Appointment entries
- OperationOutcome entry
Additional Profile specific implementation guidance:
- None
Examples
SD.7.1 Formal Views of Profile Content
Description of Profiles, Differentials, and Snapshots.
The official URL for this profile is: http://fhir.org/guides/argonaut-scheduling/StructureDefinition/avail-bundle
Published on Thu Jan 11 00:00:00 AEDT 2018 as a active by Argonaut Project.
This profile builds on Bundle
Summary
Mandatory: 2 elements (2 nested mandatory elements)
 Must-Support: 11 elements
 Fixed Value: 3 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
- The element Bundle.entry is sliced based on the value of type:resource
| Name | Flags | Card. | Type | Description & Constraints  | 
|---|---|---|---|---|
|   Bundle | 0..* | |||
|    type | S | 1..1 | code | Fixed Value: searchset | 
|    total | S | 1..1 | unsignedInt | |
|    entry | S | BackboneElement | Slice: Unordered, Open by type:resource | |
|    entry | S | 0..* | BackboneElement | |
|     resource | S | 0..1 | Argonaut_Appointment_Profile | |
|     search | S | 0..1 | BackboneElement | |
|      mode | S | 1..1 | code | Fixed Value: match | 
|    entry | S | 0..* | BackboneElement | |
|     resource | S | 0..1 | OperationOutcome | |
|     search | S | 0..1 | BackboneElement | |
|      mode | S | 1..1 | code | Fixed Value: outcome | 
|  Documentation for this format | ||||
| Name | Flags | Card. | Type | Description & Constraints  | 
|---|---|---|---|---|
|   Bundle | I | 0..* | Contains a collection of resources | |
|    id | Σ | 0..1 | id | Logical id of this artifact | 
|    meta | Σ | 0..1 | Meta | Metadata about the resource | 
|    implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | 
|    language | 0..1 | code | Language of the resource content Binding: Common Languages (extensible) | |
|    identifier | Σ | 0..1 | Identifier | Persistent identifier for the bundle | 
|    type | SΣ | 1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Binding: BundleType (required) Fixed Value: searchset | 
|    total | SΣI | 1..1 | unsignedInt | If search, the total number of matches | 
|    link | ΣI | 0..* | BackboneElement | Links related to this Bundle | 
|     id | 0..1 | string | xml:id (or equivalent in JSON) | |
|     extension | 0..* | Extension | Additional Content defined by implementations | |
|     modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|     relation | Σ | 1..1 | string | See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1 | 
|     url | Σ | 1..1 | uri | Reference details for the link | 
|    entry | SΣI | BackboneElement | Entry in the bundle - will have a resource, or information Slice: Unordered, Open by type:resource | |
|     id | 0..1 | string | xml:id (or equivalent in JSON) | |
|     extension | 0..* | Extension | Additional Content defined by implementations | |
|     modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|     link | Σ | 0..* | Unknown reference to #Bundle.link Links related to this entry | |
|     fullUrl | Σ | 0..1 | uri | Absolute URL for resource (server address, or UUID/OID) | 
|     resource | Σ | 0..1 | Resource | A resource in the bundle | 
|     search | ΣI | 0..1 | BackboneElement | Search related information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      mode | Σ | 0..1 | code | match | include | outcome - why this is in the result set Binding: SearchEntryMode (required) | 
|      score | Σ | 0..1 | decimal | Search ranking (between 0 and 1) | 
|     request | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      method | Σ | 1..1 | code | GET | POST | PUT | DELETE Binding: HTTPVerb (required) | 
|      url | Σ | 1..1 | uri | URL for HTTP equivalent of this entry | 
|      ifNoneMatch | Σ | 0..1 | string | For managing cache currency | 
|      ifModifiedSince | Σ | 0..1 | instant | For managing update contention | 
|      ifMatch | Σ | 0..1 | string | For managing update contention | 
|      ifNoneExist | Σ | 0..1 | string | For conditional creates | 
|     response | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      status | Σ | 1..1 | string | Status response code (text optional) | 
|      location | Σ | 0..1 | uri | The location, if the operation returns a location | 
|      etag | Σ | 0..1 | string | The etag for the resource (if relevant) | 
|      lastModified | Σ | 0..1 | instant | Server's date time modified | 
|      outcome | Σ | 0..1 | Resource | OperationOutcome with hints and warnings (for batch/transaction) | 
|    entry | SΣI | 0..* | BackboneElement | Entry in the bundle - will have a resource, or information | 
|     id | 0..1 | string | xml:id (or equivalent in JSON) | |
|     extension | 0..* | Extension | Additional Content defined by implementations | |
|     modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|     link | Σ | 0..* | Unknown reference to #Bundle.link Links related to this entry | |
|     fullUrl | Σ | 0..1 | uri | Absolute URL for resource (server address, or UUID/OID) | 
|     resource | SΣ | 0..1 | Argonaut_Appointment_Profile | A resource in the bundle | 
|     search | SΣI | 0..1 | BackboneElement | Search related information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      mode | SΣ | 1..1 | code | match | include | outcome - why this is in the result set Binding: SearchEntryMode (required) Fixed Value: match | 
|      score | Σ | 0..1 | decimal | Search ranking (between 0 and 1) | 
|     request | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      method | Σ | 1..1 | code | GET | POST | PUT | DELETE Binding: HTTPVerb (required) | 
|      url | Σ | 1..1 | uri | URL for HTTP equivalent of this entry | 
|      ifNoneMatch | Σ | 0..1 | string | For managing cache currency | 
|      ifModifiedSince | Σ | 0..1 | instant | For managing update contention | 
|      ifMatch | Σ | 0..1 | string | For managing update contention | 
|      ifNoneExist | Σ | 0..1 | string | For conditional creates | 
|     response | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      status | Σ | 1..1 | string | Status response code (text optional) | 
|      location | Σ | 0..1 | uri | The location, if the operation returns a location | 
|      etag | Σ | 0..1 | string | The etag for the resource (if relevant) | 
|      lastModified | Σ | 0..1 | instant | Server's date time modified | 
|      outcome | Σ | 0..1 | Resource | OperationOutcome with hints and warnings (for batch/transaction) | 
|    entry | SΣI | 0..* | BackboneElement | Entry in the bundle - will have a resource, or information | 
|     id | 0..1 | string | xml:id (or equivalent in JSON) | |
|     extension | 0..* | Extension | Additional Content defined by implementations | |
|     modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|     link | Σ | 0..* | Unknown reference to #Bundle.link Links related to this entry | |
|     fullUrl | Σ | 0..1 | uri | Absolute URL for resource (server address, or UUID/OID) | 
|     resource | SΣ | 0..1 | OperationOutcome | A resource in the bundle | 
|     search | SΣI | 0..1 | BackboneElement | Search related information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      mode | SΣ | 1..1 | code | match | include | outcome - why this is in the result set Binding: SearchEntryMode (required) Fixed Value: outcome | 
|      score | Σ | 0..1 | decimal | Search ranking (between 0 and 1) | 
|     request | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      method | Σ | 1..1 | code | GET | POST | PUT | DELETE Binding: HTTPVerb (required) | 
|      url | Σ | 1..1 | uri | URL for HTTP equivalent of this entry | 
|      ifNoneMatch | Σ | 0..1 | string | For managing cache currency | 
|      ifModifiedSince | Σ | 0..1 | instant | For managing update contention | 
|      ifMatch | Σ | 0..1 | string | For managing update contention | 
|      ifNoneExist | Σ | 0..1 | string | For conditional creates | 
|     response | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      status | Σ | 1..1 | string | Status response code (text optional) | 
|      location | Σ | 0..1 | uri | The location, if the operation returns a location | 
|      etag | Σ | 0..1 | string | The etag for the resource (if relevant) | 
|      lastModified | Σ | 0..1 | instant | Server's date time modified | 
|      outcome | Σ | 0..1 | Resource | OperationOutcome with hints and warnings (for batch/transaction) | 
|    signature | Σ | 0..1 | Signature | Digital Signature | 
|  Documentation for this format | ||||
Summary
Mandatory: 2 elements (2 nested mandatory elements)
 Must-Support: 11 elements
 Fixed Value: 3 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
- The element Bundle.entry is sliced based on the value of type:resource
Differential View
| Name | Flags | Card. | Type | Description & Constraints  | 
|---|---|---|---|---|
|   Bundle | 0..* | |||
|    type | S | 1..1 | code | Fixed Value: searchset | 
|    total | S | 1..1 | unsignedInt | |
|    entry | S | BackboneElement | Slice: Unordered, Open by type:resource | |
|    entry | S | 0..* | BackboneElement | |
|     resource | S | 0..1 | Argonaut_Appointment_Profile | |
|     search | S | 0..1 | BackboneElement | |
|      mode | S | 1..1 | code | Fixed Value: match | 
|    entry | S | 0..* | BackboneElement | |
|     resource | S | 0..1 | OperationOutcome | |
|     search | S | 0..1 | BackboneElement | |
|      mode | S | 1..1 | code | Fixed Value: outcome | 
|  Documentation for this format | ||||
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints  | 
|---|---|---|---|---|
|   Bundle | I | 0..* | Contains a collection of resources | |
|    id | Σ | 0..1 | id | Logical id of this artifact | 
|    meta | Σ | 0..1 | Meta | Metadata about the resource | 
|    implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | 
|    language | 0..1 | code | Language of the resource content Binding: Common Languages (extensible) | |
|    identifier | Σ | 0..1 | Identifier | Persistent identifier for the bundle | 
|    type | SΣ | 1..1 | code | document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection Binding: BundleType (required) Fixed Value: searchset | 
|    total | SΣI | 1..1 | unsignedInt | If search, the total number of matches | 
|    link | ΣI | 0..* | BackboneElement | Links related to this Bundle | 
|     id | 0..1 | string | xml:id (or equivalent in JSON) | |
|     extension | 0..* | Extension | Additional Content defined by implementations | |
|     modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|     relation | Σ | 1..1 | string | See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1 | 
|     url | Σ | 1..1 | uri | Reference details for the link | 
|    entry | SΣI | BackboneElement | Entry in the bundle - will have a resource, or information Slice: Unordered, Open by type:resource | |
|     id | 0..1 | string | xml:id (or equivalent in JSON) | |
|     extension | 0..* | Extension | Additional Content defined by implementations | |
|     modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|     link | Σ | 0..* | Unknown reference to #Bundle.link Links related to this entry | |
|     fullUrl | Σ | 0..1 | uri | Absolute URL for resource (server address, or UUID/OID) | 
|     resource | Σ | 0..1 | Resource | A resource in the bundle | 
|     search | ΣI | 0..1 | BackboneElement | Search related information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      mode | Σ | 0..1 | code | match | include | outcome - why this is in the result set Binding: SearchEntryMode (required) | 
|      score | Σ | 0..1 | decimal | Search ranking (between 0 and 1) | 
|     request | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      method | Σ | 1..1 | code | GET | POST | PUT | DELETE Binding: HTTPVerb (required) | 
|      url | Σ | 1..1 | uri | URL for HTTP equivalent of this entry | 
|      ifNoneMatch | Σ | 0..1 | string | For managing cache currency | 
|      ifModifiedSince | Σ | 0..1 | instant | For managing update contention | 
|      ifMatch | Σ | 0..1 | string | For managing update contention | 
|      ifNoneExist | Σ | 0..1 | string | For conditional creates | 
|     response | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      status | Σ | 1..1 | string | Status response code (text optional) | 
|      location | Σ | 0..1 | uri | The location, if the operation returns a location | 
|      etag | Σ | 0..1 | string | The etag for the resource (if relevant) | 
|      lastModified | Σ | 0..1 | instant | Server's date time modified | 
|      outcome | Σ | 0..1 | Resource | OperationOutcome with hints and warnings (for batch/transaction) | 
|    entry | SΣI | 0..* | BackboneElement | Entry in the bundle - will have a resource, or information | 
|     id | 0..1 | string | xml:id (or equivalent in JSON) | |
|     extension | 0..* | Extension | Additional Content defined by implementations | |
|     modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|     link | Σ | 0..* | Unknown reference to #Bundle.link Links related to this entry | |
|     fullUrl | Σ | 0..1 | uri | Absolute URL for resource (server address, or UUID/OID) | 
|     resource | SΣ | 0..1 | Argonaut_Appointment_Profile | A resource in the bundle | 
|     search | SΣI | 0..1 | BackboneElement | Search related information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      mode | SΣ | 1..1 | code | match | include | outcome - why this is in the result set Binding: SearchEntryMode (required) Fixed Value: match | 
|      score | Σ | 0..1 | decimal | Search ranking (between 0 and 1) | 
|     request | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      method | Σ | 1..1 | code | GET | POST | PUT | DELETE Binding: HTTPVerb (required) | 
|      url | Σ | 1..1 | uri | URL for HTTP equivalent of this entry | 
|      ifNoneMatch | Σ | 0..1 | string | For managing cache currency | 
|      ifModifiedSince | Σ | 0..1 | instant | For managing update contention | 
|      ifMatch | Σ | 0..1 | string | For managing update contention | 
|      ifNoneExist | Σ | 0..1 | string | For conditional creates | 
|     response | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      status | Σ | 1..1 | string | Status response code (text optional) | 
|      location | Σ | 0..1 | uri | The location, if the operation returns a location | 
|      etag | Σ | 0..1 | string | The etag for the resource (if relevant) | 
|      lastModified | Σ | 0..1 | instant | Server's date time modified | 
|      outcome | Σ | 0..1 | Resource | OperationOutcome with hints and warnings (for batch/transaction) | 
|    entry | SΣI | 0..* | BackboneElement | Entry in the bundle - will have a resource, or information | 
|     id | 0..1 | string | xml:id (or equivalent in JSON) | |
|     extension | 0..* | Extension | Additional Content defined by implementations | |
|     modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|     link | Σ | 0..* | Unknown reference to #Bundle.link Links related to this entry | |
|     fullUrl | Σ | 0..1 | uri | Absolute URL for resource (server address, or UUID/OID) | 
|     resource | SΣ | 0..1 | OperationOutcome | A resource in the bundle | 
|     search | SΣI | 0..1 | BackboneElement | Search related information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      mode | SΣ | 1..1 | code | match | include | outcome - why this is in the result set Binding: SearchEntryMode (required) Fixed Value: outcome | 
|      score | Σ | 0..1 | decimal | Search ranking (between 0 and 1) | 
|     request | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      method | Σ | 1..1 | code | GET | POST | PUT | DELETE Binding: HTTPVerb (required) | 
|      url | Σ | 1..1 | uri | URL for HTTP equivalent of this entry | 
|      ifNoneMatch | Σ | 0..1 | string | For managing cache currency | 
|      ifModifiedSince | Σ | 0..1 | instant | For managing update contention | 
|      ifMatch | Σ | 0..1 | string | For managing update contention | 
|      ifNoneExist | Σ | 0..1 | string | For conditional creates | 
|     response | ΣI | 0..1 | BackboneElement | Transaction Related Information | 
|      id | 0..1 | string | xml:id (or equivalent in JSON) | |
|      extension | 0..* | Extension | Additional Content defined by implementations | |
|      modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | 
|      status | Σ | 1..1 | string | Status response code (text optional) | 
|      location | Σ | 0..1 | uri | The location, if the operation returns a location | 
|      etag | Σ | 0..1 | string | The etag for the resource (if relevant) | 
|      lastModified | Σ | 0..1 | instant | Server's date time modified | 
|      outcome | Σ | 0..1 | Resource | OperationOutcome with hints and warnings (for batch/transaction) | 
|    signature | Σ | 0..1 | Signature | Digital Signature | 
|  Documentation for this format | ||||
Downloads: StructureDefinition: (XML, JSON), Schema: XML Schematron
SD.7.2 Quick Start
Below is an overview of the required set of RESTful FHIR interactions - for example, search and read operations - for this profile. See the Conformance requirements for a complete list of supported RESTful interactions for this IG.
Patient based Scheduling:
- Appointment Availability Discovery and Search
- Hold Appointment Operation
- Hold Appointment Operation (Prefetch)
- Book Appointment Operation
- Book Appointment Operation (Prefetch)
- Retrieving appointments
Provider based Scheduling:
 
     
