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 R4 profiles here.

Resource Profile: CareConnectAppointment1

Official URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/CareConnect-Appointment-1 Version: 0.1.0
Draft as of 2019-12-09 Computable Name: CareConnect-Appointment-1

Copyright/Legal: Copyright © 2019 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

CareConnect Appointment profile.

CURATED BY INTEROPen see: http://www.interopen.org/careconnect-curation-methodology/ on the 23rd October 2019.

Usage:

Formal Views of Profile Content

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

This structure is derived from Appointment

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment 0..*AppointmentA 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..*ExtensionExtension
Slice: Unordered, Open by value:url
... deliveryChannel 0..1codeAn extension to record the delivery channel of a scheduled Appointment
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-DeliveryChannel-1
Binding: CareConnect-DeliveryChannel-1 (extensible): A ValueSet that identifies the delivery channel of an Appointment.

... appointmentCancellationReason 0..1stringThe reason the appointment was cancelled
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-AppointmentCancellationReason-1
... identifier 0..*IdentifierExternal Ids for this item.
... serviceCategory 0..1CodeableConceptA broad categorisation of the service that is to be performed during this appointment
Binding: Care Connect SDS Job Role Name (extensible): A ValueSet that contains a set of codes that identify the Practitioner of a scheduled Appointment.


doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Appointment.serviceCategoryextensibleCare Connect SDS Job Role Name
NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C0..*AppointmentA 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)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... deliveryChannel 0..1codeAn extension to record the delivery channel of a scheduled Appointment
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-DeliveryChannel-1
Binding: CareConnect-DeliveryChannel-1 (extensible): A ValueSet that identifies the delivery channel of an Appointment.


... bookingOrganisation 0..1Reference(CareConnect-Organization-1)An extension to record the organisation booking the appointment
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-BookingOrganisation-1
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this item.
... status ?!Σ1..1codeproposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error
Binding: AppointmentStatus (required): The free/busy status of an appointment.

... serviceCategory Σ0..1CodeableConceptA broad categorisation of the service that is to be performed during this appointment
Binding: Care Connect SDS Job Role Name (extensible): A ValueSet that contains a set of codes that identify the Practitioner of a scheduled Appointment.

... participant C1..*BackboneElementParticipants involved in appointment
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... status 1..1codeaccepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Appointment.statusrequiredAppointmentStatus
Appointment.serviceCategoryextensibleCare Connect SDS Job Role Name
Appointment.participant.statusrequiredParticipationStatus

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participantEither the type or actor on the participant SHALL be specified
: type.exists() or actor.exists()
app-2errorAppointmentEither start and end are specified, or neither
: start.empty() xor end.exists()
app-3errorAppointmentOnly proposed or cancelled appointments can be missing start/end dates
: (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled'))
dom-1errorAppointmentIf the resource is contained in another resource, it SHALL NOT contain any narrative
: contained.text.empty()
dom-2errorAppointmentIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorAppointmentIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
: contained.where(('#'+id in %resource.descendants().reference).not()).empty()
dom-4errorAppointmentIf 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()
ele-1errorAppointment.extension:deliveryChannel, Appointment.extension:appointmentCancellationReason, Appointment.extension:bookingOrganisation, Appointment.participantAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1errorAppointment.extension:deliveryChannel, Appointment.extension:appointmentCancellationReason, Appointment.extension:bookingOrganisationMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C0..*AppointmentA 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)
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... deliveryChannel 0..1codeAn extension to record the delivery channel of a scheduled Appointment
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-DeliveryChannel-1
Binding: CareConnect-DeliveryChannel-1 (extensible): A ValueSet that identifies the delivery channel of an Appointment.


... appointmentCancellationReason 0..1stringThe reason the appointment was cancelled
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-AppointmentCancellationReason-1
... bookingOrganisation 0..1Reference(CareConnect-Organization-1)An extension to record the organisation booking the appointment
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-BookingOrganisation-1
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this item.
... status ?!Σ1..1codeproposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error
Binding: AppointmentStatus (required): The free/busy status of an appointment.

... serviceCategory Σ0..1CodeableConceptA broad categorisation of the service that is to be performed during this appointment
Binding: Care Connect SDS Job Role Name (extensible): A ValueSet that contains a set of codes that identify the Practitioner of a scheduled Appointment.

... serviceType Σ0..*CodeableConceptThe specific service that is to be performed during this appointment
Binding: ServiceType (example)
... specialty Σ0..*CodeableConceptThe specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: Practice Setting Code Value Set (preferred)
... appointmentType Σ0..1CodeableConceptThe style of appointment or patient that has been booked in the slot (not service type)
Binding: v2 Appointment reason codes (preferred)
... reason Σ0..*CodeableConceptReason this appointment is scheduled
Binding: Encounter Reason Codes (preferred): The Reason for the appointment to take place.


