Polaris FHIR Implementation Guide
1.10.0 - ci-build

Polaris FHIR Implementation Guide - Local Development build (v1.10.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: Polaris Appointment (Minimal) Core

Official URL: https://fhir.apps.health/StructureDefinition/polaris-core-appointment Version: 1.10.0
Draft as of 2026-05-26 Computable Name: PolarisCoreAppointment

Minimal Polaris profile for Appointment resources, primarily for mapping status, start date (Last Visit Date), and required patient/practitioner participants. Assumes filtering for status='fulfilled' happens during data retrieval/processing. Contains embedded aliases and invariants.

Polaris Core Appointment Profile

Overview

The Polaris Core Appointment profile represents scheduled patient appointments within primary care EMR systems. This profile captures essential appointment details including scheduling information, participants, status, and service types across the Polaris ecosystem.

Key Features

  • Status Tracking: Monitors appointment lifecycle from proposed through fulfilled or cancelled
  • Participant Management: Tracks patients and healthcare providers involved
  • Service Classification: Categorizes appointments by service type and category
  • Flexible Scheduling: Supports requested versus actual appointment times
  • Raw Code Support: Preserves source EMR appointment type codes

Appointment Status

Common appointment states include:

  • Proposed: Appointment request needs confirmation
  • Pending: Awaiting final confirmation
  • Booked: Confirmed and scheduled
  • Arrived: Patient has checked in
  • Fulfilled: Appointment completed
  • Cancelled: Appointment was cancelled
  • Noshow: Patient did not attend

Clinical Workflows

The appointment profile supports:

  • Scheduling and booking workflows
  • Patient check-in processes
  • Provider schedule management
  • No-show and cancellation tracking
  • Last visit date determination (A12 mapping)

Participant Roles

Appointments track various participants:

  • Patient: The individual receiving care (required)
  • PractitionerRole: EMR users involved

Service Types

Common appointment categories include:

  • Primary care visits
  • Specialist consultations
  • Preventive care appointments
  • Follow-up visits
  • Procedure appointments
  • Virtual/telehealth visits

Data Quality Considerations

For systems without explicit "fulfilled" status:

  • Consider appointments as fulfilled if status is (booked OR arrived OR checked-in) AND date is before yesterday
  • This heuristic helps identify completed appointments in systems with limited status tracking

Future Considerations

Potential enhancements being evaluated:

  • Recurring appointment patterns
  • Wait list management
  • Appointment request priorities
  • Cancellation reasons
  • Duration and end time tracking
  • Video/telehealth appointment indicators

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Appointment C 0..* Appointment Polaris Appointment Core
Constraints: app-2, app-3, app-4, appointment-has-polaris-id
... meta Σ 0..1 Meta Metadata about the resource
.... source SΣ 0..1 uri Identifies EMR instance & pipeline version the resource came from
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text S 0..1 Narrative Narrative
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... Slices for identifier SΣ 2..* Identifier Business identifier(s) for appointment
Slice: Unordered, Open by pattern:system
.... identifier:polarisId SΣ 1..1 Identifier Polaris Appointment ID
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Required Pattern: official
..... system Σ 1..1 uri Polaris appointment identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-appointment-identifier
Example General: http://www.acme.com/identifiers/patient
..... value Σ 1..1 string The actual Polaris appointment ID value: unique in source system
Example General: 123456
.... identifier:rawCode SΣ 1..* Identifier Source EMR appointment identifier
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Required Pattern: secondary
..... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-raw-code
Example General: http://www.acme.com/identifiers/patient
..... value Σ 1..1 string The value that is unique
Example General: 123456
... status ?!SΣ 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow
Binding: AppointmentStatus (required)
... serviceCategory SΣ 0..* CodeableConcept Service category with raw code support
Binding: ServiceCategory (example)
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard service category code
...... system Σ 1..1 uri Standard terminology system URI
...... code Σ 1..1 code Symbol in syntax defined by the system
..... coding:rawCode SΣ 1..* Coding Source EMR service category code
...... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicecategory-raw-code
...... code Σ 1..1 code EMR-specific service category code
...... display Σ 1..1 string EMR's display text for this category
... serviceType SΣ 0..* CodeableConcept Service type with raw code support
Binding: ServiceType (example)
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard service type code
...... system Σ 1..1 uri Standard terminology system URI
...... code Σ 1..1 code Symbol in syntax defined by the system
..... coding:rawCode SΣ 1..* Coding Source EMR service type code
...... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicetype-raw-code
...... code Σ 1..1 code EMR-specific service type code
...... display Σ 1..1 string EMR's display text for this type
... appointmentType SΣ 0..1 CodeableConcept Appointment type with raw code support
Binding: hl7VS-appointmentReasonCodes (preferred)
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard appointment type code
...... system Σ 1..1 uri Standard terminology system URI
...... code Σ 1..1 code Symbol in syntax defined by the system
..... coding:rawCode SΣ 1..* Coding Source EMR appointment type code
...... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-appointmenttype-raw-code
...... code Σ 1..1 code EMR-specific appointment type code
...... display Σ 1..1 string EMR's display text for this type
... reasonCode SΣ 0..* CodeableConcept Appointment reason with raw code support
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard reason code
...... system Σ 1..1 uri Standard terminology system URI
...... code Σ 1..1 code Symbol in syntax defined by the system
..... coding:rawCode SΣ 1..* Coding Source EMR reason code
...... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-reasoncode-raw-code
...... code Σ 1..1 code EMR-specific reason code
...... display Σ 1..1 string EMR's display text for this reason
... start SΣ 1..1 instant When appointment is to take place - Maps to A12_Last Visit Date
... slot S 0..* Reference(Polaris Slot (Minimal) Core) Slot(s) this appointment was booked into
... Slices for participant SC 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by profile:actor.resolve()
Constraints: app-1
.... participant:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:Location SC 1..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣ 1..1 Reference(Polaris Location Core) Person, Location/HealthcareService or Device
..... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:Patient SC 0..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣ 1..1 Reference(Polaris Patient Core) Person, Location/HealthcareService or Device
..... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:PractitionerRole SC 0..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣ 1..1 Reference(Polaris PractitionerRole Core) Person, Location/HealthcareService or Device
..... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
... requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within
.... start SΣC 0..1 dateTime Requested date/time for appointment

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Appointment.identifier:polarisId.userequiredPattern Value: official
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Appointment.identifier:rawCode.userequiredPattern Value: secondary
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Appointment.statusrequiredAppointmentStatus
http://hl7.org/fhir/ValueSet/appointmentstatus
From the FHIR Standard
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
From the FHIR Standard
Appointment.serviceTypeexampleServiceType
http://hl7.org/fhir/ValueSet/service-type
From the FHIR Standard
Appointment.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:Location.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard
Appointment.participant:Patient.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard
Appointment.participant:PractitionerRole.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participant, Appointment.participant:Location, Appointment.participant:Patient, Appointment.participant:PractitionerRoleEither 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')
appointment-has-polaris-iderrorAppointmentMust have at least one identifier with a canonical Polaris system URI
: identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-appointment-identifier$'))
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 & Constraints    Filter: Filtersdoco
.. Appointment C 0..* Appointment Polaris Appointment Core
Constraints: appointment-has-polaris-id
... meta
.... source S 0..1 uri Identifies EMR instance & pipeline version the resource came from
... text S 0..1 Narrative Narrative
... Slices for identifier S 2..* Identifier Business identifier(s) for appointment
Slice: Unordered, Open by pattern:system
.... identifier:polarisId S 1..1 Identifier Polaris Appointment ID
..... use 0..1 code usual | official | temp | secondary | old (If known)
Required Pattern: official
..... system 1..1 uri Polaris appointment identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-appointment-identifier
..... value 1..1 string The actual Polaris appointment ID value: unique in source system
.... identifier:rawCode S 1..* Identifier Source EMR appointment identifier
..... use 0..1 code usual | official | temp | secondary | old (If known)
Required Pattern: secondary
..... system 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-raw-code
..... value 1..1 string The value that is unique
... serviceCategory S 0..* CodeableConcept Service category with raw code support
.... Slices for coding 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard S 0..* Coding Standard service category code
...... system 1..1 uri Standard terminology system URI
...... code 1..1 code Symbol in syntax defined by the system
..... coding:rawCode S 1..* Coding Source EMR service category code
...... system 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicecategory-raw-code
...... code 1..1 code EMR-specific service category code
...... display 1..1 string EMR's display text for this category
... serviceType S 0..* CodeableConcept Service type with raw code support
.... Slices for coding 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard S 0..* Coding Standard service type code
...... system 1..1 uri Standard terminology system URI
...... code 1..1 code Symbol in syntax defined by the system
..... coding:rawCode S 1..* Coding Source EMR service type code
...... system 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicetype-raw-code
...... code 1..1 code EMR-specific service type code
...... display 1..1 string EMR's display text for this type
... appointmentType S 0..1 CodeableConcept Appointment type with raw code support
.... Slices for coding 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard S 0..* Coding Standard appointment type code
...... system 1..1 uri Standard terminology system URI
...... code 1..1 code Symbol in syntax defined by the system
..... coding:rawCode S 1..* Coding Source EMR appointment type code
...... system 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-appointmenttype-raw-code
...... code 1..1 code EMR-specific appointment type code
...... display 1..1 string EMR's display text for this type
... reasonCode S 0..* CodeableConcept Appointment reason with raw code support
.... Slices for coding 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard S 0..* Coding Standard reason code
...... system 1..1 uri Standard terminology system URI
...... code 1..1 code Symbol in syntax defined by the system
..... coding:rawCode S 1..* Coding Source EMR reason code
...... system 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-reasoncode-raw-code
...... code 1..1 code EMR-specific reason code
...... display 1..1 string EMR's display text for this reason
... start S 1..1 instant When appointment is to take place - Maps to A12_Last Visit Date
... slot S 0..* Reference(Polaris Slot (Minimal) Core) Slot(s) this appointment was booked into
... Slices for participant S 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by profile:actor.resolve()
.... participant:Location S 1..1 BackboneElement Participants involved in appointment
..... actor S 1..1 Reference(Polaris Location Core) Person, Location/HealthcareService or Device
.... participant:Patient S 0..1 BackboneElement Participants involved in appointment
..... actor S 1..1 Reference(Polaris Patient Core) Person, Location/HealthcareService or Device
.... participant:PractitionerRole S 0..1 BackboneElement Participants involved in appointment
..... actor S 1..1 Reference(Polaris PractitionerRole Core) Person, Location/HealthcareService or Device
... requestedPeriod
.... start S 0..1 dateTime Requested date/time for appointment

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Appointment.statusrequiredAppointmentStatus
http://hl7.org/fhir/ValueSet/appointmentstatus
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
appointment-has-polaris-iderrorAppointmentMust have at least one identifier with a canonical Polaris system URI
: identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-appointment-identifier$'))
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Appointment C 0..* Appointment Polaris Appointment Core
Constraints: app-2, app-3, app-4, appointment-has-polaris-id
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated Σ 0..1 instant When the resource version last changed
.... source SΣ 0..1 uri Identifies EMR instance & pipeline version the resource came from
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... 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 S 0..1 Narrative Narrative
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier SΣ 2..* Identifier Business identifier(s) for appointment
Slice: Unordered, Open by pattern:system
.... identifier:polarisId SΣ 1..1 Identifier Polaris Appointment ID
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Required Pattern: official
..... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
..... system Σ 1..1 uri Polaris appointment identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-appointment-identifier
Example General: http://www.acme.com/identifiers/patient
..... value Σ 1..1 string The actual Polaris appointment ID value: unique in source system
Example General: 123456
..... period Σ 0..1 Period Time period when id is/was valid for use
..... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
.... identifier:rawCode SΣ 1..* Identifier Source EMR appointment identifier
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Required Pattern: secondary
..... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
..... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-raw-code
Example General: http://www.acme.com/identifiers/patient
..... value Σ 1..1 string The value that is unique
Example General: 123456
..... period Σ 0..1 Period Time period when id is/was valid for use
..... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... status ?!SΣ 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow
Binding: AppointmentStatus (required)
... cancelationReason Σ 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason (example)
... serviceCategory SΣ 0..* CodeableConcept Service category with raw code support
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
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard service category code
...... 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 Σ 1..1 uri Standard terminology system URI
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..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
..... coding:rawCode SΣ 1..* Coding Source EMR service category code
...... 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 Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicecategory-raw-code
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..1 code EMR-specific service category code
...... display Σ 1..1 string EMR's display text for this category
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... serviceType SΣ 0..* CodeableConcept Service type with raw code support
Binding: ServiceType (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
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard service type code
...... 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 Σ 1..1 uri Standard terminology system URI
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..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
..... coding:rawCode SΣ 1..* Coding Source EMR service type code
...... 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 Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicetype-raw-code
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..1 code EMR-specific service type code
...... display Σ 1..1 string EMR's display text for this type
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... specialty Σ 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
... appointmentType SΣ 0..1 CodeableConcept Appointment type with raw code support
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
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard appointment type code
...... 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 Σ 1..1 uri Standard terminology system URI
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..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
..... coding:rawCode SΣ 1..* Coding Source EMR appointment type code
...... 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 Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-appointmenttype-raw-code
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..1 code EMR-specific appointment type code
...... display Σ 1..1 string EMR's display text for this type
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... reasonCode SΣ 0..* CodeableConcept Appointment reason with raw code support
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard reason code
...... 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 Σ 1..1 uri Standard terminology system URI
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..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
..... coding:rawCode SΣ 1..* Coding Source EMR reason code
...... 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 Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-reasoncode-raw-code
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..1 code EMR-specific reason code
...... display Σ 1..1 string EMR's display text for this reason
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... 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Σ 1..1 instant When appointment is to take place - Maps to A12_Last Visit Date
... end Σ 0..1 instant When appointment is to conclude
... minutesDuration 0..1 positiveInt Can be less than start/end (e.g. estimate)
... slot S 0..* Reference(Polaris Slot (Minimal) Core) Slot(s) this appointment was booked into
... 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 0..* Reference(ServiceRequest) The service request this appointment is allocated to assess
... Slices for participant SC 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by profile:actor.resolve()
Constraints: app-1
.... 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:Location SC 1..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... 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Σ 1..1 Reference(Polaris Location Core) 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:Patient SC 0..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... 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Σ 1..1 Reference(Polaris Patient Core) 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:PractitionerRole SC 0..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... 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Σ 1..1 Reference(Polaris PractitionerRole Core) 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
... requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... start SΣC 0..1 dateTime Requested date/time for appointment
.... end ΣC 0..1 dateTime End time with inclusive boundary, if not ongoing

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Appointment.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
From the FHIR Standard
Appointment.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
From the FHIR Standard
Appointment.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Appointment.identifier:polarisId.userequiredPattern Value: official
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Appointment.identifier:polarisId.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
From the FHIR Standard
Appointment.identifier:rawCode.userequiredPattern Value: secondary
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Appointment.identifier:rawCode.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
From the FHIR Standard
Appointment.statusrequiredAppointmentStatus
http://hl7.org/fhir/ValueSet/appointmentstatus
From the FHIR Standard
Appointment.cancelationReasonexampleAppointmentCancellationReason
http://hl7.org/fhir/ValueSet/appointment-cancellation-reason
From the FHIR Standard
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
From the FHIR Standard
Appointment.serviceTypeexampleServiceType
http://hl7.org/fhir/ValueSet/service-type
From the FHIR Standard
Appointment.specialtypreferredPracticeSettingCodeValueSet
http://hl7.org/fhir/ValueSet/c80-practice-codes
From the FHIR Standard
Appointment.appointmentTypepreferredHl7VSAppointmentReasonCodes
http://terminology.hl7.org/ValueSet/v2-0276
Appointment.reasonCodepreferredEncounterReasonCodes
http://hl7.org/fhir/ValueSet/encounter-reason
From the FHIR Standard
Appointment.participant.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
From the FHIR Standard
Appointment.participant.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
From the FHIR Standard
Appointment.participant.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard
Appointment.participant:Location.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
From the FHIR Standard
Appointment.participant:Location.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
From the FHIR Standard
Appointment.participant:Location.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard
Appointment.participant:Patient.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
From the FHIR Standard
Appointment.participant:Patient.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
From the FHIR Standard
Appointment.participant:Patient.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard
Appointment.participant:PractitionerRole.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
From the FHIR Standard
Appointment.participant:PractitionerRole.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
From the FHIR Standard
Appointment.participant:PractitionerRole.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participant, Appointment.participant:Location, Appointment.participant:Patient, Appointment.participant:PractitionerRoleEither 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')
appointment-has-polaris-iderrorAppointmentMust have at least one identifier with a canonical Polaris system URI
: identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-appointment-identifier$'))
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

Mandatory: 9 elements(30 nested mandatory elements)
Must-Support: 28 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Appointment.identifier
  • The element 1 is sliced based on the value of Appointment.serviceCategory.coding
  • The element 1 is sliced based on the value of Appointment.serviceType.coding
  • The element 1 is sliced based on the value of Appointment.appointmentType.coding
  • The element 1 is sliced based on the value of Appointment.reasonCode.coding
  • The element 1 is sliced based on the value of Appointment.participant

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Appointment C 0..* Appointment Polaris Appointment Core
Constraints: app-2, app-3, app-4, appointment-has-polaris-id
... meta Σ 0..1 Meta Metadata about the resource
.... source SΣ 0..1 uri Identifies EMR instance & pipeline version the resource came from
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text S 0..1 Narrative Narrative
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... Slices for identifier SΣ 2..* Identifier Business identifier(s) for appointment
Slice: Unordered, Open by pattern:system
.... identifier:polarisId SΣ 1..1 Identifier Polaris Appointment ID
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Required Pattern: official
..... system Σ 1..1 uri Polaris appointment identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-appointment-identifier
Example General: http://www.acme.com/identifiers/patient
..... value Σ 1..1 string The actual Polaris appointment ID value: unique in source system
Example General: 123456
.... identifier:rawCode SΣ 1..* Identifier Source EMR appointment identifier
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Required Pattern: secondary
..... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-raw-code
Example General: http://www.acme.com/identifiers/patient
..... value Σ 1..1 string The value that is unique
Example General: 123456
... status ?!SΣ 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow
Binding: AppointmentStatus (required)
... serviceCategory SΣ 0..* CodeableConcept Service category with raw code support
Binding: ServiceCategory (example)
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard service category code
...... system Σ 1..1 uri Standard terminology system URI
...... code Σ 1..1 code Symbol in syntax defined by the system
..... coding:rawCode SΣ 1..* Coding Source EMR service category code
...... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicecategory-raw-code
...... code Σ 1..1 code EMR-specific service category code
...... display Σ 1..1 string EMR's display text for this category
... serviceType SΣ 0..* CodeableConcept Service type with raw code support
Binding: ServiceType (example)
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard service type code
...... system Σ 1..1 uri Standard terminology system URI
...... code Σ 1..1 code Symbol in syntax defined by the system
..... coding:rawCode SΣ 1..* Coding Source EMR service type code
...... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicetype-raw-code
...... code Σ 1..1 code EMR-specific service type code
...... display Σ 1..1 string EMR's display text for this type
... appointmentType SΣ 0..1 CodeableConcept Appointment type with raw code support
Binding: hl7VS-appointmentReasonCodes (preferred)
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard appointment type code
...... system Σ 1..1 uri Standard terminology system URI
...... code Σ 1..1 code Symbol in syntax defined by the system
..... coding:rawCode SΣ 1..* Coding Source EMR appointment type code
...... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-appointmenttype-raw-code
...... code Σ 1..1 code EMR-specific appointment type code
...... display Σ 1..1 string EMR's display text for this type
... reasonCode SΣ 0..* CodeableConcept Appointment reason with raw code support
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard reason code
...... system Σ 1..1 uri Standard terminology system URI
...... code Σ 1..1 code Symbol in syntax defined by the system
..... coding:rawCode SΣ 1..* Coding Source EMR reason code
...... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-reasoncode-raw-code
...... code Σ 1..1 code EMR-specific reason code
...... display Σ 1..1 string EMR's display text for this reason
... start SΣ 1..1 instant When appointment is to take place - Maps to A12_Last Visit Date
... slot S 0..* Reference(Polaris Slot (Minimal) Core) Slot(s) this appointment was booked into
... Slices for participant SC 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by profile:actor.resolve()
Constraints: app-1
.... participant:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:Location SC 1..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣ 1..1 Reference(Polaris Location Core) Person, Location/HealthcareService or Device
..... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:Patient SC 0..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣ 1..1 Reference(Polaris Patient Core) Person, Location/HealthcareService or Device
..... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
.... participant:PractitionerRole SC 0..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... actor SΣ 1..1 Reference(Polaris PractitionerRole Core) Person, Location/HealthcareService or Device
..... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
... requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within
.... start SΣC 0..1 dateTime Requested date/time for appointment

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Appointment.identifier:polarisId.userequiredPattern Value: official
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Appointment.identifier:rawCode.userequiredPattern Value: secondary
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Appointment.statusrequiredAppointmentStatus
http://hl7.org/fhir/ValueSet/appointmentstatus
From the FHIR Standard
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
From the FHIR Standard
Appointment.serviceTypeexampleServiceType
http://hl7.org/fhir/ValueSet/service-type
From the FHIR Standard
Appointment.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:Location.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard
Appointment.participant:Patient.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard
Appointment.participant:PractitionerRole.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participant, Appointment.participant:Location, Appointment.participant:Patient, Appointment.participant:PractitionerRoleEither 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')
appointment-has-polaris-iderrorAppointmentMust have at least one identifier with a canonical Polaris system URI
: identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-appointment-identifier$'))
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 & Constraints    Filter: Filtersdoco
.. Appointment C 0..* Appointment Polaris Appointment Core
Constraints: appointment-has-polaris-id
... meta
.... source S 0..1 uri Identifies EMR instance & pipeline version the resource came from
... text S 0..1 Narrative Narrative
... Slices for identifier S 2..* Identifier Business identifier(s) for appointment
Slice: Unordered, Open by pattern:system
.... identifier:polarisId S 1..1 Identifier Polaris Appointment ID
..... use 0..1 code usual | official | temp | secondary | old (If known)
Required Pattern: official
..... system 1..1 uri Polaris appointment identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-appointment-identifier
..... value 1..1 string The actual Polaris appointment ID value: unique in source system
.... identifier:rawCode S 1..* Identifier Source EMR appointment identifier
..... use 0..1 code usual | official | temp | secondary | old (If known)
Required Pattern: secondary
..... system 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-raw-code
..... value 1..1 string The value that is unique
... serviceCategory S 0..* CodeableConcept Service category with raw code support
.... Slices for coding 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard S 0..* Coding Standard service category code
...... system 1..1 uri Standard terminology system URI
...... code 1..1 code Symbol in syntax defined by the system
..... coding:rawCode S 1..* Coding Source EMR service category code
...... system 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicecategory-raw-code
...... code 1..1 code EMR-specific service category code
...... display 1..1 string EMR's display text for this category
... serviceType S 0..* CodeableConcept Service type with raw code support
.... Slices for coding 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard S 0..* Coding Standard service type code
...... system 1..1 uri Standard terminology system URI
...... code 1..1 code Symbol in syntax defined by the system
..... coding:rawCode S 1..* Coding Source EMR service type code
...... system 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicetype-raw-code
...... code 1..1 code EMR-specific service type code
...... display 1..1 string EMR's display text for this type
... appointmentType S 0..1 CodeableConcept Appointment type with raw code support
.... Slices for coding 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard S 0..* Coding Standard appointment type code
...... system 1..1 uri Standard terminology system URI
...... code 1..1 code Symbol in syntax defined by the system
..... coding:rawCode S 1..* Coding Source EMR appointment type code
...... system 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-appointmenttype-raw-code
...... code 1..1 code EMR-specific appointment type code
...... display 1..1 string EMR's display text for this type
... reasonCode S 0..* CodeableConcept Appointment reason with raw code support
.... Slices for coding 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard S 0..* Coding Standard reason code
...... system 1..1 uri Standard terminology system URI
...... code 1..1 code Symbol in syntax defined by the system
..... coding:rawCode S 1..* Coding Source EMR reason code
...... system 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-reasoncode-raw-code
...... code 1..1 code EMR-specific reason code
...... display 1..1 string EMR's display text for this reason
... start S 1..1 instant When appointment is to take place - Maps to A12_Last Visit Date
... slot S 0..* Reference(Polaris Slot (Minimal) Core) Slot(s) this appointment was booked into
... Slices for participant S 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by profile:actor.resolve()
.... participant:Location S 1..1 BackboneElement Participants involved in appointment
..... actor S 1..1 Reference(Polaris Location Core) Person, Location/HealthcareService or Device
.... participant:Patient S 0..1 BackboneElement Participants involved in appointment
..... actor S 1..1 Reference(Polaris Patient Core) Person, Location/HealthcareService or Device
.... participant:PractitionerRole S 0..1 BackboneElement Participants involved in appointment
..... actor S 1..1 Reference(Polaris PractitionerRole Core) Person, Location/HealthcareService or Device
... requestedPeriod
.... start S 0..1 dateTime Requested date/time for appointment

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Appointment.statusrequiredAppointmentStatus
http://hl7.org/fhir/ValueSet/appointmentstatus
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
appointment-has-polaris-iderrorAppointmentMust have at least one identifier with a canonical Polaris system URI
: identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-appointment-identifier$'))

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Appointment C 0..* Appointment Polaris Appointment Core
Constraints: app-2, app-3, app-4, appointment-has-polaris-id
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated Σ 0..1 instant When the resource version last changed
.... source SΣ 0..1 uri Identifies EMR instance & pipeline version the resource came from
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... 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 S 0..1 Narrative Narrative
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier SΣ 2..* Identifier Business identifier(s) for appointment
Slice: Unordered, Open by pattern:system
.... identifier:polarisId SΣ 1..1 Identifier Polaris Appointment ID
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Required Pattern: official
..... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
..... system Σ 1..1 uri Polaris appointment identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-appointment-identifier
Example General: http://www.acme.com/identifiers/patient
..... value Σ 1..1 string The actual Polaris appointment ID value: unique in source system
Example General: 123456
..... period Σ 0..1 Period Time period when id is/was valid for use
..... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
.... identifier:rawCode SΣ 1..* Identifier Source EMR appointment identifier
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Required Pattern: secondary
..... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
..... system Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-raw-code
Example General: http://www.acme.com/identifiers/patient
..... value Σ 1..1 string The value that is unique
Example General: 123456
..... period Σ 0..1 Period Time period when id is/was valid for use
..... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... status ?!SΣ 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow
Binding: AppointmentStatus (required)
... cancelationReason Σ 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason (example)
... serviceCategory SΣ 0..* CodeableConcept Service category with raw code support
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
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard service category code
...... 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 Σ 1..1 uri Standard terminology system URI
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..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
..... coding:rawCode SΣ 1..* Coding Source EMR service category code
...... 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 Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicecategory-raw-code
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..1 code EMR-specific service category code
...... display Σ 1..1 string EMR's display text for this category
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... serviceType SΣ 0..* CodeableConcept Service type with raw code support
Binding: ServiceType (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
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard service type code
...... 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 Σ 1..1 uri Standard terminology system URI
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..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
..... coding:rawCode SΣ 1..* Coding Source EMR service type code
...... 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 Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-servicetype-raw-code
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..1 code EMR-specific service type code
...... display Σ 1..1 string EMR's display text for this type
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... specialty Σ 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
... appointmentType SΣ 0..1 CodeableConcept Appointment type with raw code support
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
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard appointment type code
...... 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 Σ 1..1 uri Standard terminology system URI
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..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
..... coding:rawCode SΣ 1..* Coding Source EMR appointment type code
...... 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 Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-appointmenttype-raw-code
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..1 code EMR-specific appointment type code
...... display Σ 1..1 string EMR's display text for this type
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... reasonCode SΣ 0..* CodeableConcept Appointment reason with raw code support
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by pattern:system
..... coding:standard SΣ 0..* Coding Standard reason code
...... 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 Σ 1..1 uri Standard terminology system URI
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..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
..... coding:rawCode SΣ 1..* Coding Source EMR reason code
...... 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 Σ 1..1 uri Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-appointment-reasoncode-raw-code
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..1 code EMR-specific reason code
...... display Σ 1..1 string EMR's display text for this reason
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... 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Σ 1..1 instant When appointment is to take place - Maps to A12_Last Visit Date
... end Σ 0..1 instant When appointment is to conclude
... minutesDuration 0..1 positiveInt Can be less than start/end (e.g. estimate)
... slot S 0..* Reference(Polaris Slot (Minimal) Core) Slot(s) this appointment was booked into
... 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 0..* Reference(ServiceRequest) The service request this appointment is allocated to assess
... Slices for participant SC 1..* BackboneElement Participants involved in appointment
Slice: Unordered, Open by profile:actor.resolve()
Constraints: app-1
.... 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:Location SC 1..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... 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Σ 1..1 Reference(Polaris Location Core) 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:Patient SC 0..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... 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Σ 1..1 Reference(Polaris Patient Core) 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:PractitionerRole SC 0..1 BackboneElement Participants involved in appointment
Constraints: app-1
..... 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Σ 1..1 Reference(Polaris PractitionerRole Core) 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
... requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... start SΣC 0..1 dateTime Requested date/time for appointment
.... end ΣC 0..1 dateTime End time with inclusive boundary, if not ongoing

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Appointment.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
From the FHIR Standard
Appointment.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
From the FHIR Standard
Appointment.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Appointment.identifier:polarisId.userequiredPattern Value: official
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Appointment.identifier:polarisId.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
From the FHIR Standard
Appointment.identifier:rawCode.userequiredPattern Value: secondary
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Appointment.identifier:rawCode.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
From the FHIR Standard
Appointment.statusrequiredAppointmentStatus
http://hl7.org/fhir/ValueSet/appointmentstatus
From the FHIR Standard
Appointment.cancelationReasonexampleAppointmentCancellationReason
http://hl7.org/fhir/ValueSet/appointment-cancellation-reason
From the FHIR Standard
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
From the FHIR Standard
Appointment.serviceTypeexampleServiceType
http://hl7.org/fhir/ValueSet/service-type
From the FHIR Standard
Appointment.specialtypreferredPracticeSettingCodeValueSet
http://hl7.org/fhir/ValueSet/c80-practice-codes
From the FHIR Standard
Appointment.appointmentTypepreferredHl7VSAppointmentReasonCodes
http://terminology.hl7.org/ValueSet/v2-0276
Appointment.reasonCodepreferredEncounterReasonCodes
http://hl7.org/fhir/ValueSet/encounter-reason
From the FHIR Standard
Appointment.participant.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
From the FHIR Standard
Appointment.participant.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
From the FHIR Standard
Appointment.participant.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard
Appointment.participant:Location.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
From the FHIR Standard
Appointment.participant:Location.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
From the FHIR Standard
Appointment.participant:Location.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard
Appointment.participant:Patient.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
From the FHIR Standard
Appointment.participant:Patient.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
From the FHIR Standard
Appointment.participant:Patient.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard
Appointment.participant:PractitionerRole.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
From the FHIR Standard
Appointment.participant:PractitionerRole.requiredrequiredParticipantRequired
http://hl7.org/fhir/ValueSet/participantrequired|4.0.1
From the FHIR Standard
Appointment.participant:PractitionerRole.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|4.0.1
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participant, Appointment.participant:Location, Appointment.participant:Patient, Appointment.participant:PractitionerRoleEither 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')
appointment-has-polaris-iderrorAppointmentMust have at least one identifier with a canonical Polaris system URI
: identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-appointment-identifier$'))
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

Mandatory: 9 elements(30 nested mandatory elements)
Must-Support: 28 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Appointment.identifier
  • The element 1 is sliced based on the value of Appointment.serviceCategory.coding
  • The element 1 is sliced based on the value of Appointment.serviceType.coding
  • The element 1 is sliced based on the value of Appointment.appointmentType.coding
  • The element 1 is sliced based on the value of Appointment.reasonCode.coding
  • The element 1 is sliced based on the value of Appointment.participant

 

Other representations of profile: CSV, Excel, Schematron