US Veterans Health Administration FHIR Map Set Implementation Guide
1.3.1 - 250401 United States of America flag

Publication Build: This will be filled in by the publication tooling

Resource Profile: Appointment

Official URL: http://va.gov/fhir/StructureDefinition/Appointment Version: 1.3.1
Active as of 2025-03-31 Computable Name: Appointment

This StructureDefinition contains the maps for VistA file APPOINTMENT (2.98) to Appointment.

See also the FHIR Shorthand.

Use Case Overview

Use Case: Appointment«FHIR Appointment»Appointmentparticipant[va-clinic].actorparticipant[va-patient].actorparticipant[va-apptclinic].actorLocationPatientLocation

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
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
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
.... extension:resource-serviceConnection 0..1 (Complex) Extension
URL: http://va.gov/fhir/StructureDefinition/resource-serviceConnection
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... extension 0..0
..... url 1..1 uri "http://va.gov/fhir/StructureDefinition/resource-serviceConnection"
..... value[x] SC 0..1 Coding Value of extension
Binding: VSResourceServiceConnection (required)
ele-1: All FHIR elements must have a @value or children
a-11-2033: If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
a-11-2034: If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... cancelationReason SΣ 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason FHIR (required): see mapping VF_AppointmentCancellationReason


ele-1: All FHIR elements must have a @value or children
... Slices for serviceCategory Σ 0..* CodeableConcept A broad categorization of the service that is to be performed during this appointment
Slice: Unordered, Open by value:$this
Binding: ServiceCategory (example)
ele-1: All FHIR elements must have a @value or children
.... serviceCategory:va-stop-code Σ 0..1 CodeableConcept A broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (example)
ele-1: All FHIR elements must have a @value or children
..... coding Σ 0..* Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children
...... system SΣ 0..1 uri Identity of the terminology system
ele-1: All FHIR elements must have a @value or children
Required Pattern: http://va.gov/terminology/VistADefinedTerms/409.3-13.4
...... code SΣ 0..1 code Symbol in syntax defined by the system
ele-1: All FHIR elements must have a @value or children
... specialty Σ 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
ele-1: All FHIR elements must have a @value or children
... appointmentType Σ 0..1 CodeableConcept The style of appointment or patient that has been booked in the slot (not service type)
Binding: hl7VS-appointmentReasonCodes (preferred)
ele-1: All FHIR elements must have a @value or children
.... text SΣ 0..1 string Plain text representation of the concept
ele-1: All FHIR elements must have a @value or children
... reasonCode Σ 0..* CodeableConcept Coded reason this appointment is scheduled
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.


ele-1: All FHIR elements must have a @value or children
... reasonReference 0..* Reference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason the appointment is to take place (resource)
ele-1: All FHIR elements must have a @value or children
... description S 0..1 string Shown on a subject line in a meeting request, or appointment list
ele-1: All FHIR elements must have a @value or children
... start SΣ 0..1 instant When appointment is to take place
ele-1: All FHIR elements must have a @value or children
... end SΣ 0..1 instant When appointment is to conclude
ele-1: All FHIR elements must have a @value or children
... minutesDuration S 0..1 positiveInt Can be less than start/end (e.g. estimate)
ele-1: All FHIR elements must have a @value or children
... created S 0..1 dateTime The date that this appointment was initially created
ele-1: All FHIR elements must have a @value or children
... comment S 0..1 string Additional comments
ele-1: All FHIR elements must have a @value or children
... Slices for participant C 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by value:$this
app-1: Either the type or actor on the participant SHALL be specified
ele-1: All FHIR elements must have a @value or children
.... participant:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


ele-1: All FHIR elements must have a @value or children
.... participant:va-clinic C 0..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
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


ele-1: All FHIR elements must have a @value or children
...... coding Σ 0..* Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children
....... code SΣ 0..1 code Symbol in syntax defined by the system
ele-1: All FHIR elements must have a @value or children
Required Pattern: PART
..... actor SΣ 0..1 Reference(Location) Person, Location/HealthcareService or Device
ele-1: All FHIR elements must have a @value or children
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


ele-1: All FHIR elements must have a @value or children
Required Pattern: accepted
.... participant:va-patient C 0..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
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


