This page is part of the Da Vinci Coverage Requirements Discovery (CRD) FHIR IG (v2.1.0-preview: STU 2.1) based on FHIR (HL7® FHIR® Standard) R4. The current version which supersedes this version is 2.0.1. For a full list of available versions, see the Directory of published versions
Official URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-appointment-with-order | Version: 2.1.0-preview | |||
Standards status: Trial-use | Maturity Level: 1 | Computable Name: CRDAppointmentWithOrder |
An appointment where the details of what the appointment is being booked for are provided in the associated ServiceRequest
CRD Clients SHALL use either this profile and/or the no-order to provide appointments
context objects to CRD Servers when invoking the appointment-book hook as well as to resolve other references to Appointment resources.
This profile conveys the details of the appointment in an associated ServiceRequest.
Information provided in Must Support elements will commonly be required for CRD Servers to perform coverage requirements discovery.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from CRDAppointmentBase
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Appointment | 0..* | CRDAppointmentBase | This is an abstractprofile. 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) | |
basedOn | S | 1..* | Reference(CRD Service Request) | The service request this appointment is allocated to assess |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Appointment | C | 0..* | CRDAppointmentBase | This is an abstractprofile. 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 crd-apt1: Must have either start or requestedPeriod.start crd-apt2: Must have either end or requestedPeriod.end |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!SΣ | 1..1 | code | Appointment status Binding: AppointmentStatus (required): The free/busy status of an appointment. Example General: proposed |
start | SΣC | 0..1 | instant | When appointment is to take place |
end | SΣC | 0..1 | instant | When appointment is to conclude |
basedOn | S | 1..* | Reference(CRD Service Request) | The service request this appointment is allocated to assess |
participant | SC | 1..* | BackboneElement | Participants involved in appointment app-1: Either the type or actor on the participant SHALL be specified |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
actor | SΣ | 0..1 | Reference(CRD Patient | US Core Practitioner Profile(7.0.0) | US Core PractitionerRole Profile(7.0.0) | CRD Location) | Patient, Practitioner or Location |
status | SΣ | 1..1 | code | accepted | declined | tentative | needs-action Binding: ParticipationStatus (required): The Participation status of an appointment. |
requestedPeriod | SC | 0..1 | Period | Potential date/time interval(s) requested to allocate the appointment within |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Appointment.status | required | AppointmentStatushttp://hl7.org/fhir/ValueSet/appointmentstatus|4.0.1 from the FHIR Standard | |
Appointment.participant.status | required | ParticipationStatushttp://hl7.org/fhir/ValueSet/participationstatus|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
app-1 | error | Appointment.participant | 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 | Cancelation 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') | |
crd-apt1 | error | Appointment | Must have either start or requestedPeriod.start : start.exists() or requestedPeriod.start.exists() | |
crd-apt2 | error | Appointment | Must have either end or requestedPeriod.end : end.exists() or requestedPeriod.end.exists() | |
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().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-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() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Appointment | C | 0..* | CRDAppointmentBase | This is an abstractprofile. 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 crd-apt1: Must have either start or requestedPeriod.start crd-apt2: Must have either end or requestedPeriod.end | ||||
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.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
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 | ?!SΣ | 1..1 | code | Appointment status Binding: AppointmentStatus (required): The free/busy status of an appointment. Example General: proposed | ||||
cancelationReason | Σ | 0..1 | CodeableConcept | The coded reason for the appointment being cancelled Binding: AppointmentCancellationReason (example) | ||||
serviceCategory | Σ | 0..* | CodeableConcept | A broad categorization of the service that is to be performed during this appointment Binding: ServiceCategory (example) | ||||
serviceType | Σ | 0..* | CodeableConcept | The specific service that is to be performed during this appointment Binding: ServiceType (example) | ||||
specialty | Σ | 0..* | CodeableConcept | The specialty of a practitioner that would be required to perform the service requested in this appointment Binding: PracticeSettingCodeValueSet (preferred) | ||||
appointmentType | Σ | 0..1 | CodeableConcept | The style of appointment or patient that has been booked in the slot (not service type) Binding: hl7VS-appointmentReasonCodes (preferred) | ||||
reasonCode | Σ | 0..* | CodeableConcept | Coded reason this appointment is scheduled Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place. | ||||
reasonReference | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | Reason the appointment is to take place (resource) | |||||
priority | 0..1 | unsignedInt | Used to make informed decisions if needing to re-prioritize | |||||
description | 0..1 | string | Shown on a subject line in a meeting request, or appointment list | |||||
supportingInformation | 0..* | Reference(Resource) | Additional information to support the appointment | |||||
start | SΣC | 0..1 | instant | When appointment is to take place | ||||
end | SΣC | 0..1 | instant | When appointment is to conclude | ||||
minutesDuration | 0..1 | positiveInt | Can be less than start/end (e.g. estimate) | |||||
slot | 0..* | Reference(Slot) | The slots that this appointment is filling | |||||
created | 0..1 | dateTime | The date that this appointment was initially created | |||||
comment | 0..1 | string | Additional comments | |||||
patientInstruction | 0..1 | string | Detailed information and instructions for the patient | |||||
basedOn | S | 1..* | Reference(CRD Service Request) | The service request this appointment is allocated to assess | ||||
participant | SC | 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. | ||||
actor | SΣ | 0..1 | Reference(CRD Patient | US Core Practitioner Profile(7.0.0) | US Core PractitionerRole Profile(7.0.0) | CRD Location) | Patient, Practitioner or Location | ||||
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. | ||||
period | 0..1 | Period | Participation period of the actor | |||||
requestedPeriod | SC | 0..1 | Period | Potential date/time interval(s) requested to allocate the appointment within | ||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Appointment.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Appointment.status | required | AppointmentStatushttp://hl7.org/fhir/ValueSet/appointmentstatus|4.0.1 from the FHIR Standard | ||||
Appointment.cancelationReason | example | AppointmentCancellationReasonhttp://hl7.org/fhir/ValueSet/appointment-cancellation-reason from the FHIR Standard | ||||
Appointment.serviceCategory | example | ServiceCategoryhttp://hl7.org/fhir/ValueSet/service-category from the FHIR Standard | ||||
Appointment.serviceType | example | ServiceTypehttp://hl7.org/fhir/ValueSet/service-type from the FHIR Standard | ||||
Appointment.specialty | preferred | PracticeSettingCodeValueSethttp://hl7.org/fhir/ValueSet/c80-practice-codes from the FHIR Standard | ||||
Appointment.appointmentType | preferred | Hl7VSAppointmentReasonCodeshttp://terminology.hl7.org/ValueSet/v2-0276 | ||||
Appointment.reasonCode | preferred | EncounterReasonCodeshttp://hl7.org/fhir/ValueSet/encounter-reason from the FHIR Standard | ||||
Appointment.participant.type | extensible | ParticipantTypehttp://hl7.org/fhir/ValueSet/encounter-participant-type from the FHIR Standard | ||||
Appointment.participant.required | required | ParticipantRequiredhttp://hl7.org/fhir/ValueSet/participantrequired|4.0.1 from the FHIR Standard | ||||
Appointment.participant.status | required | ParticipationStatushttp://hl7.org/fhir/ValueSet/participationstatus|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
app-1 | error | Appointment.participant | 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 | Cancelation 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') | |
crd-apt1 | error | Appointment | Must have either start or requestedPeriod.start : start.exists() or requestedPeriod.start.exists() | |
crd-apt2 | error | Appointment | Must have either end or requestedPeriod.end : end.exists() or requestedPeriod.end.exists() | |
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().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-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 CRDAppointmentBase
Summary
Mandatory: 1 element
Must-Support: 1 element
Structures
This structure refers to these other structures:
Maturity: 1
Differential View
This structure is derived from CRDAppointmentBase
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Appointment | 0..* | CRDAppointmentBase | This is an abstractprofile. 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) | |
basedOn | S | 1..* | Reference(CRD Service Request) | The service request this appointment is allocated to assess |
Documentation for this format |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Appointment | C | 0..* | CRDAppointmentBase | This is an abstractprofile. 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 crd-apt1: Must have either start or requestedPeriod.start crd-apt2: Must have either end or requestedPeriod.end |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!SΣ | 1..1 | code | Appointment status Binding: AppointmentStatus (required): The free/busy status of an appointment. Example General: proposed |
start | SΣC | 0..1 | instant | When appointment is to take place |
end | SΣC | 0..1 | instant | When appointment is to conclude |
basedOn | S | 1..* | Reference(CRD Service Request) | The service request this appointment is allocated to assess |
participant | SC | 1..* | BackboneElement | Participants involved in appointment app-1: Either the type or actor on the participant SHALL be specified |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
actor | SΣ | 0..1 | Reference(CRD Patient | US Core Practitioner Profile(7.0.0) | US Core PractitionerRole Profile(7.0.0) | CRD Location) | Patient, Practitioner or Location |
status | SΣ | 1..1 | code | accepted | declined | tentative | needs-action Binding: ParticipationStatus (required): The Participation status of an appointment. |
requestedPeriod | SC | 0..1 | Period | Potential date/time interval(s) requested to allocate the appointment within |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Appointment.status | required | AppointmentStatushttp://hl7.org/fhir/ValueSet/appointmentstatus|4.0.1 from the FHIR Standard | |
Appointment.participant.status | required | ParticipationStatushttp://hl7.org/fhir/ValueSet/participationstatus|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
app-1 | error | Appointment.participant | 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 | Cancelation 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') | |
crd-apt1 | error | Appointment | Must have either start or requestedPeriod.start : start.exists() or requestedPeriod.start.exists() | |
crd-apt2 | error | Appointment | Must have either end or requestedPeriod.end : end.exists() or requestedPeriod.end.exists() | |
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().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-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() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Appointment | C | 0..* | CRDAppointmentBase | This is an abstractprofile. 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 crd-apt1: Must have either start or requestedPeriod.start crd-apt2: Must have either end or requestedPeriod.end | ||||
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.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
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 | ?!SΣ | 1..1 | code | Appointment status Binding: AppointmentStatus (required): The free/busy status of an appointment. Example General: proposed | ||||
cancelationReason | Σ | 0..1 | CodeableConcept | The coded reason for the appointment being cancelled Binding: AppointmentCancellationReason (example) | ||||
serviceCategory | Σ | 0..* | CodeableConcept | A broad categorization of the service that is to be performed during this appointment Binding: ServiceCategory (example) | ||||
serviceType | Σ | 0..* | CodeableConcept | The specific service that is to be performed during this appointment Binding: ServiceType (example) | ||||
specialty | Σ | 0..* | CodeableConcept | The specialty of a practitioner that would be required to perform the service requested in this appointment Binding: PracticeSettingCodeValueSet (preferred) | ||||
appointmentType | Σ | 0..1 | CodeableConcept | The style of appointment or patient that has been booked in the slot (not service type) Binding: hl7VS-appointmentReasonCodes (preferred) | ||||
reasonCode | Σ | 0..* | CodeableConcept | Coded reason this appointment is scheduled Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place. | ||||
reasonReference | 0..* | Reference(Condition | Procedure | Observation | ImmunizationRecommendation) | Reason the appointment is to take place (resource) | |||||
priority | 0..1 | unsignedInt | Used to make informed decisions if needing to re-prioritize | |||||
description | 0..1 | string | Shown on a subject line in a meeting request, or appointment list | |||||
supportingInformation | 0..* | Reference(Resource) | Additional information to support the appointment | |||||
start | SΣC | 0..1 | instant | When appointment is to take place | ||||
end | SΣC | 0..1 | instant | When appointment is to conclude | ||||
minutesDuration | 0..1 | positiveInt | Can be less than start/end (e.g. estimate) | |||||
slot | 0..* | Reference(Slot) | The slots that this appointment is filling | |||||
created | 0..1 | dateTime | The date that this appointment was initially created | |||||
comment | 0..1 | string | Additional comments | |||||
patientInstruction | 0..1 | string | Detailed information and instructions for the patient | |||||
basedOn | S | 1..* | Reference(CRD Service Request) | The service request this appointment is allocated to assess | ||||
participant | SC | 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. | ||||
actor | SΣ | 0..1 | Reference(CRD Patient | US Core Practitioner Profile(7.0.0) | US Core PractitionerRole Profile(7.0.0) | CRD Location) | Patient, Practitioner or Location | ||||
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. | ||||
period | 0..1 | Period | Participation period of the actor | |||||
requestedPeriod | SC | 0..1 | Period | Potential date/time interval(s) requested to allocate the appointment within | ||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Appointment.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Appointment.status | required | AppointmentStatushttp://hl7.org/fhir/ValueSet/appointmentstatus|4.0.1 from the FHIR Standard | ||||
Appointment.cancelationReason | example | AppointmentCancellationReasonhttp://hl7.org/fhir/ValueSet/appointment-cancellation-reason from the FHIR Standard | ||||
Appointment.serviceCategory | example | ServiceCategoryhttp://hl7.org/fhir/ValueSet/service-category from the FHIR Standard | ||||
Appointment.serviceType | example | ServiceTypehttp://hl7.org/fhir/ValueSet/service-type from the FHIR Standard | ||||
Appointment.specialty | preferred | PracticeSettingCodeValueSethttp://hl7.org/fhir/ValueSet/c80-practice-codes from the FHIR Standard | ||||
Appointment.appointmentType | preferred | Hl7VSAppointmentReasonCodeshttp://terminology.hl7.org/ValueSet/v2-0276 | ||||
Appointment.reasonCode | preferred | EncounterReasonCodeshttp://hl7.org/fhir/ValueSet/encounter-reason from the FHIR Standard | ||||
Appointment.participant.type | extensible | ParticipantTypehttp://hl7.org/fhir/ValueSet/encounter-participant-type from the FHIR Standard | ||||
Appointment.participant.required | required | ParticipantRequiredhttp://hl7.org/fhir/ValueSet/participantrequired|4.0.1 from the FHIR Standard | ||||
Appointment.participant.status | required | ParticipationStatushttp://hl7.org/fhir/ValueSet/participationstatus|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
app-1 | error | Appointment.participant | 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 | Cancelation 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') | |
crd-apt1 | error | Appointment | Must have either start or requestedPeriod.start : start.exists() or requestedPeriod.start.exists() | |
crd-apt2 | error | Appointment | Must have either end or requestedPeriod.end : end.exists() or requestedPeriod.end.exists() | |
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().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-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 CRDAppointmentBase
Summary
Mandatory: 1 element
Must-Support: 1 element
Structures
This structure refers to these other structures:
Maturity: 1
Other representations of profile: CSV, Excel, Schematron