Interweave Implementation Guide
0.1.0 - ci-build United Kingdom flag

Interweave Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the STU3 profiles here.

Resource Profile: InterweaveSchedule

Official URL: https://fhir.interweavedigital.nhs.uk/R4/StructureDefinition/Interweave-Schedule Version: 0.0.1
Draft as of 2024-07-15 Computable Name: InterweaveSchedule

Interweave Schedule resource profile - DRAFT.

Status: DRAFT: For Review

Introduction

This profile sets minimum expectations for the Schedule resource. We use the schedule structure definition as a base to this profile.

A schedule controls the dates and times available for the performance of a service and/or the use of a resource. One schedule applies to one service or resource, since each service or resource can be reserved independently of the others. If two or more services, people, locations, or things cannot be reserved independently of one another, they are considered to be one activity or resource.

A schedule consists of slots of time during which the controlled service or resource is potentially available for provision or use. Slots are categorized as open, booked, or blocked. An open slot on a schedule indicates that the service or resource is available for provision or use during that period of time. A booked slot indicates that the service or resource is not available during the time period, because an appointment has been scheduled. A blocked slot indicates that a service or resource is unavailable for reasons other than a scheduled appointment.

Mandatory fields

The following mandatory fields are defined:

  1. Active - Essential if not active. Good practice to always populate anyway.

  2. Service Type - The type of appointments that can be booked into this slot (ideally this would be an identifiable service - which is at a location, rather than the location itself). We use the UKCore value set (based on SNOMED refset 1127531000000102: Services Simple Reference Set) - for consistency with the Encounter, and because it is more relevant than the default FHIR example and also covers social care.

  3. Actor - The schedule belongs to a single instance of a service or resource. This is normally a HealthcareService, Practitioner, Location or Device. In the case where a single resource can provide different services, potentially at different location, then the schedulable resource is considered the composite of the actors. For example, if a practitioner can provide services at multiple locations, they might have one schedule per location, where each schedule includes both the practitioner and location actors.

  4. planningHorizon - Period of time covered by schedule. The start date/time is always mandatory, but as per the FHIR specification, the end date/time may be omitted

Must Support fields

In addition the following fields are "Must Support" - ie they must be populated if relevant and known.

  1. Specialty - further information which may be useful about the type of specialty required. Knowing the Service Type is probably sufficient for a shared care record, with the Specialty being more relevant to resourcing the correct staff member in a scheduling system. However obviously useful additional information if available.

Optional fields

Other fields are optional and may be populated if known - on the understanding that not all data consumers will necessarily make use of them. Points of note include:

  • identifier - An optional identifier which may be helpful to identify the record at a local level.

  • Service Category - A general description under broad categorisation of the types of services that is to be performed during this appointment.

  • Comment - Comments on the availability to describe any extended information. Such as custom constraints on the slots that may be associated.

Usage:

Formal Views of Profile Content

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

This structure is derived from UKCoreSchedule