ele-1: All FHIR elements must have a @value or children
...... coding Σ 0..* Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children
....... code SΣ 0..1 code Symbol in syntax defined by the system
ele-1: All FHIR elements must have a @value or children
Required Pattern: PART
..... actor SΣ 0..1 Reference(Patient) Person, Location/HealthcareService or Device
ele-1: All FHIR elements must have a @value or children
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


ele-1: All FHIR elements must have a @value or children
Required Pattern: accepted
.... participant:va-apptclinic C 0..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
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


ele-1: All FHIR elements must have a @value or children
...... coding Σ 0..* Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children
....... code SΣ 0..1 code Symbol in syntax defined by the system
ele-1: All FHIR elements must have a @value or children
Required Pattern: PART
..... actor SΣ 0..1 Reference(Location) Person, Location/HealthcareService or Device
ele-1: All FHIR elements must have a @value or children
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


ele-1: All FHIR elements must have a @value or children
Required Pattern: tentative

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Appointment.extension:resource-serviceConnection.value[x]requiredVSResourceServiceConnection
http://va.gov/fhir/ValueSet/VSResourceServiceConnection
from this IG
Appointment.statusrequiredAppointmentStatus
http://va.gov/fhir/ValueSet/AppointmentStatus
from this IG
Appointment.cancelationReasonrequiredAppointmentCancellationReason
http://va.gov/fhir/ValueSet/AppointmentCancellationReason
from this IG
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Appointment.serviceCategory:va-stop-codeexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
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.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-clinic.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-clinic.statusrequiredPattern: accepted
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-patient.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-patient.statusrequiredPattern: accepted
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-apptclinic.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-apptclinic.statusrequiredPattern: tentative
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
a-11-732warningAppointment.statusIf (2.98-3) is I, NT, Null; Null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #booked
: true
a-11-733warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #arrived
: true
a-11-734warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), non-null check-out date (44.003-303) then fixed value #fulfilled
: true
a-11-748warningAppointment.statusIf (409.3-.01) is not null then fixed value #waitlist
: true
a-11-2033warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
: true
a-11-2034warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
: true
app-1errorAppointment.participant, Appointment.participant:va-clinic, Appointment.participant:va-patient, Appointment.participant:va-apptclinicEither 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)
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:resource-serviceConnection 0..1 (Complex) Extension
URL: http://va.gov/fhir/StructureDefinition/resource-serviceConnection
..... value[x] SC 0..1 Coding Value of extension
a-11-2033: If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
a-11-2034: If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
... status SC 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus FHIR (required): see mapping VF_AppointmentStatus