... indication 0..*Reference(Condition | Procedure)Reason the appointment is to takes place (resource)
... priority 0..1unsignedIntUsed to make informed decisions if needing to re-prioritize
... description 0..1stringShown on a subject line in a meeting request, or appointment list
... supportingInformation 0..*Reference(Resource)Additional information to support the appointment
... start Σ0..1instantWhen appointment is to take place
... end Σ0..1instantWhen appointment is to conclude
... minutesDuration 0..1positiveIntCan be less than start/end (e.g. estimate)
... slot 0..*Reference(Slot)The slots that this appointment is filling
... created 0..1dateTimeThe date that this appointment was initially created
... comment 0..1stringAdditional comments
... incomingReferral 0..*Reference(ReferralRequest)The ReferralRequest provided as information to allocate to the Encounter
... participant C1..*BackboneElementParticipants involved in appointment
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... type Σ0..*CodeableConceptRole of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


.... actor Σ0..1Reference(Patient | Practitioner | RelatedPerson | Device | HealthcareService | Location)Person, Location/HealthcareService or Device
.... required Σ0..1coderequired | optional | information-only
Binding: ParticipantRequired (required): Is the Participant required to attend the appointment.

.... status 1..1codeaccepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.

... requestedPeriod 0..*PeriodPotential date/time interval(s) requested to allocate the appointment within

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Appointment.languageextensibleCommon Languages
Additional Bindings Purpose
AllLanguages Max Binding
Appointment.statusrequiredAppointmentStatus
Appointment.serviceCategoryextensibleCare Connect SDS Job Role Name
Appointment.serviceTypeexampleServiceType
Appointment.specialtypreferredPractice Setting Code Value Set
Appointment.appointmentTypepreferredv2 Appointment reason codes
Appointment.reasonpreferredEncounter Reason Codes
Appointment.participant.typeextensibleParticipantType
Appointment.participant.requiredrequiredParticipantRequired
Appointment.participant.statusrequiredParticipationStatus

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participantEither the type or actor on the participant SHALL be specified
: type.exists() or actor.exists()
ele-1errorAppointment.extension:deliveryChannel, Appointment.extension:appointmentCancellationReason, Appointment.extension:bookingOrganisation, Appointment.participantAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1errorAppointment.extension:deliveryChannel, Appointment.extension:appointmentCancellationReason, Appointment.extension:bookingOrganisationMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Differential View

This structure is derived from Appointment

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment 0..*AppointmentA 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..*ExtensionExtension
Slice: Unordered, Open by value:url
... deliveryChannel 0..1codeAn extension to record the delivery channel of a scheduled Appointment
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-DeliveryChannel-1
Binding: CareConnect-DeliveryChannel-1 (extensible): A ValueSet that identifies the delivery channel of an Appointment.

... appointmentCancellationReason 0..1stringThe reason the appointment was cancelled
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-AppointmentCancellationReason-1
... identifier 0..*IdentifierExternal Ids for this item.
... serviceCategory 0..1CodeableConceptA broad categorisation of the service that is to be performed during this appointment
Binding: Care Connect SDS Job Role Name (extensible): A ValueSet that contains a set of codes that identify the Practitioner of a scheduled Appointment.


doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Appointment.serviceCategoryextensibleCare Connect SDS Job Role Name

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C0..*AppointmentA 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)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... deliveryChannel 0..1codeAn extension to record the delivery channel of a scheduled Appointment
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-DeliveryChannel-1
Binding: CareConnect-DeliveryChannel-1 (extensible): A ValueSet that identifies the delivery channel of an Appointment.


... bookingOrganisation 0..1Reference(CareConnect-Organization-1)An extension to record the organisation booking the appointment
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-BookingOrganisation-1
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this item.
... status ?!Σ1..1codeproposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error
Binding: AppointmentStatus (required): The free/busy status of an appointment.

... serviceCategory Σ0..1CodeableConceptA broad categorisation of the service that is to be performed during this appointment
Binding: Care Connect SDS Job Role Name (extensible): A ValueSet that contains a set of codes that identify the Practitioner of a scheduled Appointment.

