Pan-Canadian eReferral-eConsult (CA:eReC)
DFT - The specification is currently in development and subject to change. For a full list of available versions, see the Directory of published versions
http://hl7.org/fhir/StructureDefinition/Appointment
The resource involves booking one (or a series) of appointment(s) between the patient and the practitioner(s) for a specific date/time. The encounter may be a scheduled referral or an econsult.
Appointment | C | Appointment | |
id | Σ | 0..1 | string |
meta | S Σ | 0..1 | Meta |
id | 0..1 | string | |
extension | C | 0..* | Extension |
versionId | Σ | 0..1 | id |
lastUpdated | Σ | 0..1 | instant |
source | Σ | 0..1 | uri |
profile | S Σ | 0..* | canonical(StructureDefinition) |
security | Σ | 0..* | CodingBinding |
tag | Σ | 0..* | Coding |
implicitRules | Σ ?! | 0..1 | uri |
language | 0..1 | codeBinding | |
text | S | 0..1 | Narrative |
contained | 0..* | Resource | |
extension | C | 0..* | Extension |
AppointmentClass | S C | 0..* | Extension |
VirtualService | S C | 0..* | Extension(Complex) |
modifierExtension | ?! C | 0..* | Extension |
identifier | Σ | 0..* | Identifier |
status | S Σ ?! | 1..1 | codeBinding |
cancelationReason | Σ | 0..1 | CodeableConcept |
serviceCategory | Σ | 0..* | CodeableConcept |
serviceType | Σ | 0..* | CodeableConcept |
specialty | Σ | 0..* | CodeableConceptBinding |
appointmentType | Σ | 0..1 | CodeableConceptBinding |
reasonCode | Σ | 0..* | CodeableConceptBinding |
reasonReference | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | |
priority | 0..1 | unsignedInt | |
description | S | 0..1 | string |
supportingInformation | 0..* | Reference(Resource) | |
start | S Σ | 0..1 | instant |
end | Σ | 0..1 | instant |
minutesDuration | 0..1 | positiveInt | |
slot | 0..* | Reference(Slot) | |
created | S | 0..1 | dateTime |
comment | S | 0..1 | string |
patientInstruction | 0..1 | string | |
basedOn | S | 1..1 | Reference(ServiceRequest) |
id | 0..1 | string | |
extension | C | 0..* | Extension |
reference | S Σ C | 0..1 | string |
type | Σ | 0..1 | uriBinding |
identifier | S Σ | 0..1 | Identifier |
id | 0..1 | string | |
extension | C | 0..* | Extension |
use | S Σ ?! | 1..1 | codeBinding |
type | Σ | 0..1 | CodeableConceptBinding |
system | S Σ | 1..1 | uri |
value | S Σ | 1..1 | string |
period | Σ | 0..1 | Period |
assigner | Σ | 0..1 | Reference(Organization) |
display | Σ | 0..1 | string |
participant | S C | 1..* | BackboneElement |
id | 0..1 | string | |
extension | C | 0..* | Extension |
modifierExtension | Σ ?! C | 0..* | Extension |
type | S Σ | 0..* | CodeableConceptBinding |
actor | S Σ | 0..1 | Reference(Patient | PractitionerRole | Location) |
id | 0..1 | string | |
extension | C | 0..* | Extension |
reference | S Σ C | 0..1 | string |
type | Σ | 0..1 | uriBinding |
identifier | S Σ | 0..1 | Identifier |
id | 0..1 | string | |
extension | C | 0..* | Extension |
use | Σ ?! | 0..1 | codeBinding |
type | Σ | 0..1 | CodeableConceptBinding |
system | S Σ | 1..1 | uri |
value | S Σ | 1..1 | string |
period | Σ | 0..1 | Period |
assigner | Σ | 0..1 | Reference(Organization) |
display | Σ | 0..1 | string |
required | Σ | 0..1 | codeBinding |
status | Σ | 1..1 | codeBinding |
period | 0..1 | Period | |
requestedPeriod | 0..* | Period |
Appointment | Appointment | ||
meta | S | ||
profile | S | ||
text | S | ||
extension | |||
AppointmentClass | S | Extension | |
VirtualService | S | Extension(Complex) | |
status | S | ||
description | S | ||
start | S | ||
end | |||
minutesDuration | |||
created | S | ||
comment | S | ||
patientInstruction | |||
basedOn | S | 1..1 | Reference(ServiceRequest) |
reference | S | ||
identifier | S | ||
use | S | 1.. | |
system | S | 1.. | |
value | S | 1.. | |
participant | S | ||
type | S | ||
actor | S | Reference(Patient | PractitionerRole | Location) | |
reference | S | ||
identifier | S | ||
system | S | 1.. | |
value | S | 1.. |
The Appointment resource is used to represent a meeting planned in response to a ServiceRequest. References to other resources are used to convey the details of the appointment including ServiceRequest the appointment is based on (Appointment.basedOn
) and participants (Appointment.participant.actor
) in the appointment such as a Patient, PractitionerRole, or HealthcareService. Systems SHALL support start
and SHALL support one of end
or minutesDuration
or both.
.extension:class
.extension:virtualService
.identifier
identifier.system
and identifier.value
SHALL be mustSupport whenever there is a reference or identifier present.status
.description
.start
.end
.minutesDuration
.created
.comment
.patientInstruction
.basedOn
.reference
to a resource included in the message as a Bundle.entry
, or.identifier
populated with the use
, system
and value
elements populated with the official ServiceRequest.identifier
received from the Source System.participant
.participant.type
is a value from ParticipantType(extensible).participant.actor
a reference to one of:
ServiceRequest.subject
.participant.status
is expected to be "accepted" for a booked appointmentNote: If an Appointment is being transmitted via messaging, referenced Patient, PractitionerRole and Location resources SHALL
.reference
the resource to included in the message as aBundle.entry