0.2.0 - Informative

TCFHIRAGSchedulingR5 - Local Development build (v0.2.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: HL7® AT Scheduling Appointment Profile

Official URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/at-scheduling-appointment Version: 0.2.0
Draft as of 2025-11-05 Responsible: HL7® Austria, TC FHIR® Computable Name: HL7ATSchedulingAppointment

HL7® Austria FHIR® Scheduling Profile for appointment data in Austria.

This Profile is used in the Find existing Appointments and the $book Operation.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. 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)
Constraints: app-2, app-3, app-4, app-5, app-6, app-7
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... serviceType Σ 0..* CodeableReference(HL7® AT Scheduling HealthcareService Profile) The specific service that is to be performed during this appointment
Binding: AT Scheduling Service Type (extensible)
... specialty SΣ 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
... replaces 0..* Reference(HL7® AT Scheduling Appointment Profile) Appointment replaced by this Appointment
... previousAppointment 0..1 Reference(HL7® AT Scheduling Appointment Profile) The previous appointment in a series
... originatingAppointment C 0..1 Reference(HL7® AT Scheduling Appointment Profile) The originating appointment in a recurring set of appointments
... start ΣC 0..1 instant When appointment is to take place
... end ΣC 0..1 instant When appointment is to conclude
... slot 0..* Reference(HL7® AT Scheduling Slot Profile) The slots that this appointment is filling
... subject Σ 0..1 Reference(HL7® AT Core Patient Profile | Group) The patient or group associated with the appointment
... Slices for participant SC 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by type:actor.resolve()
Constraints: app-1
.... participant:All Slices Content/Rules for all slices
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣC 1..1 Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location) The individual, device, location, or service participating in the appointment
...... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
...... display SΣC 0..1 string Text alternative for the resource
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePatient SC 1..* BackboneElement Participants involved in appointment
Constraints: app-1
..... Slices for extension Content/Rules for all slices
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣC 1..1 Reference(Patient) The individual, device, location, or service participating in the appointment
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... display SΣC 0..1 string Text alternative for the resource
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePractitioner SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... Slices for extension Content/Rules for all slices
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣC 1..1 Reference(Practitioner) The individual, device, location, or service participating in the appointment
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... display SΣC 0..1 string Text alternative for the resource
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePractitionerRole SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... Slices for extension Content/Rules for all slices
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣC 1..1 Reference(PractitionerRole) The individual, device, location, or service participating in the appointment
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... display SΣC 0..1 string Text alternative for the resource
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATSchedulingHealthcareService SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... Slices for extension Content/Rules for all slices
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣC 1..1 Reference(HealthcareService) The individual, device, location, or service participating in the appointment
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... display SΣC 0..1 string Text alternative for the resource
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Appointment.status Base required Appointment Status 📍5.0.0 FHIR Std.
Appointment.serviceType Base extensible AT Scheduling Service Type 📦0.2.0 This IG
Appointment.specialty Base preferred Practice Setting Code Value Set 📍5.0.0 FHIR Std.
Appointment.participant.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePatient.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitioner.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitionerRole.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATSchedulingHealthcareService.​status Base required Participation Status 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
app-1 error Appointment.participant, Appointment.participant:HL7ATCorePatient, Appointment.participant:HL7ATCorePractitioner, Appointment.participant:HL7ATCorePractitionerRole, Appointment.participant:HL7ATSchedulingHealthcareService 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 Cancellation reason is only used for appointments that have been cancelled, or noshow cancellationReason.exists() implies (status='noshow' or status='cancelled')
app-5 error Appointment The start must be less than or equal to the end start.exists() implies start <= end
app-6 best practice Appointment An appointment may have an originatingAppointment or recurrenceTemplate, but not both originatingAppointment.exists().not() or recurrenceTemplate.exists().not()
app-7 error Appointment Cancellation date is only used for appointments that have been cancelled, or noshow cancellationDate.exists() implies (status='noshow' or 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. 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)
... serviceType 0..* CodeableReference(HL7® AT Scheduling HealthcareService Profile) The specific service that is to be performed during this appointment
Binding: AT Scheduling Service Type (extensible)
... specialty S 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
... replaces 0..* Reference(HL7® AT Scheduling Appointment Profile) Appointment replaced by this Appointment
... originatingAppointment 0..1 Reference(HL7® AT Scheduling Appointment Profile) The originating appointment in a recurring set of appointments
... slot 0..* Reference(HL7® AT Scheduling Slot Profile) The slots that this appointment is filling
... subject 0..1 Reference(HL7® AT Core Patient Profile | Group) The patient or group associated with the appointment
... Slices for participant S 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by type:actor.resolve()
.... participant:All Slices Content/Rules for all slices
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... actor S 1..1 Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location) The individual, device, location, or service participating in the appointment
...... display S 0..1 string Text alternative for the resource
..... status S 1..1 code accepted | declined | tentative | needs-action
.... participant:HL7ATCorePatient S 1..* BackboneElement Participants involved in appointment
..... actor 1..1 Reference(Patient) The individual, device, location, or service participating in the appointment
...... reference S 1..1 string Literal reference, Relative, internal or absolute URL
.... participant:HL7ATCorePractitioner S 0..* BackboneElement Participants involved in appointment
..... actor 1..1 Reference(Practitioner) The individual, device, location, or service participating in the appointment
...... reference S 1..1 string Literal reference, Relative, internal or absolute URL
.... participant:HL7ATCorePractitionerRole S 0..* BackboneElement Participants involved in appointment
..... actor 1..1 Reference(PractitionerRole) The individual, device, location, or service participating in the appointment
...... reference S 1..1 string Literal reference, Relative, internal or absolute URL
.... participant:HL7ATSchedulingHealthcareService S 0..* BackboneElement Participants involved in appointment
..... actor 1..1 Reference(HealthcareService) The individual, device, location, or service participating in the appointment
...... reference S 1..1 string Literal reference, Relative, internal or absolute URL

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Appointment.serviceType Base extensible AT Scheduling Service Type 📦0.2.0 This IG
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. 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)
Constraints: app-2, app-3, app-4, app-5, app-6, app-7
... 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: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Ids for this item
... status ?!ΣC 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): The free/busy status of an appointment.
... cancellationReason ΣC 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason (example)
... class Σ 0..* CodeableConcept Classification when becoming an encounter
Binding: http://terminology.hl7.org/ValueSet/EncounterClass (preferred): Classification of the encounter.
... serviceCategory Σ 0..* CodeableConcept A broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (example)
... serviceType Σ 0..* CodeableReference(HL7® AT Scheduling HealthcareService Profile) The specific service that is to be performed during this appointment
Binding: AT Scheduling Service Type (extensible)
... specialty SΣ 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)
... reason Σ 0..* CodeableReference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason this appointment is scheduled
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.
... priority 0..1 CodeableConcept Used to make informed decisions if needing to re-prioritize
Binding: ActPriority (example): Indicates the urgency of the appointment.
... description 0..1 string Shown on a subject line in a meeting request, or appointment list
... replaces 0..* Reference(HL7® AT Scheduling Appointment Profile) Appointment replaced by this Appointment
... virtualService 0..* VirtualServiceDetail Connection details of a virtual service (e.g. conference call)
... supportingInformation 0..* Reference(Resource) Additional information to support the appointment
... previousAppointment 0..1 Reference(HL7® AT Scheduling Appointment Profile) The previous appointment in a series
... originatingAppointment C 0..1 Reference(HL7® AT Scheduling Appointment Profile) The originating appointment in a recurring set of appointments
... start ΣC 0..1 instant When appointment is to take place
... end ΣC 0..1 instant When appointment is to conclude
... minutesDuration 0..1 positiveInt Can be less than start/end (e.g. estimate)
... requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within
... slot 0..* Reference(HL7® AT Scheduling Slot Profile) The slots that this appointment is filling
... account 0..* Reference(Account) The set of accounts that may be used for billing for this Appointment
... created 0..1 dateTime The date that this appointment was initially created
... cancellationDate C 0..1 dateTime When the appointment was cancelled
... note 0..* Annotation Additional comments
... patientInstruction 0..* CodeableReference(DocumentReference | Binary | Communication) Detailed information and instructions for the patient
... basedOn 0..* Reference(CarePlan | DeviceRequest | MedicationRequest | ServiceRequest) The request this appointment is allocated to assess
... subject Σ 0..1 Reference(HL7® AT Core Patient Profile | Group) The patient or group associated with the appointment
... Slices for participant SC 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by type:actor.resolve()
Constraints: app-1
.... participant:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
..... period 0..1 Period Participation period of the actor
..... actor SΣC 1..1 Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location) The individual, device, location, or service participating in the appointment
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
...... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
...... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
...... display SΣC 0..1 string Text alternative for the resource
..... required Σ 0..1 boolean The participant is required to attend (optional when false)
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePatient SC 1..* BackboneElement Participants involved in appointment
Constraints: app-1
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
..... period 0..1 Period Participation period of the actor
..... actor SΣC 1..1 Reference(Patient) The individual, device, location, or service participating in the appointment
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
...... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
...... display SΣC 0..1 string Text alternative for the resource
..... required Σ 0..1 boolean The participant is required to attend (optional when false)
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePractitioner SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
..... period 0..1 Period Participation period of the actor
..... actor SΣC 1..1 Reference(Practitioner) The individual, device, location, or service participating in the appointment
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
...... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
...... display SΣC 0..1 string Text alternative for the resource
..... required Σ 0..1 boolean The participant is required to attend (optional when false)
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePractitionerRole SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
..... period 0..1 Period Participation period of the actor
..... actor SΣC 1..1 Reference(PractitionerRole) The individual, device, location, or service participating in the appointment
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
...... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
...... display SΣC 0..1 string Text alternative for the resource
..... required Σ 0..1 boolean The participant is required to attend (optional when false)
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATSchedulingHealthcareService SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
..... period 0..1 Period Participation period of the actor
..... actor SΣC 1..1 Reference(HealthcareService) The individual, device, location, or service participating in the appointment
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
...... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
...... display SΣC 0..1 string Text alternative for the resource
..... required Σ 0..1 boolean The participant is required to attend (optional when false)
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
... recurrenceId 0..1 positiveInt The sequence number in the recurrence
... occurrenceChanged 0..1 boolean Indicates that this appointment varies from a recurrence pattern
... recurrenceTemplate C 0..* BackboneElement Details of the recurrence pattern/template used to generate occurrences
.... 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
.... timezone 0..1 CodeableConcept The timezone of the occurrences
Binding: IANATimezones (required): IANA Timezones (BCP 175)
.... recurrenceType 1..1 CodeableConcept The frequency of the recurrence
Binding: AppointmentRecurrenceType (preferred): IANA Timezones (BCP 175)
.... lastOccurrenceDate 0..1 date The date when the recurrence should end
.... occurrenceCount 0..1 positiveInt The number of planned occurrences
.... occurrenceDate 0..* date Specific dates for a recurring set of appointments (no template)
.... weeklyTemplate 0..1 BackboneElement Information about weekly recurring appointments
..... 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
..... monday 0..1 boolean Recurs on Mondays
..... tuesday 0..1 boolean Recurs on Tuesday
..... wednesday 0..1 boolean Recurs on Wednesday
..... thursday 0..1 boolean Recurs on Thursday
..... friday 0..1 boolean Recurs on Friday
..... saturday 0..1 boolean Recurs on Saturday
..... sunday 0..1 boolean Recurs on Sunday
..... weekInterval 0..1 positiveInt Recurs every nth week
.... monthlyTemplate 0..1 BackboneElement Information about monthly recurring appointments
..... 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
..... dayOfMonth 0..1 positiveInt Recurs on a specific day of the month
..... nthWeekOfMonth 0..1 Coding Indicates which week of the month the appointment should occur
Binding: WeekOfMonth (required): The set of weeks in a month.
..... dayOfWeek 0..1 Coding Indicates which day of the week the appointment should occur
Binding: DaysOfWeek (required): The days of the week.
..... monthInterval 1..1 positiveInt Recurs every nth month
.... yearlyTemplate 0..1 BackboneElement Information about yearly recurring appointments
..... 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
..... yearInterval 1..1 positiveInt Recurs every nth year
.... excludingDate 0..* date Any dates that should be excluded from the series
.... excludingRecurrenceId 0..* positiveInt Any recurrence IDs that should be excluded from the recurrence

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Appointment.language Base required All Languages 📍5.0.0 FHIR Std.
Appointment.status Base required Appointment Status 📍5.0.0 FHIR Std.
Appointment.cancellationReason Base example Appointment Cancellation Reason 📍5.0.0 FHIR Std.
Appointment.class Base preferred http://terminology.hl7.org/ValueSet/EncounterClass Not State Unknown
Appointment.serviceCategory Base example Service Category 📍5.0.0 FHIR Std.
Appointment.serviceType Base extensible AT Scheduling Service Type 📦0.2.0 This IG
Appointment.specialty Base preferred Practice Setting Code Value Set 📍5.0.0 FHIR Std.
Appointment.appointmentType Base preferred hl7VS-appointmentReasonCodes 📦2.0.0 THO v6.5
Appointment.reason Base preferred Encounter Reason Codes 📍5.0.0 FHIR Std.
Appointment.priority Base example ActPriority 📦3.0.0 THO v6.5
Appointment.participant.​type Base extensible Participant Type 📍5.0.0 FHIR Std.
Appointment.participant.​actor.type Base extensible Resource Types 📍5.0.0 FHIR Std.
Appointment.participant.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePatient.​type Base extensible Participant Type 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePatient.​actor.type Base extensible Resource Types 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePatient.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitioner.​type Base extensible Participant Type 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitioner.​actor.type Base extensible Resource Types 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitioner.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitionerRole.​type Base extensible Participant Type 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitionerRole.​actor.type Base extensible Resource Types 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitionerRole.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATSchedulingHealthcareService.​type Base extensible Participant Type 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATSchedulingHealthcareService.​actor.type Base extensible Resource Types 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATSchedulingHealthcareService.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.recurrenceTemplate.​timezone Base required IANA Timezones 📍5.0.0 FHIR Std.
Appointment.recurrenceTemplate.​recurrenceType Base preferred Appointment Recurrence Type 📍5.0.0 FHIR Std.
Appointment.recurrenceTemplate.​monthlyTemplate.nthWeekOfMonth Base required Week Of Month 📍5.0.0 FHIR Std.
Appointment.recurrenceTemplate.​monthlyTemplate.dayOfWeek Base required Days Of Week 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
app-1 error Appointment.participant, Appointment.participant:HL7ATCorePatient, Appointment.participant:HL7ATCorePractitioner, Appointment.participant:HL7ATCorePractitionerRole, Appointment.participant:HL7ATSchedulingHealthcareService 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 Cancellation reason is only used for appointments that have been cancelled, or noshow cancellationReason.exists() implies (status='noshow' or status='cancelled')
app-5 error Appointment The start must be less than or equal to the end start.exists() implies start <= end
app-6 best practice Appointment An appointment may have an originatingAppointment or recurrenceTemplate, but not both originatingAppointment.exists().not() or recurrenceTemplate.exists().not()
app-7 error Appointment Cancellation date is only used for appointments that have been cancelled, or noshow cancellationDate.exists() implies (status='noshow' or 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. 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)
Constraints: app-2, app-3, app-4, app-5, app-6, app-7
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... serviceType Σ 0..* CodeableReference(HL7® AT Scheduling HealthcareService Profile) The specific service that is to be performed during this appointment
Binding: AT Scheduling Service Type (extensible)
... specialty SΣ 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
... replaces 0..* Reference(HL7® AT Scheduling Appointment Profile) Appointment replaced by this Appointment
... previousAppointment 0..1 Reference(HL7® AT Scheduling Appointment Profile) The previous appointment in a series
... originatingAppointment C 0..1 Reference(HL7® AT Scheduling Appointment Profile) The originating appointment in a recurring set of appointments
... start ΣC 0..1 instant When appointment is to take place
... end ΣC 0..1 instant When appointment is to conclude
... slot 0..* Reference(HL7® AT Scheduling Slot Profile) The slots that this appointment is filling
... subject Σ 0..1 Reference(HL7® AT Core Patient Profile | Group) The patient or group associated with the appointment
... Slices for participant SC 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by type:actor.resolve()
Constraints: app-1
.... participant:All Slices Content/Rules for all slices
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣC 1..1 Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location) The individual, device, location, or service participating in the appointment
...... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
...... display SΣC 0..1 string Text alternative for the resource
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePatient SC 1..* BackboneElement Participants involved in appointment
Constraints: app-1
..... Slices for extension Content/Rules for all slices
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣC 1..1 Reference(Patient) The individual, device, location, or service participating in the appointment
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... display SΣC 0..1 string Text alternative for the resource
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePractitioner SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... Slices for extension Content/Rules for all slices
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣC 1..1 Reference(Practitioner) The individual, device, location, or service participating in the appointment
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... display SΣC 0..1 string Text alternative for the resource
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePractitionerRole SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... Slices for extension Content/Rules for all slices
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣC 1..1 Reference(PractitionerRole) The individual, device, location, or service participating in the appointment
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... display SΣC 0..1 string Text alternative for the resource
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATSchedulingHealthcareService SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... Slices for extension Content/Rules for all slices
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣC 1..1 Reference(HealthcareService) The individual, device, location, or service participating in the appointment
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... display SΣC 0..1 string Text alternative for the resource
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Appointment.status Base required Appointment Status 📍5.0.0 FHIR Std.
Appointment.serviceType Base extensible AT Scheduling Service Type 📦0.2.0 This IG
Appointment.specialty Base preferred Practice Setting Code Value Set 📍5.0.0 FHIR Std.
Appointment.participant.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePatient.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitioner.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitionerRole.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATSchedulingHealthcareService.​status Base required Participation Status 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
app-1 error Appointment.participant, Appointment.participant:HL7ATCorePatient, Appointment.participant:HL7ATCorePractitioner, Appointment.participant:HL7ATCorePractitionerRole, Appointment.participant:HL7ATSchedulingHealthcareService 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 Cancellation reason is only used for appointments that have been cancelled, or noshow cancellationReason.exists() implies (status='noshow' or status='cancelled')
app-5 error Appointment The start must be less than or equal to the end start.exists() implies start <= end
app-6 best practice Appointment An appointment may have an originatingAppointment or recurrenceTemplate, but not both originatingAppointment.exists().not() or recurrenceTemplate.exists().not()
app-7 error Appointment Cancellation date is only used for appointments that have been cancelled, or noshow cancellationDate.exists() implies (status='noshow' or 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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()

Differential View

This structure is derived from Appointment

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. 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)
... serviceType 0..* CodeableReference(HL7® AT Scheduling HealthcareService Profile) The specific service that is to be performed during this appointment
Binding: AT Scheduling Service Type (extensible)
... specialty S 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
... replaces 0..* Reference(HL7® AT Scheduling Appointment Profile) Appointment replaced by this Appointment
... originatingAppointment 0..1 Reference(HL7® AT Scheduling Appointment Profile) The originating appointment in a recurring set of appointments
... slot 0..* Reference(HL7® AT Scheduling Slot Profile) The slots that this appointment is filling
... subject 0..1 Reference(HL7® AT Core Patient Profile | Group) The patient or group associated with the appointment
... Slices for participant S 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by type:actor.resolve()
.... participant:All Slices Content/Rules for all slices
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... actor S 1..1 Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location) The individual, device, location, or service participating in the appointment
...... display S 0..1 string Text alternative for the resource
..... status S 1..1 code accepted | declined | tentative | needs-action
.... participant:HL7ATCorePatient S 1..* BackboneElement Participants involved in appointment
..... actor 1..1 Reference(Patient) The individual, device, location, or service participating in the appointment
...... reference S 1..1 string Literal reference, Relative, internal or absolute URL
.... participant:HL7ATCorePractitioner S 0..* BackboneElement Participants involved in appointment
..... actor 1..1 Reference(Practitioner) The individual, device, location, or service participating in the appointment
...... reference S 1..1 string Literal reference, Relative, internal or absolute URL
.... participant:HL7ATCorePractitionerRole S 0..* BackboneElement Participants involved in appointment
..... actor 1..1 Reference(PractitionerRole) The individual, device, location, or service participating in the appointment
...... reference S 1..1 string Literal reference, Relative, internal or absolute URL
.... participant:HL7ATSchedulingHealthcareService S 0..* BackboneElement Participants involved in appointment
..... actor 1..1 Reference(HealthcareService) The individual, device, location, or service participating in the appointment
...... reference S 1..1 string Literal reference, Relative, internal or absolute URL

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Appointment.serviceType Base extensible AT Scheduling Service Type 📦0.2.0 This IG

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. 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)
Constraints: app-2, app-3, app-4, app-5, app-6, app-7
... 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: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Ids for this item
... status ?!ΣC 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): The free/busy status of an appointment.
... cancellationReason ΣC 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason (example)
... class Σ 0..* CodeableConcept Classification when becoming an encounter
Binding: http://terminology.hl7.org/ValueSet/EncounterClass (preferred): Classification of the encounter.
... serviceCategory Σ 0..* CodeableConcept A broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (example)
... serviceType Σ 0..* CodeableReference(HL7® AT Scheduling HealthcareService Profile) The specific service that is to be performed during this appointment
Binding: AT Scheduling Service Type (extensible)
... specialty SΣ 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)
... reason Σ 0..* CodeableReference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason this appointment is scheduled
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.
... priority 0..1 CodeableConcept Used to make informed decisions if needing to re-prioritize
Binding: ActPriority (example): Indicates the urgency of the appointment.
... description 0..1 string Shown on a subject line in a meeting request, or appointment list
... replaces 0..* Reference(HL7® AT Scheduling Appointment Profile) Appointment replaced by this Appointment
... virtualService 0..* VirtualServiceDetail Connection details of a virtual service (e.g. conference call)
... supportingInformation 0..* Reference(Resource) Additional information to support the appointment
... previousAppointment 0..1 Reference(HL7® AT Scheduling Appointment Profile) The previous appointment in a series
... originatingAppointment C 0..1 Reference(HL7® AT Scheduling Appointment Profile) The originating appointment in a recurring set of appointments
... start ΣC 0..1 instant When appointment is to take place
... end ΣC 0..1 instant When appointment is to conclude
... minutesDuration 0..1 positiveInt Can be less than start/end (e.g. estimate)
... requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within
... slot 0..* Reference(HL7® AT Scheduling Slot Profile) The slots that this appointment is filling
... account 0..* Reference(Account) The set of accounts that may be used for billing for this Appointment
... created 0..1 dateTime The date that this appointment was initially created
... cancellationDate C 0..1 dateTime When the appointment was cancelled
... note 0..* Annotation Additional comments
... patientInstruction 0..* CodeableReference(DocumentReference | Binary | Communication) Detailed information and instructions for the patient
... basedOn 0..* Reference(CarePlan | DeviceRequest | MedicationRequest | ServiceRequest) The request this appointment is allocated to assess
... subject Σ 0..1 Reference(HL7® AT Core Patient Profile | Group) The patient or group associated with the appointment
... Slices for participant SC 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by type:actor.resolve()
Constraints: app-1
.... participant:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
..... period 0..1 Period Participation period of the actor
..... actor SΣC 1..1 Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location) The individual, device, location, or service participating in the appointment
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
...... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
...... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
...... display SΣC 0..1 string Text alternative for the resource
..... required Σ 0..1 boolean The participant is required to attend (optional when false)
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePatient SC 1..* BackboneElement Participants involved in appointment
Constraints: app-1
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
..... period 0..1 Period Participation period of the actor
..... actor SΣC 1..1 Reference(Patient) The individual, device, location, or service participating in the appointment
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
...... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
...... display SΣC 0..1 string Text alternative for the resource
..... required Σ 0..1 boolean The participant is required to attend (optional when false)
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePractitioner SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
..... period 0..1 Period Participation period of the actor
..... actor SΣC 1..1 Reference(Practitioner) The individual, device, location, or service participating in the appointment
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
...... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
...... display SΣC 0..1 string Text alternative for the resource
..... required Σ 0..1 boolean The participant is required to attend (optional when false)
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATCorePractitionerRole SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
..... period 0..1 Period Participation period of the actor
..... actor SΣC 1..1 Reference(PractitionerRole) The individual, device, location, or service participating in the appointment
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
...... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
...... display SΣC 0..1 string Text alternative for the resource
..... required Σ 0..1 boolean The participant is required to attend (optional when false)
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:HL7ATSchedulingHealthcareService SC 0..* BackboneElement Participants involved in appointment
Constraints: app-1
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:virtualService 0..1 (Complex) VirtualServiceDetail
URL: http://hl7.at/fhir/TC-FHIR-AG-Scheduling-R5/R5/StructureDefinition/virtual-service-detail
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
..... period 0..1 Period Participation period of the actor
..... actor SΣC 1..1 Reference(HealthcareService) The individual, device, location, or service participating in the appointment
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
...... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
...... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
...... display SΣC 0..1 string Text alternative for the resource
..... required Σ 0..1 boolean The participant is required to attend (optional when false)
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
... recurrenceId 0..1 positiveInt The sequence number in the recurrence
... occurrenceChanged 0..1 boolean Indicates that this appointment varies from a recurrence pattern
... recurrenceTemplate C 0..* BackboneElement Details of the recurrence pattern/template used to generate occurrences
.... 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
.... timezone 0..1 CodeableConcept The timezone of the occurrences
Binding: IANATimezones (required): IANA Timezones (BCP 175)
.... recurrenceType 1..1 CodeableConcept The frequency of the recurrence
Binding: AppointmentRecurrenceType (preferred): IANA Timezones (BCP 175)
.... lastOccurrenceDate 0..1 date The date when the recurrence should end
.... occurrenceCount 0..1 positiveInt The number of planned occurrences
.... occurrenceDate 0..* date Specific dates for a recurring set of appointments (no template)
.... weeklyTemplate 0..1 BackboneElement Information about weekly recurring appointments
..... 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
..... monday 0..1 boolean Recurs on Mondays
..... tuesday 0..1 boolean Recurs on Tuesday
..... wednesday 0..1 boolean Recurs on Wednesday
..... thursday 0..1 boolean Recurs on Thursday
..... friday 0..1 boolean Recurs on Friday
..... saturday 0..1 boolean Recurs on Saturday
..... sunday 0..1 boolean Recurs on Sunday
..... weekInterval 0..1 positiveInt Recurs every nth week
.... monthlyTemplate 0..1 BackboneElement Information about monthly recurring appointments
..... 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
..... dayOfMonth 0..1 positiveInt Recurs on a specific day of the month
..... nthWeekOfMonth 0..1 Coding Indicates which week of the month the appointment should occur
Binding: WeekOfMonth (required): The set of weeks in a month.
..... dayOfWeek 0..1 Coding Indicates which day of the week the appointment should occur
Binding: DaysOfWeek (required): The days of the week.
..... monthInterval 1..1 positiveInt Recurs every nth month
.... yearlyTemplate 0..1 BackboneElement Information about yearly recurring appointments
..... 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
..... yearInterval 1..1 positiveInt Recurs every nth year
.... excludingDate 0..* date Any dates that should be excluded from the series
.... excludingRecurrenceId 0..* positiveInt Any recurrence IDs that should be excluded from the recurrence

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Appointment.language Base required All Languages 📍5.0.0 FHIR Std.
Appointment.status Base required Appointment Status 📍5.0.0 FHIR Std.
Appointment.cancellationReason Base example Appointment Cancellation Reason 📍5.0.0 FHIR Std.
Appointment.class Base preferred http://terminology.hl7.org/ValueSet/EncounterClass Not State Unknown
Appointment.serviceCategory Base example Service Category 📍5.0.0 FHIR Std.
Appointment.serviceType Base extensible AT Scheduling Service Type 📦0.2.0 This IG
Appointment.specialty Base preferred Practice Setting Code Value Set 📍5.0.0 FHIR Std.
Appointment.appointmentType Base preferred hl7VS-appointmentReasonCodes 📦2.0.0 THO v6.5
Appointment.reason Base preferred Encounter Reason Codes 📍5.0.0 FHIR Std.
Appointment.priority Base example ActPriority 📦3.0.0 THO v6.5
Appointment.participant.​type Base extensible Participant Type 📍5.0.0 FHIR Std.
Appointment.participant.​actor.type Base extensible Resource Types 📍5.0.0 FHIR Std.
Appointment.participant.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePatient.​type Base extensible Participant Type 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePatient.​actor.type Base extensible Resource Types 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePatient.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitioner.​type Base extensible Participant Type 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitioner.​actor.type Base extensible Resource Types 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitioner.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitionerRole.​type Base extensible Participant Type 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitionerRole.​actor.type Base extensible Resource Types 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATCorePractitionerRole.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATSchedulingHealthcareService.​type Base extensible Participant Type 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATSchedulingHealthcareService.​actor.type Base extensible Resource Types 📍5.0.0 FHIR Std.
Appointment.participant:HL7ATSchedulingHealthcareService.​status Base required Participation Status 📍5.0.0 FHIR Std.
Appointment.recurrenceTemplate.​timezone Base required IANA Timezones 📍5.0.0 FHIR Std.
Appointment.recurrenceTemplate.​recurrenceType Base preferred Appointment Recurrence Type 📍5.0.0 FHIR Std.
Appointment.recurrenceTemplate.​monthlyTemplate.nthWeekOfMonth Base required Week Of Month 📍5.0.0 FHIR Std.
Appointment.recurrenceTemplate.​monthlyTemplate.dayOfWeek Base required Days Of Week 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
app-1 error Appointment.participant, Appointment.participant:HL7ATCorePatient, Appointment.participant:HL7ATCorePractitioner, Appointment.participant:HL7ATCorePractitionerRole, Appointment.participant:HL7ATSchedulingHealthcareService 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 Cancellation reason is only used for appointments that have been cancelled, or noshow cancellationReason.exists() implies (status='noshow' or status='cancelled')
app-5 error Appointment The start must be less than or equal to the end start.exists() implies start <= end
app-6 best practice Appointment An appointment may have an originatingAppointment or recurrenceTemplate, but not both originatingAppointment.exists().not() or recurrenceTemplate.exists().not()
app-7 error Appointment Cancellation date is only used for appointments that have been cancelled, or noshow cancellationDate.exists() implies (status='noshow' or 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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()

 

Other representations of profile: CSV, Excel, Schematron

Notes:

Search parameters

Required parameters
Name Type Description Expression In Common
actor reference Any one of the individuals participating in the appointment Appointment.participant.actor
( HL7® AT Core Practitioner, Group, CareTeam, Device, HL7® AT Core Patient, HealthcareService, HL7® AT Core PractitionerRole, RelatedPerson, Location )
date date Appointment date/time. (start | requestedPeriod.start).first() 27 Resources
Optional parameters

The following search parameters SHOULD be supported by scheduling servers:

Name Type Description Expression In Common
status token The overall status of the appointment Appointment.status