a-11-732: If (2.98-3) is I, NT, Null; Null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #booked
a-11-733: If (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #arrived
a-11-734: If (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), non-null check-out date (44.003-303) then fixed value #fulfilled
a-11-748: If (409.3-.01) is not null then fixed value #waitlist
... cancelationReason S 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason FHIR (required): see mapping VF_AppointmentCancellationReason

.... serviceCategory:va-stop-code 0..1 CodeableConcept A broad categorization of the service that is to be performed during this appointment
..... coding
...... system S 0..1 uri Identity of the terminology system
Required Pattern: http://va.gov/terminology/VistADefinedTerms/409.3-13.4
...... code S 0..1 code Symbol in syntax defined by the system
... specialty 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
... appointmentType
.... text S 0..1 string Plain text representation of the concept
... reasonCode 0..* CodeableConcept Coded reason this appointment is scheduled
... reasonReference 0..* Reference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason the appointment is to take place (resource)
... description S 0..1 string Shown on a subject line in a meeting request, or appointment list
... start S 0..1 instant When appointment is to take place
... end S 0..1 instant When appointment is to conclude
... minutesDuration S 0..1 positiveInt Can be less than start/end (e.g. estimate)
... created S 0..1 dateTime The date that this appointment was initially created
... comment S 0..1 string Additional comments
... Slices for participant 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by value:$this
.... participant:va-clinic 0..1 BackboneElement Participants involved in appointment
..... type
...... coding
....... code S 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
..... actor S 0..1 Reference(Location) Person, Location/HealthcareService or Device
..... status S 1..1 code accepted | declined | tentative | needs-action
Required Pattern: accepted
.... participant:va-patient 0..1 BackboneElement Participants involved in appointment
..... type
...... coding
....... code S 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
..... actor S 0..1 Reference(Patient) Person, Location/HealthcareService or Device
..... status S 1..1 code accepted | declined | tentative | needs-action
Required Pattern: accepted
.... participant:va-apptclinic 0..1 BackboneElement Participants involved in appointment
..... type
...... coding
....... code S 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
..... actor S 0..1 Reference(Location) Person, Location/HealthcareService or Device
..... status S 1..1 code accepted | declined | tentative | needs-action
Required Pattern: tentative

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Appointment.statusrequiredAppointmentStatus
http://va.gov/fhir/ValueSet/AppointmentStatus
from this IG
Appointment.cancelationReasonrequiredAppointmentCancellationReason
http://va.gov/fhir/ValueSet/AppointmentCancellationReason
from this IG

Constraints

IdGradePath(s)DetailsRequirements
a-11-732warningAppointment.statusIf (2.98-3) is I, NT, Null; Null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #booked
: true
a-11-733warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #arrived
: true
a-11-734warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), non-null check-out date (44.003-303) then fixed value #fulfilled
: true
a-11-748warningAppointment.statusIf (409.3-.01) is not null then fixed value #waitlist
: true
a-11-2033warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
: true
a-11-2034warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
: true
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 Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

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
.... extension:resource-serviceConnection 0..1 (Complex) Extension
URL: http://va.gov/fhir/StructureDefinition/resource-serviceConnection
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "http://va.gov/fhir/StructureDefinition/resource-serviceConnection"
..... value[x] SC 0..1 Coding Value of extension
Binding: VSResourceServiceConnection (required)
a-11-2033: If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
a-11-2034: If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Ids for this item
... status ?!SΣC 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus FHIR (required): see mapping VF_AppointmentStatus


a-11-732: If (2.98-3) is I, NT, Null; Null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #booked
a-11-733: If (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #arrived
a-11-734: If (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), non-null check-out date (44.003-303) then fixed value #fulfilled
a-11-748: If (409.3-.01) is not null then fixed value #waitlist
... cancelationReason SΣ 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason FHIR (required): see mapping VF_AppointmentCancellationReason

... Slices for serviceCategory Σ 0..* CodeableConcept A broad categorization of the service that is to be performed during this appointment
Slice: Unordered, Open by value:$this
Binding: ServiceCategory (example)
.... serviceCategory:va-stop-code Σ 0..1 CodeableConcept A broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (example)
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ 0..* Coding Code defined by a terminology system
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ 0..1 uri Identity of the terminology system
Required Pattern: http://va.gov/terminology/VistADefinedTerms/409.3-13.4
...... version Σ 0..1 string Version of the system - if relevant
...... code SΣ 0..1 code Symbol in syntax defined by the system
...... display Σ 0..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
... 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)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 0..* Coding Code defined by a terminology system
.... text SΣ 0..1 string Plain text representation of the concept
... 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 S 0..1 string Shown on a subject line in a meeting request, or appointment list
... supportingInformation 0..* Reference(Resource) Additional information to support the appointment
... start SΣ 0..1 instant When appointment is to take place
... end SΣ 0..1 instant When appointment is to conclude
... minutesDuration S 0..1 positiveInt Can be less than start/end (e.g. estimate)
... slot 0..* Reference(Slot) The slots that this appointment is filling
... created S 0..1 dateTime The date that this appointment was initially created
... comment S 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
... Slices for participant C 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by value:$this
app-1: Either the type or actor on the participant SHALL be specified
.... participant:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


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

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

..... period 0..1 Period Participation period of the actor
.... participant:va-clinic C 0..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
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ 0..1 uri Identity of the terminology system
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... text Σ 0..1 string Plain text representation of the concept
..... actor SΣ 0..1 Reference(Location) Person, Location/HealthcareService or Device
..... required Σ 0..1 code required | optional | information-only
Binding: ParticipantRequired (required): Is the Participant required to attend the appointment.

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


Required Pattern: accepted
..... period 0..1 Period Participation period of the actor
.... participant:va-patient C 0..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
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ 0..1 uri Identity of the terminology system
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... text Σ 0..1 string Plain text representation of the concept
..... actor SΣ 0..1 Reference(Patient) 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 SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