NameFlagsCard.TypeDescription & Constraintsdoco
.. Schedule 0..* UKCoreSchedule A container for slots of time that may be available for booking appointments
... id S 0..1 id Logical id of this artifact
... meta
.... id 0..0
.... versionId S 0..1 id Version specific identifier
.... lastUpdated S 0..1 instant MANDATORY except in Contained Resources. When the resource version last changed.
.... profile S 0..* canonical(StructureDefinition) Profiles this resource claims to conform to. Should list (i) this profile (ii) base profile for this resource.
.... security 0..* Coding DISCOURAGED - may not be honoured by Data Consumers
.... Slices for tag 0..* Coding Tags applied to this resource
Slice: Unordered, Open by value:system
..... tag:Source S 0..1 Coding MANDATORY except in Contained Resources. The Data Provider Id (and display text) of the system supplying the data
...... id 0..0
...... system 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Source
...... version 0..0
...... code S 1..1 code The Data Provider Id of the system supplying the data
...... display S 1..1 string Name of the system supplying the data
..... tag:Provenance S 0..1 Coding MANDATORY except in Contained Resources. The ODS Code (and display text) of the organisation responsible for the data
...... id 0..0
...... system 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Provenance
...... version 0..0
...... code S 1..1 code The ODS Code of the organisation responsible for the data
...... display S 1..1 string Name of the organisation supplying the data
... implicitRules 0..1 uri DISCOURAGED - may not be honoured by Data Consumers
... text 0..1 Narrative DISCOURAGED - the preferred approach is to offer structured data fields which a Data Consumer can then render and present in a manner most suited to its users
... identifier
.... assigner 0..1 Reference(InterweaveOrganization) Organization that issued id (may be just text)
... active 1..1 boolean Whether this schedule is in active use.
... serviceCategory 0..1 CodeableConcept High-level category
Binding: ServiceCategory (preferred)
... serviceType S 1..* CodeableConcept Specific service
Binding: UK Core Care Setting Type (preferred)
.... id 0..0
.... coding
..... id 0..0
..... system 1..1 uri Identity of the terminology system
..... code 1..1 code Symbol in syntax defined by the system
..... display 1..1 string Representation defined by the system
... specialty 0..* CodeableConcept Type of specialty needed.
Binding: UK Core Practice Setting Code (required)
.... id 0..0
.... coding
..... id 0..0
..... system 1..1 uri Identity of the terminology system
..... code 1..1 code Symbol in syntax defined by the system
..... display 1..1 string Representation defined by the system
... planningHorizon 1..1 Period The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a template for planning outside these dates.
.... id 0..0
.... extension 0..0
.... start S 1..1 dateTime Starting time with inclusive boundary

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Schedule.serviceCategorypreferredServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Schedule.serviceTypepreferredUKCoreCareSettingType
https://fhir.hl7.org.uk/ValueSet/UKCore-CareSettingType
from this IG
Schedule.specialtyrequiredUKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)
https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode
from this IG
NameFlagsCard.TypeDescription & Constraintsdoco
.. Schedule 0..* UKCoreSchedule A container for slots of time that may be available for booking appointments
... id SΣ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant MANDATORY except in Contained Resources. When the resource version last changed.
.... profile SΣ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to. Should list (i) this profile (ii) base profile for this resource.
.... security Σ 0..* Coding DISCOURAGED - may not be honoured by Data Consumers
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


.... Slices for tag Σ 0..* Coding Tags applied to this resource
Slice: Unordered, Open by value:system
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


..... tag:Source SΣ 0..1 Coding MANDATORY except in Contained Resources. The Data Provider Id (and display text) of the system supplying the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Source
...... code SΣ 1..1 code The Data Provider Id of the system supplying the data
...... display SΣ 1..1 string Name of the system supplying the data
..... tag:Provenance SΣ 0..1 Coding MANDATORY except in Contained Resources. The ODS Code (and display text) of the organisation responsible for the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Provenance
...... code SΣ 1..1 code The ODS Code of the organisation responsible for the data
...... display SΣ 1..1 string Name of the organisation supplying the data
... implicitRules ?!Σ 0..1 uri DISCOURAGED - may not be honoured by Data Consumers
... text 0..1 Narrative DISCOURAGED - the preferred approach is to offer structured data fields which a Data Consumer can then render and present in a manner most suited to its users
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... active ?!SΣ 1..1 boolean Whether this schedule is in active use.
... serviceCategory Σ 0..1 CodeableConcept High-level category
Binding: ServiceCategory (preferred)
... serviceType SΣ 1..* CodeableConcept Specific service
Binding: UK Core Care Setting Type (preferred)
... specialty SΣ 0..* CodeableConcept Type of specialty needed.
Binding: UK Core Practice Setting Code (required)
... actor SΣ 1..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location) Resource(s) that availability information is being provided for.
... planningHorizon SΣ 1..1 Period The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a template for planning outside these dates.
.... extension 0..0
.... start SΣC 1..1 dateTime Starting time with inclusive boundary

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Schedule.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
Schedule.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.meta.tag:SourceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.meta.tag:ProvenanceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Schedule.serviceCategorypreferredServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Schedule.serviceTypepreferredUKCoreCareSettingType
https://fhir.hl7.org.uk/ValueSet/UKCore-CareSettingType
from this IG
Schedule.specialtyrequiredUKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)
https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode
from this IG

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorScheduleIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorScheduleIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorScheduleIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorScheduleIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceScheduleA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Schedule 0..* UKCoreSchedule A container for slots of time that may be available for booking appointments
... id SΣ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant MANDATORY except in Contained Resources. When the resource version last changed.
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile SΣ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to. Should list (i) this profile (ii) base profile for this resource.
.... security Σ 0..* Coding DISCOURAGED - may not be honoured by Data Consumers
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