... participant C1..*BackboneElementParticipants involved in appointment
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... status 1..1codeaccepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Appointment.statusrequiredAppointmentStatus
Appointment.serviceCategoryextensibleCare Connect SDS Job Role Name
Appointment.participant.statusrequiredParticipationStatus

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participantEither the type or actor on the participant SHALL be specified
: type.exists() or actor.exists()
app-2errorAppointmentEither start and end are specified, or neither
: start.empty() xor end.exists()
app-3errorAppointmentOnly proposed or cancelled appointments can be missing start/end dates
: (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled'))
dom-1errorAppointmentIf the resource is contained in another resource, it SHALL NOT contain any narrative
: contained.text.empty()
dom-2errorAppointmentIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorAppointmentIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
: contained.where(('#'+id in %resource.descendants().reference).not()).empty()
dom-4errorAppointmentIf 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()
ele-1errorAppointment.extension:deliveryChannel, Appointment.extension:appointmentCancellationReason, Appointment.extension:bookingOrganisation, Appointment.participantAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1errorAppointment.extension:deliveryChannel, Appointment.extension:appointmentCancellationReason, Appointment.extension:bookingOrganisationMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C0..*AppointmentA 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)
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... deliveryChannel 0..1codeAn extension to record the delivery channel of a scheduled Appointment
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-DeliveryChannel-1
Binding: CareConnect-DeliveryChannel-1 (extensible): A ValueSet that identifies the delivery channel of an Appointment.


... appointmentCancellationReason 0..1stringThe reason the appointment was cancelled
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-AppointmentCancellationReason-1
... bookingOrganisation 0..1Reference(CareConnect-Organization-1)An extension to record the organisation booking the appointment
URL: https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-BookingOrganisation-1
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this item.
... status ?!Σ1..1codeproposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error
Binding: AppointmentStatus (required): The free/busy status of an appointment.

... serviceCategory Σ0..1CodeableConceptA broad categorisation of the service that is to be performed during this appointment
Binding: Care Connect SDS Job Role Name (extensible): A ValueSet that contains a set of codes that identify the Practitioner of a scheduled Appointment.

... serviceType Σ0..*CodeableConceptThe specific service that is to be performed during this appointment
Binding: ServiceType (example)
... specialty Σ0..*CodeableConceptThe specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: Practice Setting Code Value Set (preferred)
... appointmentType Σ0..1CodeableConceptThe style of appointment or patient that has been booked in the slot (not service type)
Binding: v2 Appointment reason codes (preferred)
... reason Σ0..*CodeableConceptReason this appointment is scheduled
Binding: Encounter Reason Codes (preferred): The Reason for the appointment to take place.


... indication 0..*Reference(Condition | Procedure)Reason the appointment is to takes place (resource)
... priority 0..1unsignedIntUsed to make informed decisions if needing to re-prioritize
... description 0..1stringShown on a subject line in a meeting request, or appointment list
... supportingInformation 0..*Reference(Resource)Additional information to support the appointment
... start Σ0..1instantWhen appointment is to take place
... end Σ0..1instantWhen appointment is to conclude
... minutesDuration 0..1positiveIntCan be less than start/end (e.g. estimate)
... slot 0..*Reference(Slot)The slots that this appointment is filling
... created 0..1dateTimeThe date that this appointment was initially created
... comment 0..1stringAdditional comments
... incomingReferral 0..*Reference(ReferralRequest)The ReferralRequest provided as information to allocate to the Encounter
... participant C1..*BackboneElementParticipants involved in appointment
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... type Σ0..*CodeableConceptRole of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


.... actor Σ0..1Reference(Patient | Practitioner | RelatedPerson | Device | HealthcareService | Location)Person, Location/HealthcareService or Device
.... required Σ0..1coderequired | optional | information-only
Binding: ParticipantRequired (required): Is the Participant required to attend the appointment.

.... status 1..1codeaccepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.

... requestedPeriod 0..*PeriodPotential date/time interval(s) requested to allocate the appointment within

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Appointment.languageextensibleCommon Languages
Additional Bindings Purpose
AllLanguages Max Binding
Appointment.statusrequiredAppointmentStatus
Appointment.serviceCategoryextensibleCare Connect SDS Job Role Name
Appointment.serviceTypeexampleServiceType
Appointment.specialtypreferredPractice Setting Code Value Set
Appointment.appointmentTypepreferredv2 Appointment reason codes
Appointment.reasonpreferredEncounter Reason Codes
Appointment.participant.typeextensibleParticipantType
Appointment.participant.requiredrequiredParticipantRequired
Appointment.participant.statusrequiredParticipationStatus

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participantEither the type or actor on the participant SHALL be specified
: type.exists() or actor.exists()
ele-1errorAppointment.extension:deliveryChannel, Appointment.extension:appointmentCancellationReason, Appointment.extension:bookingOrganisation, Appointment.participantAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1errorAppointment.extension:deliveryChannel, Appointment.extension:appointmentCancellationReason, Appointment.extension:bookingOrganisationMust have either extensions or value[x], not both
: extension.exists() != value.exists()

 

Other representations of profile: CSV, Excel, Schematron