Required Pattern: accepted
..... period 0..1 Period Participation period of the actor
.... participant:va-apptclinic C 0..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
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ 0..1 uri Identity of the terminology system
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... text Σ 0..1 string Plain text representation of the concept
..... actor SΣ 0..1 Reference(Location) Person, Location/HealthcareService or Device
..... required Σ 0..1 code required | optional | information-only
Binding: ParticipantRequired (required): Is the Participant required to attend the appointment.

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


Required Pattern: tentative
..... 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

PathConformanceValueSet / CodeURI
Appointment.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Appointment.extension:resource-serviceConnection.value[x]requiredVSResourceServiceConnection
http://va.gov/fhir/ValueSet/VSResourceServiceConnection
from this IG
Appointment.statusrequiredAppointmentStatus
http://va.gov/fhir/ValueSet/AppointmentStatus
from this IG
Appointment.cancelationReasonrequiredAppointmentCancellationReason
http://va.gov/fhir/ValueSet/AppointmentCancellationReason
from this IG
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Appointment.serviceCategory:va-stop-codeexampleServiceCategory
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.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-clinic.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-clinic.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
from the FHIR Standard
Appointment.participant:va-clinic.statusrequiredPattern: accepted
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-patient.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-patient.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
from the FHIR Standard
Appointment.participant:va-patient.statusrequiredPattern: accepted
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-apptclinic.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-apptclinic.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
from the FHIR Standard
Appointment.participant:va-apptclinic.statusrequiredPattern: tentative
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
a-11-732warningAppointment.statusIf (2.98-3) is I, NT, Null; Null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #booked
: true
a-11-733warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #arrived
: true
a-11-734warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), non-null check-out date (44.003-303) then fixed value #fulfilled
: true
a-11-748warningAppointment.statusIf (409.3-.01) is not null then fixed value #waitlist
: true
a-11-2033warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
: true
a-11-2034warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
: true
app-1errorAppointment.participant, Appointment.participant:va-clinic, Appointment.participant:va-patient, Appointment.participant:va-apptclinicEither 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

Summary

Must-Support: 21 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Appointment.serviceCategory
  • The element 1 is sliced based on the value of Appointment.participant

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
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
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
.... extension:resource-serviceConnection 0..1 (Complex) Extension
URL: http://va.gov/fhir/StructureDefinition/resource-serviceConnection
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... extension 0..0
..... url 1..1 uri "http://va.gov/fhir/StructureDefinition/resource-serviceConnection"
..... value[x] SC 0..1 Coding Value of extension
Binding: VSResourceServiceConnection (required)
ele-1: All FHIR elements must have a @value or children
a-11-2033: If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
a-11-2034: If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... cancelationReason SΣ 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason FHIR (required): see mapping VF_AppointmentCancellationReason


ele-1: All FHIR elements must have a @value or children
... Slices for serviceCategory Σ 0..* CodeableConcept A broad categorization of the service that is to be performed during this appointment
Slice: Unordered, Open by value:$this
Binding: ServiceCategory (example)
ele-1: All FHIR elements must have a @value or children
.... serviceCategory:va-stop-code Σ 0..1 CodeableConcept A broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (example)
ele-1: All FHIR elements must have a @value or children
..... coding Σ 0..* Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children
...... system SΣ 0..1 uri Identity of the terminology system
ele-1: All FHIR elements must have a @value or children
Required Pattern: http://va.gov/terminology/VistADefinedTerms/409.3-13.4
...... code SΣ 0..1 code Symbol in syntax defined by the system
ele-1: All FHIR elements must have a @value or children
... specialty Σ 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
ele-1: All FHIR elements must have a @value or children
... appointmentType Σ 0..1 CodeableConcept The style of appointment or patient that has been booked in the slot (not service type)
Binding: hl7VS-appointmentReasonCodes (preferred)
ele-1: All FHIR elements must have a @value or children
.... text SΣ 0..1 string Plain text representation of the concept
ele-1: All FHIR elements must have a @value or children
... reasonCode Σ 0..* CodeableConcept Coded reason this appointment is scheduled
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.