.... Slices for tag Σ 0..* Coding Tags applied to this resource
Slice: Unordered, Open by value:system
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


..... tag:Source SΣ 0..1 Coding MANDATORY except in Contained Resources. The Data Provider Id (and display text) of the system supplying the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Source
...... code SΣ 1..1 code The Data Provider Id of the system supplying the data
...... display SΣ 1..1 string Name of the system supplying the data
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... tag:Provenance SΣ 0..1 Coding MANDATORY except in Contained Resources. The ODS Code (and display text) of the organisation responsible for the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Provenance
...... code SΣ 1..1 code The ODS Code of the organisation responsible for the data
...... display SΣ 1..1 string Name of the organisation supplying the data
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
... implicitRules ?!Σ 0..1 uri DISCOURAGED - may not be honoured by Data Consumers
... text 0..1 Narrative DISCOURAGED - the preferred approach is to offer structured data fields which a Data Consumer can then render and present in a manner most suited to its users
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Ids for this item
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ 0..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ 0..1 string The value that is unique
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(InterweaveOrganization) Organization that issued id (may be just text)
... active ?!SΣ 1..1 boolean Whether this schedule is in active use.
... serviceCategory Σ 0..1 CodeableConcept High-level category
Binding: ServiceCategory (preferred)
... serviceType SΣ 1..* CodeableConcept Specific service
Binding: UK Core Care Setting Type (preferred)
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 0..* Coding Code defined by a terminology system
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ 1..1 uri Identity of the terminology system
..... version Σ 0..1 string Version of the system - if relevant
..... code Σ 1..1 code Symbol in syntax defined by the system
..... display Σ 1..1 string Representation defined by the system
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... specialty SΣ 0..* CodeableConcept Type of specialty needed.
Binding: UK Core Practice Setting Code (required)
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 0..* Coding Code defined by a terminology system
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ 1..1 uri Identity of the terminology system
..... version Σ 0..1 string Version of the system - if relevant
..... code Σ 1..1 code Symbol in syntax defined by the system
..... display Σ 1..1 string Representation defined by the system
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... actor SΣ 1..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location) Resource(s) that availability information is being provided for.
... planningHorizon SΣ 1..1 Period The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a template for planning outside these dates.
.... extension 0..0
.... start SΣC 1..1 dateTime Starting time with inclusive boundary
.... end ΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
... comment 0..1 string Comments on availability

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Schedule.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
Schedule.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.meta.tag:SourceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.meta.tag:ProvenanceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Schedule.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Schedule.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Schedule.serviceCategorypreferredServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Schedule.serviceTypepreferredUKCoreCareSettingType
https://fhir.hl7.org.uk/ValueSet/UKCore-CareSettingType
from this IG
Schedule.specialtyrequiredUKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)
https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode
from this IG

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorScheduleIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorScheduleIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorScheduleIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorScheduleIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceScheduleA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from UKCoreSchedule

Summary

Mandatory: 4 elements(12 nested mandatory elements)
Must-Support: 12 elements
Fixed: 2 elements
Prohibited: 11 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Schedule.meta.tag

Differential View

This structure is derived from UKCoreSchedule

