Clic Santé
1.0.0 - trial-use

This page is part of the Interoperability of Clic Santé (v1.0.0: Release) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: Appointment ( Experimental )

Official URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment Version: 1.0.0
Active as of 2025-03-15 Computable Name: AppointmentProfile

An appointment that aligns with Clic Sante's systems.

Usage:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraintsdoco
.. 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
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: 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
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
... id Σ 1..1 id Logical id of this artifact
... language 1..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding

ele-1: All FHIR elements must have a @value or children
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... availabilityState 0..1 code invalid | deleted | pending | active | inactive
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-availability-state
Binding: Appointment Availability State Value Set (required)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... statusModified 0..1 instant When the status of the appointment was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-status-modified
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... group 0..1 uuid UUID of the group to which the appointment belongs
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-group
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... createdBy 0..1 integer ID of the user who created the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/created-by
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... followUpState 0..1 code reached | not_reached | no_action_taken
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-state
Binding: Appointment Follow Up State Value Set (required)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... followUpStateModified 0..1 instant When the follow up state was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-modified
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... source 0..1 code admin | public
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-source
Binding: Appointment Source Value Set (required)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... isReminderSent 0..1 boolean Whether the reminder message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-reminder-sent
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... isRelaunchSent 0..1 boolean Whether the relaunch message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-relaunch-sent
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... isDistanceHidden 0..1 boolean Whether the distance should be hidden
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-distance-hidden
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... resident 0..1 (Complex) The resident associated with the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-resident
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... start Σ 1..1 instant When appointment is to take place
ele-1: All FHIR elements must have a @value or children
... end Σ 1..1 instant When appointment is to conclude
ele-1: All FHIR elements must have a @value or children
... created 1..1 dateTime The date that this appointment was initially created
ele-1: All FHIR elements must have a @value or children
... participant C 1..* BackboneElement Participants involved in appointment
app-1: Either the type or actor on the participant SHALL be specified
ele-1: All FHIR elements must have a @value or children
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... clientStateModified 0..1 instant When the status was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/client-state-modified
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... actor Σ 0..1 Reference(Appointment Patient | Related Person) Person, Location/HealthcareService or Device
ele-1: All FHIR elements must have a @value or children
.... status Σ 1..1 code absent | cancelled-admin | cancelled-public | not-eligible | present | sample-received | undefined
Binding: Client State Value Set (required)
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Appointment.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Appointment.statusrequiredAppointmentStateValueSet (a valid code from Appointment State codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/appointment-state
from this IG
Appointment.participant.statusrequiredClientStateValueSet (a valid code from Client State Codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/client-state
from this IG

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.exists() = end.exists()
app-3errorAppointmentOnly proposed or cancelled appointments can be missing start/end dates
: (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist'))
app-4errorAppointmentCancelation 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-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 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-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()
dom-5errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAppointmentA 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 Appointment

NameFlagsCard.TypeDescription & Constraintsdoco
.. 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)
... id 1..1 id Logical id of this artifact
... meta
.... Slices for extension Content/Rules for all slices
..... timezone 0..1 code The timezone of all datetime present in the appointment
URL: http://hl7.org/fhir/StructureDefinition/timezone
Binding: IANATimezones (required): IANA Timezones (BCP 175)

... implicitRules 0..0
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... availabilityState 0..1 code invalid | deleted | pending | active | inactive
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-availability-state
Binding: Appointment Availability State Value Set (required)
.... statusModified 0..1 instant When the status of the appointment was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-status-modified
.... group 0..1 uuid UUID of the group to which the appointment belongs
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-group
.... createdBy 0..1 integer ID of the user who created the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/created-by
.... followUpState 0..1 code reached | not_reached | no_action_taken
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-state
Binding: Appointment Follow Up State Value Set (required)
.... followUpStateModified 0..1 instant When the follow up state was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-modified
.... source 0..1 code admin | public
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-source
Binding: Appointment Source Value Set (required)
.... isReminderSent 0..1 boolean Whether the reminder message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-reminder-sent
.... isRelaunchSent 0..1 boolean Whether the relaunch message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-relaunch-sent
.... isDistanceHidden 0..1 boolean Whether the distance should be hidden
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-distance-hidden
.... resident 0..1 (Complex) The resident associated with the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-resident
... modifierExtension 0..0
... status 1..1 code taken | pending | awaiting-confirmation | confirmed
Binding: Appointment State Value Set (required)
... start 1..1 instant When appointment is to take place
... end 1..1 instant When appointment is to conclude
... created 1..1 dateTime The date that this appointment was initially created
... participant
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... clientStateModified 0..1 instant When the status was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/client-state-modified
.... modifierExtension 0..0
.... actor 0..1 Reference(Appointment Patient | Related Person) Person, Location/HealthcareService or Device
.... status 1..1 code absent | cancelled-admin | cancelled-public | not-eligible | present | sample-received | undefined
Binding: Client State Value Set (required)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Appointment.statusrequiredAppointmentStateValueSet (a valid code from Appointment State codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/appointment-state
from this IG
Appointment.participant.statusrequiredClientStateValueSet (a valid code from Client State Codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/client-state
from this IG
NameFlagsCard.TypeDescription & Constraintsdoco
.. 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 Σ 1..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... timezone 0..1 code The timezone of all datetime present in the appointment
URL: http://hl7.org/fhir/StructureDefinition/timezone
Binding: IANATimezones (required): IANA Timezones (BCP 175)


.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated Σ 0..1 instant When the resource version last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


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


... language 1..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... 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
.... availabilityState 0..1 code invalid | deleted | pending | active | inactive
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-availability-state
Binding: Appointment Availability State Value Set (required)
.... statusModified 0..1 instant When the status of the appointment was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-status-modified
.... group 0..1 uuid UUID of the group to which the appointment belongs
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-group
.... createdBy 0..1 integer ID of the user who created the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/created-by
.... followUpState 0..1 code reached | not_reached | no_action_taken
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-state
Binding: Appointment Follow Up State Value Set (required)
.... followUpStateModified 0..1 instant When the follow up state was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-modified
.... source 0..1 code admin | public
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-source
Binding: Appointment Source Value Set (required)
.... isReminderSent 0..1 boolean Whether the reminder message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-reminder-sent
.... isRelaunchSent 0..1 boolean Whether the relaunch message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-relaunch-sent
.... isDistanceHidden 0..1 boolean Whether the distance should be hidden
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-distance-hidden
.... resident 0..1 (Complex) The resident associated with the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-resident
... identifier Σ 0..* Identifier External Ids for this item
... status ?!Σ 1..1 code taken | pending | awaiting-confirmation | confirmed
Binding: Appointment State Value Set (required)
... 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 Σ 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
... appointmentType Σ 0..1 CodeableConcept The style of appointment or patient that has been booked in the slot (not service type)
Binding: hl7VS-appointmentReasonCodes (preferred)
... reasonCode Σ 0..* CodeableConcept Coded reason this appointment is scheduled
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.


... reasonReference 0..* Reference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason the appointment is to take place (resource)
... 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 Σ 1..1 instant When appointment is to take place
... end Σ 1..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 1..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 0..* Reference(ServiceRequest) The service request this appointment is allocated to assess
... participant C 1..* BackboneElement Participants involved in appointment
app-1: Either the type or actor on the participant SHALL be specified
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... clientStateModified 0..1 instant When the status was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/client-state-modified
.... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


.... actor Σ 0..1 Reference(Appointment Patient | Related Person) 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 absent | cancelled-admin | cancelled-public | not-eligible | present | sample-received | undefined
Binding: Client State Value Set (required)
.... period 0..1 Period Participation period of the actor
... requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Appointment.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
Appointment.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Appointment.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Appointment.statusrequiredAppointmentStateValueSet (a valid code from Appointment State codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/appointment-state
from this IG
Appointment.cancelationReasonexampleAppointmentCancellationReason
http://hl7.org/fhir/ValueSet/appointment-cancellation-reason
from the FHIR Standard
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Appointment.serviceTypeexampleServiceType
http://hl7.org/fhir/ValueSet/service-type
from the FHIR Standard
Appointment.specialtypreferredPracticeSettingCodeValueSet
http://hl7.org/fhir/ValueSet/c80-practice-codes
from the FHIR Standard
Appointment.appointmentTypepreferredHl7VSAppointmentReasonCodes
http://terminology.hl7.org/ValueSet/v2-0276
Appointment.reasonCodepreferredEncounterReasonCodes
http://hl7.org/fhir/ValueSet/encounter-reason
from the FHIR Standard
Appointment.participant.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
from the FHIR Standard
Appointment.participant.statusrequiredClientStateValueSet (a valid code from Client State Codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/client-state
from this IG

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.exists() = end.exists()
app-3errorAppointmentOnly proposed or cancelled appointments can be missing start/end dates
: (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist'))
app-4errorAppointmentCancelation 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-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 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-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()
dom-5errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAppointmentA 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 Appointment

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. 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
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: 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
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
... id Σ 1..1 id Logical id of this artifact
... language 1..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding

ele-1: All FHIR elements must have a @value or children
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... availabilityState 0..1 code invalid | deleted | pending | active | inactive
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-availability-state
Binding: Appointment Availability State Value Set (required)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... statusModified 0..1 instant When the status of the appointment was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-status-modified
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... group 0..1 uuid UUID of the group to which the appointment belongs
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-group
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... createdBy 0..1 integer ID of the user who created the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/created-by
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... followUpState 0..1 code reached | not_reached | no_action_taken
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-state
Binding: Appointment Follow Up State Value Set (required)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... followUpStateModified 0..1 instant When the follow up state was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-modified
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... source 0..1 code admin | public
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-source
Binding: Appointment Source Value Set (required)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... isReminderSent 0..1 boolean Whether the reminder message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-reminder-sent
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... isRelaunchSent 0..1 boolean Whether the relaunch message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-relaunch-sent
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... isDistanceHidden 0..1 boolean Whether the distance should be hidden
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-distance-hidden
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... resident 0..1 (Complex) The resident associated with the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-resident
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... start Σ 1..1 instant When appointment is to take place
ele-1: All FHIR elements must have a @value or children
... end Σ 1..1 instant When appointment is to conclude
ele-1: All FHIR elements must have a @value or children
... created 1..1 dateTime The date that this appointment was initially created
ele-1: All FHIR elements must have a @value or children
... participant C 1..* BackboneElement Participants involved in appointment
app-1: Either the type or actor on the participant SHALL be specified
ele-1: All FHIR elements must have a @value or children
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... clientStateModified 0..1 instant When the status was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/client-state-modified
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... actor Σ 0..1 Reference(Appointment Patient | Related Person) Person, Location/HealthcareService or Device
ele-1: All FHIR elements must have a @value or children
.... status Σ 1..1 code absent | cancelled-admin | cancelled-public | not-eligible | present | sample-received | undefined
Binding: Client State Value Set (required)
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Appointment.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Appointment.statusrequiredAppointmentStateValueSet (a valid code from Appointment State codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/appointment-state
from this IG
Appointment.participant.statusrequiredClientStateValueSet (a valid code from Client State Codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/client-state
from this IG

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.exists() = end.exists()
app-3errorAppointmentOnly proposed or cancelled appointments can be missing start/end dates
: (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist'))
app-4errorAppointmentCancelation 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-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 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-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()
dom-5errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAppointmentA 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()

Differential View

This structure is derived from Appointment

NameFlagsCard.TypeDescription & Constraintsdoco
.. 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)
... id 1..1 id Logical id of this artifact
... meta
.... Slices for extension Content/Rules for all slices
..... timezone 0..1 code The timezone of all datetime present in the appointment
URL: http://hl7.org/fhir/StructureDefinition/timezone
Binding: IANATimezones (required): IANA Timezones (BCP 175)

... implicitRules 0..0
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... availabilityState 0..1 code invalid | deleted | pending | active | inactive
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-availability-state
Binding: Appointment Availability State Value Set (required)
.... statusModified 0..1 instant When the status of the appointment was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-status-modified
.... group 0..1 uuid UUID of the group to which the appointment belongs
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-group
.... createdBy 0..1 integer ID of the user who created the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/created-by
.... followUpState 0..1 code reached | not_reached | no_action_taken
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-state
Binding: Appointment Follow Up State Value Set (required)
.... followUpStateModified 0..1 instant When the follow up state was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-modified
.... source 0..1 code admin | public
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-source
Binding: Appointment Source Value Set (required)
.... isReminderSent 0..1 boolean Whether the reminder message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-reminder-sent
.... isRelaunchSent 0..1 boolean Whether the relaunch message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-relaunch-sent
.... isDistanceHidden 0..1 boolean Whether the distance should be hidden
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-distance-hidden
.... resident 0..1 (Complex) The resident associated with the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-resident
... modifierExtension 0..0
... status 1..1 code taken | pending | awaiting-confirmation | confirmed
Binding: Appointment State Value Set (required)
... start 1..1 instant When appointment is to take place
... end 1..1 instant When appointment is to conclude
... created 1..1 dateTime The date that this appointment was initially created
... participant
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... clientStateModified 0..1 instant When the status was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/client-state-modified
.... modifierExtension 0..0
.... actor 0..1 Reference(Appointment Patient | Related Person) Person, Location/HealthcareService or Device
.... status 1..1 code absent | cancelled-admin | cancelled-public | not-eligible | present | sample-received | undefined
Binding: Client State Value Set (required)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Appointment.statusrequiredAppointmentStateValueSet (a valid code from Appointment State codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/appointment-state
from this IG
Appointment.participant.statusrequiredClientStateValueSet (a valid code from Client State Codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/client-state
from this IG

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. 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 Σ 1..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... timezone 0..1 code The timezone of all datetime present in the appointment
URL: http://hl7.org/fhir/StructureDefinition/timezone
Binding: IANATimezones (required): IANA Timezones (BCP 175)


.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated Σ 0..1 instant When the resource version last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


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


... language 1..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... 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
.... availabilityState 0..1 code invalid | deleted | pending | active | inactive
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-availability-state
Binding: Appointment Availability State Value Set (required)
.... statusModified 0..1 instant When the status of the appointment was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-status-modified
.... group 0..1 uuid UUID of the group to which the appointment belongs
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-group
.... createdBy 0..1 integer ID of the user who created the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/created-by
.... followUpState 0..1 code reached | not_reached | no_action_taken
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-state
Binding: Appointment Follow Up State Value Set (required)
.... followUpStateModified 0..1 instant When the follow up state was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-follow-up-modified
.... source 0..1 code admin | public
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-source
Binding: Appointment Source Value Set (required)
.... isReminderSent 0..1 boolean Whether the reminder message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-reminder-sent
.... isRelaunchSent 0..1 boolean Whether the relaunch message has been sent
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-relaunch-sent
.... isDistanceHidden 0..1 boolean Whether the distance should be hidden
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-distance-hidden
.... resident 0..1 (Complex) The resident associated with the appointment
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/appointment-resident
... identifier Σ 0..* Identifier External Ids for this item
... status ?!Σ 1..1 code taken | pending | awaiting-confirmation | confirmed
Binding: Appointment State Value Set (required)
... 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 Σ 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
... appointmentType Σ 0..1 CodeableConcept The style of appointment or patient that has been booked in the slot (not service type)
Binding: hl7VS-appointmentReasonCodes (preferred)
... reasonCode Σ 0..* CodeableConcept Coded reason this appointment is scheduled
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.


... reasonReference 0..* Reference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason the appointment is to take place (resource)
... 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 Σ 1..1 instant When appointment is to take place
... end Σ 1..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 1..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 0..* Reference(ServiceRequest) The service request this appointment is allocated to assess
... participant C 1..* BackboneElement Participants involved in appointment
app-1: Either the type or actor on the participant SHALL be specified
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... clientStateModified 0..1 instant When the status was last modified
URL: http://documentation.clicsante.ca/fhir/base/StructureDefinition/client-state-modified
.... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


.... actor Σ 0..1 Reference(Appointment Patient | Related Person) 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 absent | cancelled-admin | cancelled-public | not-eligible | present | sample-received | undefined
Binding: Client State Value Set (required)
.... period 0..1 Period Participation period of the actor
... requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Appointment.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
Appointment.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Appointment.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Appointment.statusrequiredAppointmentStateValueSet (a valid code from Appointment State codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/appointment-state
from this IG
Appointment.cancelationReasonexampleAppointmentCancellationReason
http://hl7.org/fhir/ValueSet/appointment-cancellation-reason
from the FHIR Standard
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Appointment.serviceTypeexampleServiceType
http://hl7.org/fhir/ValueSet/service-type
from the FHIR Standard
Appointment.specialtypreferredPracticeSettingCodeValueSet
http://hl7.org/fhir/ValueSet/c80-practice-codes
from the FHIR Standard
Appointment.appointmentTypepreferredHl7VSAppointmentReasonCodes
http://terminology.hl7.org/ValueSet/v2-0276
Appointment.reasonCodepreferredEncounterReasonCodes
http://hl7.org/fhir/ValueSet/encounter-reason
from the FHIR Standard
Appointment.participant.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
from the FHIR Standard
Appointment.participant.statusrequiredClientStateValueSet (a valid code from Client State Codes)
http://documentation.clicsante.ca/fhir/base/ValueSet/client-state
from this IG

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.exists() = end.exists()
app-3errorAppointmentOnly proposed or cancelled appointments can be missing start/end dates
: (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist'))
app-4errorAppointmentCancelation 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-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 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-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()
dom-5errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAppointmentA 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 Appointment

 

Other representations of profile: CSV, Excel, Schematron