ele-1: All FHIR elements must have a @value or children
... reasonReference 0..* Reference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason the appointment is to take place (resource)
ele-1: All FHIR elements must have a @value or children
... description S 0..1 string Shown on a subject line in a meeting request, or appointment list
ele-1: All FHIR elements must have a @value or children
... start SΣ 0..1 instant When appointment is to take place
ele-1: All FHIR elements must have a @value or children
... end SΣ 0..1 instant When appointment is to conclude
ele-1: All FHIR elements must have a @value or children
... minutesDuration S 0..1 positiveInt Can be less than start/end (e.g. estimate)
ele-1: All FHIR elements must have a @value or children
... created S 0..1 dateTime The date that this appointment was initially created
ele-1: All FHIR elements must have a @value or children
... comment S 0..1 string Additional comments
ele-1: All FHIR elements must have a @value or children
... Slices for participant C 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by value:$this
app-1: Either the type or actor on the participant SHALL be specified
ele-1: All FHIR elements must have a @value or children
.... participant:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


ele-1: All FHIR elements must have a @value or children
.... participant:va-clinic C 0..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
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


ele-1: All FHIR elements must have a @value or children
...... coding Σ 0..* Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children
....... code SΣ 0..1 code Symbol in syntax defined by the system
ele-1: All FHIR elements must have a @value or children
Required Pattern: PART
..... actor SΣ 0..1 Reference(Location) Person, Location/HealthcareService or Device
ele-1: All FHIR elements must have a @value or children
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


ele-1: All FHIR elements must have a @value or children
Required Pattern: accepted
.... participant:va-patient C 0..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
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


ele-1: All FHIR elements must have a @value or children
...... coding Σ 0..* Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children
....... code SΣ 0..1 code Symbol in syntax defined by the system
ele-1: All FHIR elements must have a @value or children
Required Pattern: PART
..... actor SΣ 0..1 Reference(Patient) Person, Location/HealthcareService or Device
ele-1: All FHIR elements must have a @value or children
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


ele-1: All FHIR elements must have a @value or children
Required Pattern: accepted
.... participant:va-apptclinic C 0..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
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


ele-1: All FHIR elements must have a @value or children
...... coding Σ 0..* Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children
....... code SΣ 0..1 code Symbol in syntax defined by the system
ele-1: All FHIR elements must have a @value or children
Required Pattern: PART
..... actor SΣ 0..1 Reference(Location) Person, Location/HealthcareService or Device
ele-1: All FHIR elements must have a @value or children
..... status SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


ele-1: All FHIR elements must have a @value or children
Required Pattern: tentative

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Appointment.extension:resource-serviceConnection.value[x]requiredVSResourceServiceConnection
http://va.gov/fhir/ValueSet/VSResourceServiceConnection
from this IG
Appointment.statusrequiredAppointmentStatus
http://va.gov/fhir/ValueSet/AppointmentStatus
from this IG
Appointment.cancelationReasonrequiredAppointmentCancellationReason
http://va.gov/fhir/ValueSet/AppointmentCancellationReason
from this IG
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Appointment.serviceCategory:va-stop-codeexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
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.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-clinic.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-clinic.statusrequiredPattern: accepted
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-patient.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-patient.statusrequiredPattern: accepted
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-apptclinic.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-apptclinic.statusrequiredPattern: tentative
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
a-11-732warningAppointment.statusIf (2.98-3) is I, NT, Null; Null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #booked
: true
a-11-733warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #arrived
: true
a-11-734warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), non-null check-out date (44.003-303) then fixed value #fulfilled
: true
a-11-748warningAppointment.statusIf (409.3-.01) is not null then fixed value #waitlist
: true
a-11-2033warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
: true
a-11-2034warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
: true
app-1errorAppointment.participant, Appointment.participant:va-clinic, Appointment.participant:va-patient, Appointment.participant:va-apptclinicEither 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)
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:resource-serviceConnection 0..1 (Complex) Extension
URL: http://va.gov/fhir/StructureDefinition/resource-serviceConnection
..... value[x] SC 0..1 Coding Value of extension
a-11-2033: If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
a-11-2034: If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
... status SC 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus FHIR (required): see mapping VF_AppointmentStatus


