Interweave Implementation Guide
0.1.0 - ci-build
Interweave Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the STU3 profiles here.
Official URL: https://fhir.hl7.org.uk/StructureDefinition/UKCore-Appointment | Version: 1.3.0 | |||
Active as of 2023-12-12 | Computable Name: UKCoreAppointment | |||
Copyright/Legal: Copyright © 2021+ HL7 UK Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. HL7® FHIR® standard Copyright © 2011+ HL7 The HL7® FHIR® standard is used under the FHIR license. You may obtain a copy of the FHIR license at https://www.hl7.org/fhir/license.html. |
This profile defines the UK constraints and extensions on the International FHIR resource Appointment.
This profile allows recording of detailed information about a planned meeting that may be in the future or past. The resource only describes a single meeting, a series of repeating visits would require multiple appointment resources to be created for each instance.
Examples include a scheduled surgery, a follow-up for a clinical visit, a scheduled conference call between clinicians to discuss a case, the reservation of a piece of diagnostic equipment for a particular use, etc. The visit scheduled by an appointment may be in person or remote (by phone, video conference, etc.) All that matters is that the time and usage of one or more individuals, locations and/or pieces of equipment is being fully or partially reserved for a designated period of time.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Appointment
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Appointment | 0..* | Appointment | A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s) | |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
bookingOrganization | 0..1 | Reference(Organization) | A reference to the source Organization of the booked appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-BookingOrganization | |
deliveryChannel | 0..1 | CodeableConcept | Defines the delivery channel of a scheduled appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-DeliveryChannel Binding: UK Core Delivery Channel (extensible) | |
status | S | 1..1 | code | The overall status of the appointment. |
specialty | S | 0..* | CodeableConcept | The specialty of a practitioner that would be required to perform the service requested in this appointment. Binding: UK Core Practice Setting Code (extensible) |
appointmentType | S | 0..1 | CodeableConcept | The type of appointment or patient that has been booked in the slot. Binding: UK Core Appointment Reason Code (extensible): A set of codes that define an appointment reason. |
reasonCode | S | 0..* | CodeableConcept | The reason for the appointment. |
reasonReference | S | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | A reference to the Observation, Condition, Procedure, or ImmunizationRecommendation that is the reason for the appointment. |
start | S | 0..1 | instant | The start time of the appointment. |
basedOn | S | 0..* | Reference(ServiceRequest) | The service request this appointment is allocated to assess. |
participant | S | 1..* | BackboneElement | A list of participants involved in the appointment. |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Appointment.specialty | extensible | UKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode from this IG | |
Appointment.appointmentType | extensible | UKCoreAppointmentReasonCodehttps://fhir.hl7.org.uk/ValueSet/UKCore-AppointmentReasonCode from this IG |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Appointment | C | 0..* | Appointment | A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s) app-2: Either start and end are specified, or neither app-3: Only proposed or cancelled appointments can be missing start/end dates app-4: Cancelation reason is only used for appointments that have been cancelled, or no-show |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
bookingOrganization | 0..1 | Reference(Organization) | A reference to the source Organization of the booked appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-BookingOrganization | |
deliveryChannel | 0..1 | CodeableConcept | Defines the delivery channel of a scheduled appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-DeliveryChannel Binding: UK Core Delivery Channel (extensible) | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!SΣ | 1..1 | code | The overall status of the appointment. Binding: AppointmentStatus (required): The free/busy status of an appointment. |
specialty | SΣ | 0..* | CodeableConcept | The specialty of a practitioner that would be required to perform the service requested in this appointment. Binding: UK Core Practice Setting Code (extensible) |
appointmentType | SΣ | 0..1 | CodeableConcept | The type of appointment or patient that has been booked in the slot. Binding: UK Core Appointment Reason Code (extensible): A set of codes that define an appointment reason. |
reasonCode | SΣ | 0..* | CodeableConcept | The reason for the appointment. Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place. |
reasonReference | S | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | A reference to the Observation, Condition, Procedure, or ImmunizationRecommendation that is the reason for the appointment. |
start | SΣ | 0..1 | instant | The start time of the appointment. |
basedOn | S | 0..* | Reference(ServiceRequest) | The service request this appointment is allocated to assess. |
participant | SC | 1..* | BackboneElement | A list of participants involved in the appointment. app-1: Either the type or actor on the participant SHALL be specified |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
status | Σ | 1..1 | code | accepted | declined | tentative | needs-action Binding: ParticipationStatus (required): The Participation status of an appointment. |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Appointment.status | required | AppointmentStatushttp://hl7.org/fhir/ValueSet/appointmentstatus|4.0.1 from the FHIR Standard | |
Appointment.specialty | extensible | UKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode from this IG | |
Appointment.appointmentType | extensible | UKCoreAppointmentReasonCodehttps://fhir.hl7.org.uk/ValueSet/UKCore-AppointmentReasonCode from this IG | |
Appointment.reasonCode | preferred | EncounterReasonCodeshttp://hl7.org/fhir/ValueSet/encounter-reason from the FHIR Standard | |
Appointment.participant.status | required | ParticipationStatushttp://hl7.org/fhir/ValueSet/participationstatus|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
app-1 | error | Appointment.participant | Either the type or actor on the participant SHALL be specified : type.exists() or actor.exists() | |
app-2 | error | Appointment | Either start and end are specified, or neither : start.exists() = end.exists() | |
app-3 | error | Appointment | Only proposed or cancelled appointments can be missing start/end dates : (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist')) | |
app-4 | error | Appointment | Cancelation reason is only used for appointments that have been cancelled, or no-show : Appointment.cancelationReason.exists() implies (Appointment.status='no-show' or Appointment.status='cancelled') | |
dom-2 | error | Appointment | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Appointment | If 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-4 | error | Appointment | If 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-5 | error | Appointment | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Appointment | A resource should have narrative for robust management : text.`div`.exists() | |
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() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Appointment | C | 0..* | Appointment | A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s) app-2: Either start and end are specified, or neither app-3: Only proposed or cancelled appointments can be missing start/end dates app-4: Cancelation reason is only used for appointments that have been cancelled, or no-show | ||||
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: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
bookingOrganization | 0..1 | Reference(Organization) | A reference to the source Organization of the booked appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-BookingOrganization | |||||
deliveryChannel | 0..1 | CodeableConcept | Defines the delivery channel of a scheduled appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-DeliveryChannel Binding: UK Core Delivery Channel (extensible) | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..* | Identifier | External Ids for this item | ||||
status | ?!SΣ | 1..1 | code | The overall status of the appointment. Binding: AppointmentStatus (required): The free/busy status of an appointment. | ||||
cancelationReason | Σ | 0..1 | CodeableConcept | The coded reason for the appointment being cancelled Binding: AppointmentCancellationReason (example) | ||||
serviceCategory | Σ | 0..* | CodeableConcept | A broad categorization of the service that is to be performed during this appointment Binding: ServiceCategory (example) | ||||
serviceType | Σ | 0..* | CodeableConcept | The specific service that is to be performed during this appointment Binding: ServiceType (example) | ||||
specialty | SΣ | 0..* | CodeableConcept | The specialty of a practitioner that would be required to perform the service requested in this appointment. Binding: UK Core Practice Setting Code (extensible) | ||||
appointmentType | SΣ | 0..1 | CodeableConcept | The type of appointment or patient that has been booked in the slot. Binding: UK Core Appointment Reason Code (extensible): A set of codes that define an appointment reason. | ||||
reasonCode | SΣ | 0..* | CodeableConcept | The reason for the appointment. Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place. | ||||
reasonReference | S | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | A reference to the Observation, Condition, Procedure, or ImmunizationRecommendation that is the reason for the appointment. | ||||
priority | 0..1 | unsignedInt | Used to make informed decisions if needing to re-prioritize | |||||
description | 0..1 | string | Shown on a subject line in a meeting request, or appointment list | |||||
supportingInformation | 0..* | Reference(Resource) | Additional information to support the appointment | |||||
start | SΣ | 0..1 | instant | The start time of the appointment. | ||||
end | Σ | 0..1 | instant | When appointment is to conclude | ||||
minutesDuration | 0..1 | positiveInt | Can be less than start/end (e.g. estimate) | |||||
slot | 0..* | Reference(Slot) | The slots that this appointment is filling | |||||
created | 0..1 | dateTime | The date that this appointment was initially created | |||||
comment | 0..1 | string | Additional comments | |||||
patientInstruction | 0..1 | string | Detailed information and instructions for the patient | |||||
basedOn | S | 0..* | Reference(ServiceRequest) | The service request this appointment is allocated to assess. | ||||
participant | SC | 1..* | BackboneElement | A list of participants involved in the appointment. app-1: Either the type or actor on the participant SHALL be specified | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
type | Σ | 0..* | CodeableConcept | Role of participant in the appointment Binding: ParticipantType (extensible): Role of participant in encounter. | ||||
actor | Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location) | Person, Location/HealthcareService or Device | ||||
required | Σ | 0..1 | code | required | optional | information-only Binding: ParticipantRequired (required): Is the Participant required to attend the appointment. | ||||
status | Σ | 1..1 | code | accepted | declined | tentative | needs-action Binding: ParticipationStatus (required): The Participation status of an appointment. | ||||
period | 0..1 | Period | Participation period of the actor | |||||
requestedPeriod | 0..* | Period | Potential date/time interval(s) requested to allocate the appointment within | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Appointment.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Appointment.status | required | AppointmentStatushttp://hl7.org/fhir/ValueSet/appointmentstatus|4.0.1 from the FHIR Standard | ||||
Appointment.cancelationReason | example | AppointmentCancellationReasonhttp://hl7.org/fhir/ValueSet/appointment-cancellation-reason from the FHIR Standard | ||||
Appointment.serviceCategory | example | ServiceCategoryhttp://hl7.org/fhir/ValueSet/service-category from the FHIR Standard | ||||
Appointment.serviceType | example | ServiceTypehttp://hl7.org/fhir/ValueSet/service-type from the FHIR Standard | ||||
Appointment.specialty | extensible | UKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode from this IG | ||||
Appointment.appointmentType | extensible | UKCoreAppointmentReasonCodehttps://fhir.hl7.org.uk/ValueSet/UKCore-AppointmentReasonCode from this IG | ||||
Appointment.reasonCode | preferred | EncounterReasonCodeshttp://hl7.org/fhir/ValueSet/encounter-reason from the FHIR Standard | ||||
Appointment.participant.type | extensible | ParticipantTypehttp://hl7.org/fhir/ValueSet/encounter-participant-type from the FHIR Standard | ||||
Appointment.participant.required | required | ParticipantRequiredhttp://hl7.org/fhir/ValueSet/participantrequired|4.0.1 from the FHIR Standard | ||||
Appointment.participant.status | required | ParticipationStatushttp://hl7.org/fhir/ValueSet/participationstatus|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
app-1 | error | Appointment.participant | Either the type or actor on the participant SHALL be specified : type.exists() or actor.exists() | |
app-2 | error | Appointment | Either start and end are specified, or neither : start.exists() = end.exists() | |
app-3 | error | Appointment | Only proposed or cancelled appointments can be missing start/end dates : (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist')) | |
app-4 | error | Appointment | Cancelation reason is only used for appointments that have been cancelled, or no-show : Appointment.cancelationReason.exists() implies (Appointment.status='no-show' or Appointment.status='cancelled') | |
dom-2 | error | Appointment | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Appointment | If 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-4 | error | Appointment | If 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-5 | error | Appointment | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Appointment | A resource should have narrative for robust management : text.`div`.exists() | |
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 Appointment
Differential View
This structure is derived from Appointment
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Appointment | 0..* | Appointment | A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s) | |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
bookingOrganization | 0..1 | Reference(Organization) | A reference to the source Organization of the booked appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-BookingOrganization | |
deliveryChannel | 0..1 | CodeableConcept | Defines the delivery channel of a scheduled appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-DeliveryChannel Binding: UK Core Delivery Channel (extensible) | |
status | S | 1..1 | code | The overall status of the appointment. |
specialty | S | 0..* | CodeableConcept | The specialty of a practitioner that would be required to perform the service requested in this appointment. Binding: UK Core Practice Setting Code (extensible) |
appointmentType | S | 0..1 | CodeableConcept | The type of appointment or patient that has been booked in the slot. Binding: UK Core Appointment Reason Code (extensible): A set of codes that define an appointment reason. |
reasonCode | S | 0..* | CodeableConcept | The reason for the appointment. |
reasonReference | S | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | A reference to the Observation, Condition, Procedure, or ImmunizationRecommendation that is the reason for the appointment. |
start | S | 0..1 | instant | The start time of the appointment. |
basedOn | S | 0..* | Reference(ServiceRequest) | The service request this appointment is allocated to assess. |
participant | S | 1..* | BackboneElement | A list of participants involved in the appointment. |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Appointment.specialty | extensible | UKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode from this IG | |
Appointment.appointmentType | extensible | UKCoreAppointmentReasonCodehttps://fhir.hl7.org.uk/ValueSet/UKCore-AppointmentReasonCode from this IG |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Appointment | C | 0..* | Appointment | A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s) app-2: Either start and end are specified, or neither app-3: Only proposed or cancelled appointments can be missing start/end dates app-4: Cancelation reason is only used for appointments that have been cancelled, or no-show |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
bookingOrganization | 0..1 | Reference(Organization) | A reference to the source Organization of the booked appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-BookingOrganization | |
deliveryChannel | 0..1 | CodeableConcept | Defines the delivery channel of a scheduled appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-DeliveryChannel Binding: UK Core Delivery Channel (extensible) | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!SΣ | 1..1 | code | The overall status of the appointment. Binding: AppointmentStatus (required): The free/busy status of an appointment. |
specialty | SΣ | 0..* | CodeableConcept | The specialty of a practitioner that would be required to perform the service requested in this appointment. Binding: UK Core Practice Setting Code (extensible) |
appointmentType | SΣ | 0..1 | CodeableConcept | The type of appointment or patient that has been booked in the slot. Binding: UK Core Appointment Reason Code (extensible): A set of codes that define an appointment reason. |
reasonCode | SΣ | 0..* | CodeableConcept | The reason for the appointment. Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place. |
reasonReference | S | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | A reference to the Observation, Condition, Procedure, or ImmunizationRecommendation that is the reason for the appointment. |
start | SΣ | 0..1 | instant | The start time of the appointment. |
basedOn | S | 0..* | Reference(ServiceRequest) | The service request this appointment is allocated to assess. |
participant | SC | 1..* | BackboneElement | A list of participants involved in the appointment. app-1: Either the type or actor on the participant SHALL be specified |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
status | Σ | 1..1 | code | accepted | declined | tentative | needs-action Binding: ParticipationStatus (required): The Participation status of an appointment. |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Appointment.status | required | AppointmentStatushttp://hl7.org/fhir/ValueSet/appointmentstatus|4.0.1 from the FHIR Standard | |
Appointment.specialty | extensible | UKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode from this IG | |
Appointment.appointmentType | extensible | UKCoreAppointmentReasonCodehttps://fhir.hl7.org.uk/ValueSet/UKCore-AppointmentReasonCode from this IG | |
Appointment.reasonCode | preferred | EncounterReasonCodeshttp://hl7.org/fhir/ValueSet/encounter-reason from the FHIR Standard | |
Appointment.participant.status | required | ParticipationStatushttp://hl7.org/fhir/ValueSet/participationstatus|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
app-1 | error | Appointment.participant | Either the type or actor on the participant SHALL be specified : type.exists() or actor.exists() | |
app-2 | error | Appointment | Either start and end are specified, or neither : start.exists() = end.exists() | |
app-3 | error | Appointment | Only proposed or cancelled appointments can be missing start/end dates : (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist')) | |
app-4 | error | Appointment | Cancelation reason is only used for appointments that have been cancelled, or no-show : Appointment.cancelationReason.exists() implies (Appointment.status='no-show' or Appointment.status='cancelled') | |
dom-2 | error | Appointment | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Appointment | If 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-4 | error | Appointment | If 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-5 | error | Appointment | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Appointment | A resource should have narrative for robust management : text.`div`.exists() | |
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() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Appointment | C | 0..* | Appointment | A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s) app-2: Either start and end are specified, or neither app-3: Only proposed or cancelled appointments can be missing start/end dates app-4: Cancelation reason is only used for appointments that have been cancelled, or no-show | ||||
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: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
bookingOrganization | 0..1 | Reference(Organization) | A reference to the source Organization of the booked appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-BookingOrganization | |||||
deliveryChannel | 0..1 | CodeableConcept | Defines the delivery channel of a scheduled appointment. URL: https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-DeliveryChannel Binding: UK Core Delivery Channel (extensible) | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..* | Identifier | External Ids for this item | ||||
status | ?!SΣ | 1..1 | code | The overall status of the appointment. Binding: AppointmentStatus (required): The free/busy status of an appointment. | ||||
cancelationReason | Σ | 0..1 | CodeableConcept | The coded reason for the appointment being cancelled Binding: AppointmentCancellationReason (example) | ||||
serviceCategory | Σ | 0..* | CodeableConcept | A broad categorization of the service that is to be performed during this appointment Binding: ServiceCategory (example) | ||||
serviceType | Σ | 0..* | CodeableConcept | The specific service that is to be performed during this appointment Binding: ServiceType (example) | ||||
specialty | SΣ | 0..* | CodeableConcept | The specialty of a practitioner that would be required to perform the service requested in this appointment. Binding: UK Core Practice Setting Code (extensible) | ||||
appointmentType | SΣ | 0..1 | CodeableConcept | The type of appointment or patient that has been booked in the slot. Binding: UK Core Appointment Reason Code (extensible): A set of codes that define an appointment reason. | ||||
reasonCode | SΣ | 0..* | CodeableConcept | The reason for the appointment. Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place. | ||||
reasonReference | S | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | A reference to the Observation, Condition, Procedure, or ImmunizationRecommendation that is the reason for the appointment. | ||||
priority | 0..1 | unsignedInt | Used to make informed decisions if needing to re-prioritize | |||||
description | 0..1 | string | Shown on a subject line in a meeting request, or appointment list | |||||
supportingInformation | 0..* | Reference(Resource) | Additional information to support the appointment | |||||
start | SΣ | 0..1 | instant | The start time of the appointment. | ||||
end | Σ | 0..1 | instant | When appointment is to conclude | ||||
minutesDuration | 0..1 | positiveInt | Can be less than start/end (e.g. estimate) | |||||
slot | 0..* | Reference(Slot) | The slots that this appointment is filling | |||||
created | 0..1 | dateTime | The date that this appointment was initially created | |||||
comment | 0..1 | string | Additional comments | |||||
patientInstruction | 0..1 | string | Detailed information and instructions for the patient | |||||
basedOn | S | 0..* | Reference(ServiceRequest) | The service request this appointment is allocated to assess. | ||||
participant | SC | 1..* | BackboneElement | A list of participants involved in the appointment. app-1: Either the type or actor on the participant SHALL be specified | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
type | Σ | 0..* | CodeableConcept | Role of participant in the appointment Binding: ParticipantType (extensible): Role of participant in encounter. | ||||
actor | Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location) | Person, Location/HealthcareService or Device | ||||
required | Σ | 0..1 | code | required | optional | information-only Binding: ParticipantRequired (required): Is the Participant required to attend the appointment. | ||||
status | Σ | 1..1 | code | accepted | declined | tentative | needs-action Binding: ParticipationStatus (required): The Participation status of an appointment. | ||||
period | 0..1 | Period | Participation period of the actor | |||||
requestedPeriod | 0..* | Period | Potential date/time interval(s) requested to allocate the appointment within | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Appointment.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Appointment.status | required | AppointmentStatushttp://hl7.org/fhir/ValueSet/appointmentstatus|4.0.1 from the FHIR Standard | ||||
Appointment.cancelationReason | example | AppointmentCancellationReasonhttp://hl7.org/fhir/ValueSet/appointment-cancellation-reason from the FHIR Standard | ||||
Appointment.serviceCategory | example | ServiceCategoryhttp://hl7.org/fhir/ValueSet/service-category from the FHIR Standard | ||||
Appointment.serviceType | example | ServiceTypehttp://hl7.org/fhir/ValueSet/service-type from the FHIR Standard | ||||
Appointment.specialty | extensible | UKCorePracticeSettingCode (a valid code from UKCore Practice Setting Code)https://fhir.hl7.org.uk/ValueSet/UKCore-PracticeSettingCode from this IG | ||||
Appointment.appointmentType | extensible | UKCoreAppointmentReasonCodehttps://fhir.hl7.org.uk/ValueSet/UKCore-AppointmentReasonCode from this IG | ||||
Appointment.reasonCode | preferred | EncounterReasonCodeshttp://hl7.org/fhir/ValueSet/encounter-reason from the FHIR Standard | ||||
Appointment.participant.type | extensible | ParticipantTypehttp://hl7.org/fhir/ValueSet/encounter-participant-type from the FHIR Standard | ||||
Appointment.participant.required | required | ParticipantRequiredhttp://hl7.org/fhir/ValueSet/participantrequired|4.0.1 from the FHIR Standard | ||||
Appointment.participant.status | required | ParticipationStatushttp://hl7.org/fhir/ValueSet/participationstatus|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
app-1 | error | Appointment.participant | Either the type or actor on the participant SHALL be specified : type.exists() or actor.exists() | |
app-2 | error | Appointment | Either start and end are specified, or neither : start.exists() = end.exists() | |
app-3 | error | Appointment | Only proposed or cancelled appointments can be missing start/end dates : (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist')) | |
app-4 | error | Appointment | Cancelation reason is only used for appointments that have been cancelled, or no-show : Appointment.cancelationReason.exists() implies (Appointment.status='no-show' or Appointment.status='cancelled') | |
dom-2 | error | Appointment | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Appointment | If 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-4 | error | Appointment | If 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-5 | error | Appointment | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Appointment | A resource should have narrative for robust management : text.`div`.exists() | |
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 Appointment
Other representations of profile: CSV, Excel, Schematron