NameFlagsCard.TypeDescription & Constraintsdoco
.. Schedule 0..* UKCoreSchedule A container for slots of time that may be available for booking appointments
... id S 0..1 id Logical id of this artifact
... meta
.... id 0..0
.... versionId S 0..1 id Version specific identifier
.... lastUpdated S 0..1 instant MANDATORY except in Contained Resources. When the resource version last changed.
.... profile S 0..* canonical(StructureDefinition) Profiles this resource claims to conform to. Should list (i) this profile (ii) base profile for this resource.
.... security 0..* Coding DISCOURAGED - may not be honoured by Data Consumers
.... Slices for tag 0..* Coding Tags applied to this resource
Slice: Unordered, Open by value:system
..... tag:Source S 0..1 Coding MANDATORY except in Contained Resources. The Data Provider Id (and display text) of the system supplying the data
...... id 0..0
...... system 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Source
...... version 0..0
...... code S 1..1 code The Data Provider Id of the system supplying the data
...... display S 1..1 string Name of the system supplying the data
..... tag:Provenance S 0..1 Coding MANDATORY except in Contained Resources. The ODS Code (and display text) of the organisation responsible for the data
...... id 0..0
...... system 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Provenance
...... version 0..0
...... code S 1..1 code The ODS Code of the organisation responsible for the data
...... display S 1..1 string Name of the organisation supplying the data
... implicitRules 0..1 uri DISCOURAGED - may not be honoured by Data Consumers
... text 0..1 Narrative DISCOURAGED - the preferred approach is to offer structured data fields which a Data Consumer can then render and present in a manner most suited to its users
... identifier
.... assigner 0..1 Reference(InterweaveOrganization) Organization that issued id (may be just text)
... active 1..1 boolean Whether this schedule is in active use.
... serviceCategory 0..1 CodeableConcept High-level category
Binding: ServiceCategory (preferred)
... serviceType S 1..* CodeableConcept Specific service
Binding: UK Core Care Setting Type (preferred)
.... id 0..0
.... coding
..... id 0..0
..... system 1..1 uri Identity of the terminology system
..... code 1..1 code Symbol in syntax defined by the system
..... display 1..1 string Representation defined by the system
... specialty 0..* CodeableConcept Type of specialty needed.
Binding: UK Core Practice Setting Code (required)
.... id 0..0
.... coding
..... id 0..0
..... system 1..1 uri Identity of the terminology system
..... code 1..1 code Symbol in syntax defined by the system
..... display 1..1 string Representation defined by the system
... planningHorizon 1..1 Period The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a template for planning outside these dates.
.... id 0..0
.... extension 0..0
.... start S 1..1 dateTime Starting time with inclusive boundary

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Schedule.serviceCategorypreferredServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Schedule.serviceTypepreferredUKCoreCareSettingType
https://fhir.hl7.org.uk/ValueSet/UKCore-CareSettingType
from this IG
Schedule.specialtyrequiredUKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)
https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode
from this IG

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Schedule 0..* UKCoreSchedule A container for slots of time that may be available for booking appointments
... id SΣ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant MANDATORY except in Contained Resources. When the resource version last changed.
.... profile SΣ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to. Should list (i) this profile (ii) base profile for this resource.
.... security Σ 0..* Coding DISCOURAGED - may not be honoured by Data Consumers
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


.... Slices for tag Σ 0..* Coding Tags applied to this resource
Slice: Unordered, Open by value:system
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


..... tag:Source SΣ 0..1 Coding MANDATORY except in Contained Resources. The Data Provider Id (and display text) of the system supplying the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Source
...... code SΣ 1..1 code The Data Provider Id of the system supplying the data
...... display SΣ 1..1 string Name of the system supplying the data
..... tag:Provenance SΣ 0..1 Coding MANDATORY except in Contained Resources. The ODS Code (and display text) of the organisation responsible for the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Provenance
...... code SΣ 1..1 code The ODS Code of the organisation responsible for the data
...... display SΣ 1..1 string Name of the organisation supplying the data
... implicitRules ?!Σ 0..1 uri DISCOURAGED - may not be honoured by Data Consumers
... text 0..1 Narrative DISCOURAGED - the preferred approach is to offer structured data fields which a Data Consumer can then render and present in a manner most suited to its users
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... active ?!SΣ 1..1 boolean Whether this schedule is in active use.
... serviceCategory Σ 0..1 CodeableConcept High-level category
Binding: ServiceCategory (preferred)
... serviceType SΣ 1..* CodeableConcept Specific service
Binding: UK Core Care Setting Type (preferred)
... specialty SΣ 0..* CodeableConcept Type of specialty needed.
Binding: UK Core Practice Setting Code (required)
... actor SΣ 1..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location) Resource(s) that availability information is being provided for.
... planningHorizon SΣ 1..1 Period The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a template for planning outside these dates.
.... extension 0..0
.... start SΣC 1..1 dateTime Starting time with inclusive boundary

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Schedule.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
Schedule.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.meta.tag:SourceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.meta.tag:ProvenanceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Schedule.serviceCategorypreferredServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Schedule.serviceTypepreferredUKCoreCareSettingType
https://fhir.hl7.org.uk/ValueSet/UKCore-CareSettingType
from this IG
Schedule.specialtyrequiredUKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)
https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode
from this IG

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorScheduleIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorScheduleIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorScheduleIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorScheduleIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceScheduleA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Schedule 0..* UKCoreSchedule A container for slots of time that may be available for booking appointments
... id SΣ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant MANDATORY except in Contained Resources. When the resource version last changed.
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile SΣ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to. Should list (i) this profile (ii) base profile for this resource.
.... security Σ 0..* Coding DISCOURAGED - may not be honoured by Data Consumers
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