a-11-732: If (2.98-3) is I, NT, Null; Null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #booked
a-11-733: If (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #arrived
a-11-734: If (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), non-null check-out date (44.003-303) then fixed value #fulfilled
a-11-748: If (409.3-.01) is not null then fixed value #waitlist
... cancelationReason S 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason FHIR (required): see mapping VF_AppointmentCancellationReason

.... serviceCategory:va-stop-code 0..1 CodeableConcept A broad categorization of the service that is to be performed during this appointment
..... coding
...... system S 0..1 uri Identity of the terminology system
Required Pattern: http://va.gov/terminology/VistADefinedTerms/409.3-13.4
...... code S 0..1 code Symbol in syntax defined by the system
... specialty 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
... appointmentType
.... text S 0..1 string Plain text representation of the concept
... reasonCode 0..* CodeableConcept Coded reason this appointment is scheduled
... reasonReference 0..* Reference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason the appointment is to take place (resource)
... description S 0..1 string Shown on a subject line in a meeting request, or appointment list
... start S 0..1 instant When appointment is to take place
... end S 0..1 instant When appointment is to conclude
... minutesDuration S 0..1 positiveInt Can be less than start/end (e.g. estimate)
... created S 0..1 dateTime The date that this appointment was initially created
... comment S 0..1 string Additional comments
... Slices for participant 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by value:$this
.... participant:va-clinic 0..1 BackboneElement Participants involved in appointment
..... type
...... coding
....... code S 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
..... actor S 0..1 Reference(Location) Person, Location/HealthcareService or Device
..... status S 1..1 code accepted | declined | tentative | needs-action
Required Pattern: accepted
.... participant:va-patient 0..1 BackboneElement Participants involved in appointment
..... type
...... coding
....... code S 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
..... actor S 0..1 Reference(Patient) Person, Location/HealthcareService or Device
..... status S 1..1 code accepted | declined | tentative | needs-action
Required Pattern: accepted
.... participant:va-apptclinic 0..1 BackboneElement Participants involved in appointment
..... type
...... coding
....... code S 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
..... actor S 0..1 Reference(Location) Person, Location/HealthcareService or Device
..... status S 1..1 code accepted | declined | tentative | needs-action
Required Pattern: tentative

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Appointment.statusrequiredAppointmentStatus
http://va.gov/fhir/ValueSet/AppointmentStatus
from this IG
Appointment.cancelationReasonrequiredAppointmentCancellationReason
http://va.gov/fhir/ValueSet/AppointmentCancellationReason
from this IG

Constraints

IdGradePath(s)DetailsRequirements
a-11-732warningAppointment.statusIf (2.98-3) is I, NT, Null; Null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #booked
: true
a-11-733warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #arrived
: true
a-11-734warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), non-null check-out date (44.003-303) then fixed value #fulfilled
: true
a-11-748warningAppointment.statusIf (409.3-.01) is not null then fixed value #waitlist
: true
a-11-2033warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
: true
a-11-2034warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
: true

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 Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

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
.... extension:resource-serviceConnection 0..1 (Complex) Extension
URL: http://va.gov/fhir/StructureDefinition/resource-serviceConnection
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "http://va.gov/fhir/StructureDefinition/resource-serviceConnection"
..... value[x] SC 0..1 Coding Value of extension
Binding: VSResourceServiceConnection (required)
a-11-2033: If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
a-11-2034: If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Ids for this item
... status ?!SΣC 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus FHIR (required): see mapping VF_AppointmentStatus


a-11-732: If (2.98-3) is I, NT, Null; Null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #booked
a-11-733: If (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #arrived
a-11-734: If (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), non-null check-out date (44.003-303) then fixed value #fulfilled
a-11-748: If (409.3-.01) is not null then fixed value #waitlist
... cancelationReason SΣ 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason FHIR (required): see mapping VF_AppointmentCancellationReason

... Slices for serviceCategory Σ 0..* CodeableConcept A broad categorization of the service that is to be performed during this appointment
Slice: Unordered, Open by value:$this
Binding: ServiceCategory (example)
.... serviceCategory:va-stop-code Σ 0..1 CodeableConcept A broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (example)
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ 0..* Coding Code defined by a terminology system
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ 0..1 uri Identity of the terminology system
Required Pattern: http://va.gov/terminology/VistADefinedTerms/409.3-13.4
...... version Σ 0..1 string Version of the system - if relevant
...... code SΣ 0..1 code Symbol in syntax defined by the system
...... display Σ 0..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
... 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)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 0..* Coding Code defined by a terminology system
.... text SΣ 0..1 string Plain text representation of the concept
... 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 S 0..1 string Shown on a subject line in a meeting request, or appointment list
... supportingInformation 0..* Reference(Resource) Additional information to support the appointment
... start SΣ 0..1 instant When appointment is to take place
... end SΣ 0..1 instant When appointment is to conclude
... minutesDuration S 0..1 positiveInt Can be less than start/end (e.g. estimate)
... slot 0..* Reference(Slot) The slots that this appointment is filling
... created S 0..1 dateTime The date that this appointment was initially created
... comment S 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
... Slices for participant C 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by value:$this
app-1: Either the type or actor on the participant SHALL be specified
.... participant:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


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

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