.... Slices for tag Σ 0..* Coding Tags applied to this resource
Slice: Unordered, Open by value:system
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


..... tag:Source SΣ 0..1 Coding MANDATORY except in Contained Resources. The Data Provider Id (and display text) of the system supplying the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Source
...... code SΣ 1..1 code The Data Provider Id of the system supplying the data
...... display SΣ 1..1 string Name of the system supplying the data
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... tag:Provenance SΣ 0..1 Coding MANDATORY except in Contained Resources. The ODS Code (and display text) of the organisation responsible for the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Provenance
...... code SΣ 1..1 code The ODS Code of the organisation responsible for the data
...... display SΣ 1..1 string Name of the organisation supplying the data
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
... implicitRules ?!Σ 0..1 uri DISCOURAGED - may not be honoured by Data Consumers
... text 0..1 Narrative DISCOURAGED - the preferred approach is to offer structured data fields which a Data Consumer can then render and present in a manner most suited to its users
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Ids for this item
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ 0..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ 0..1 string The value that is unique
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(InterweaveOrganization) Organization that issued id (may be just text)
... active ?!SΣ 1..1 boolean Whether this schedule is in active use.
... serviceCategory Σ 0..1 CodeableConcept High-level category
Binding: ServiceCategory (preferred)
... serviceType SΣ 1..* CodeableConcept Specific service
Binding: UK Core Care Setting Type (preferred)
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 0..* Coding Code defined by a terminology system
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ 1..1 uri Identity of the terminology system
..... version Σ 0..1 string Version of the system - if relevant
..... code Σ 1..1 code Symbol in syntax defined by the system
..... display Σ 1..1 string Representation defined by the system
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... specialty SΣ 0..* CodeableConcept Type of specialty needed.
Binding: UK Core Practice Setting Code (required)
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 0..* Coding Code defined by a terminology system
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ 1..1 uri Identity of the terminology system
..... version Σ 0..1 string Version of the system - if relevant
..... code Σ 1..1 code Symbol in syntax defined by the system
..... display Σ 1..1 string Representation defined by the system
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... actor SΣ 1..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location) Resource(s) that availability information is being provided for.
... planningHorizon SΣ 1..1 Period The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a template for planning outside these dates.
.... extension 0..0
.... start SΣC 1..1 dateTime Starting time with inclusive boundary
.... end ΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
... comment 0..1 string Comments on availability

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Schedule.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
Schedule.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.meta.tag:SourceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.meta.tag:ProvenanceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Schedule.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Schedule.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Schedule.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Schedule.serviceCategorypreferredServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Schedule.serviceTypepreferredUKCoreCareSettingType
https://fhir.hl7.org.uk/ValueSet/UKCore-CareSettingType
from this IG
Schedule.specialtyrequiredUKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)
https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode
from this IG

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorScheduleIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorScheduleIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorScheduleIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorScheduleIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceScheduleA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from UKCoreSchedule

Summary

Mandatory: 4 elements(12 nested mandatory elements)
Must-Support: 12 elements
Fixed: 2 elements
Prohibited: 11 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Schedule.meta.tag

 

Other representations of profile: CSV, Excel, Schematron

Notes:

Differences between Interweave STU3 and R4 profiles

Element name Change details
serviceCategory
  • Change of preferred codeSystem from http://hl7.org/fhir/service-category to http://terminology.hl7.org/CodeSystem/service-category
serviceType
  • Changed preferred valueSet from https://fhir.yhcr.nhs.uk/ValueSet/Interweave-UkCoreCareSettingType to https://fhir.hl7.org.uk/ValueSet/UKCore-CareSettingType
specialty
  • Removed binding from valueSet https://fhir.hl7.org.uk/STU3/CodeSystem/CareConnect-SDSJobRoleName-1
  • Added binding to valueSet https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode

Graphical relationship diagram

Graphical relationship diagram of schedule resource