..... period 0..1 Period Participation period of the actor
.... participant:va-clinic C 0..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
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ 0..1 uri Identity of the terminology system
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... text Σ 0..1 string Plain text representation of the concept
..... actor SΣ 0..1 Reference(Location) Person, Location/HealthcareService or Device
..... required Σ 0..1 code required | optional | information-only
Binding: ParticipantRequired (required): Is the Participant required to attend the appointment.

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


Required Pattern: accepted
..... period 0..1 Period Participation period of the actor
.... participant:va-patient C 0..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
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ 0..1 uri Identity of the terminology system
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... text Σ 0..1 string Plain text representation of the concept
..... actor SΣ 0..1 Reference(Patient) 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 SΣ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


Required Pattern: accepted
..... period 0..1 Period Participation period of the actor
.... participant:va-apptclinic C 0..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
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type Σ 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ 0..1 uri Identity of the terminology system
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 0..1 code Symbol in syntax defined by the system
Required Pattern: PART
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... text Σ 0..1 string Plain text representation of the concept
..... actor SΣ 0..1 Reference(Location) Person, Location/HealthcareService or Device
..... required Σ 0..1 code required | optional | information-only
Binding: ParticipantRequired (required): Is the Participant required to attend the appointment.

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


Required Pattern: tentative
..... 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

PathConformanceValueSet / CodeURI
Appointment.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Appointment.extension:resource-serviceConnection.value[x]requiredVSResourceServiceConnection
http://va.gov/fhir/ValueSet/VSResourceServiceConnection
from this IG
Appointment.statusrequiredAppointmentStatus
http://va.gov/fhir/ValueSet/AppointmentStatus
from this IG
Appointment.cancelationReasonrequiredAppointmentCancellationReason
http://va.gov/fhir/ValueSet/AppointmentCancellationReason
from this IG
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Appointment.serviceCategory:va-stop-codeexampleServiceCategory
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.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-clinic.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-clinic.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
from the FHIR Standard
Appointment.participant:va-clinic.statusrequiredPattern: accepted
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-patient.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-patient.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
from the FHIR Standard
Appointment.participant:va-patient.statusrequiredPattern: accepted
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard
Appointment.participant:va-apptclinic.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant:va-apptclinic.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
from the FHIR Standard
Appointment.participant:va-apptclinic.statusrequiredPattern: tentative
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
a-11-732warningAppointment.statusIf (2.98-3) is I, NT, Null; Null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #booked
: true
a-11-733warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), null check-out date (44.003-303) then fixed value #arrived
: true
a-11-734warningAppointment.statusIf (2.98-3) is I, NT, Null; Non-null check-in date (44.003-309), non-null check-out date (44.003-303) then fixed value #fulfilled
: true
a-11-748warningAppointment.statusIf (409.3-.01) is not null then fixed value #waitlist
: true
a-11-2033warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#SC "Service Connected"
: true
a-11-2034warningAppointment.extension:resource-serviceConnection.value[x]If (2.98-9.5 > 409.1-.01) is Not SERVICE CONNECTED then fixed value http://va.gov/fhir/vistaDefinedTerms/409.1#NSC "Not Service Connected"
: true
app-1errorAppointment.participant, Appointment.participant:va-clinic, Appointment.participant:va-patient, Appointment.participant:va-apptclinicEither 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

Summary

Must-Support: 21 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Appointment.serviceCategory
  • The element 1 is sliced based on the value of Appointment.participant

 

Other representations of profile: CSV, Excel, Schematron