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
| Official URL: https://fhir.apps.health/StructureDefinition/polaris-core-slot | Version: 1.10.0 | |||
| Draft as of 2026-05-26 | Computable Name: PolarisCoreSlot | |||
Minimal Polaris profile for Slot resources — an individual bookable time window owned by a Schedule. Slots are materialised from recurring templates (Phase 1: OscarPro scheduletemplate rows) into concrete date+time instances. Booking clients select a free Slot, create an Appointment referencing it, and the booking system transitions the Slot's status.
The Polaris Core Slot profile represents an individual bookable time window on a Schedule. Each Slot has concrete start/end instants and a status (free / busy / busy-tentative / busy-unavailable / entered-in-error). Booking clients discover free Slots, present them to the user, and create an Appointment referencing the chosen Slot via Appointment.slot.
In Phase 1, Slots are materialised from OscarPro scheduletemplate rows by the Oscar-side converter — one Slot per non-_ character of the timecode string per scheduled date.
Slot.status — writer ownershipThe IG does NOT constrain who writes Slot.status or when. This is intentional: in a real booking system at least three actors update slot state:
| Actor | Writes |
|---|---|
| Oscar-side converter | free (default) or busy (when an appointment row overlaps the slot window) or busy-unavailable (when ScheduleDate.available != '1' indicates a within-day blockout) |
| Booking system | busy-tentative during a hold flow, then transitions to busy on confirm or back to free on hold timeout |
| Reconciliation jobs | May downgrade busy-tentative → free after hold timeouts |
The converter NEVER writes busy-tentative. That value is the booking system's exclusively.
If race conditions surface in production (two writers updating the same slot concurrently), the IG-level mitigation is for the booking system to use If-Match for optimistic concurrency. That requirement is not currently enforced at the profile level.
Slots are derived from templates, not stored as first-class records in OscarPro. To support cache stability and re-emission idempotency, Slot IDs are deterministic:
Slot.id = <provider_no>-<yyyyMMdd>-<slot-index> (e.g. 42-20260601-36)
Slot.identifier[polarisId].value is the same value. Re-running the converter for the same (provider, date) produces identical Slot resources — safe to cache by reference.
'_' no-slot conventionIn OscarPro's timecode string, an underscore character ('_') indicates "no slot at this index" — the clinic is not bookable during that time window. The Oscar converter skips these characters entirely (no Slot resource is emitted). So a clinic that's only open 8 AM–5 PM has '_' characters for the rest of the 24-hour grid; consumers see no Slots outside business hours rather than a stream of busy-unavailable Slots.
overbookedSlot.overbooked is set by the booking system when more than one Appointment is booked into the same slot window (e.g. a walk-in is squeezed in over a held slot). Informational only — the IG does not enforce a maximum or define cardinality semantics. Default is unset (treated as false).
Holidays produce no Slots. Per Phase 1's converter migration spec, when a date appears in OscarPro's scheduleholiday table, the converter emits no Slots for that day — the absence of Slots is the signal that the clinic isn't bookable. This is preferred over emitting busy-unavailable Slots for every grid position on a holiday (which would create dozens of phantom resources).
Within-day blockouts (ScheduleDate.available != '1') DO produce Slots with status = busy-unavailable and the ScheduleDate.reason text carried in Slot.comment.
Typical end-to-end flow (informational; not normative):
GET Schedule?actor=PractitionerRole/<id>&active=true — find the provider's calendarGET Slot?schedule=Schedule/<id>&status=free&start=ge2026-06-01 — fetch free slotsSlot.status = busy-tentativePOSTs an Appointment with .slot[] = [Slot/<id>], then PATCHes Slot.status = busybusy-tentative slot and PATCHes back to freeThe Oscar-side converter is uninvolved past step 1's data — it only emits the initial free/busy state from the appointment-overlay logic.
scheduletemplate + scheduletemplatecodeThe Oscar-side converter (see docs/guide/features/scheduling/converter-contracts.md) derives Slot fields from:
Slot.start / Slot.end — from the timecode position and (24h × 60min) / timecode.length() per-slot durationSlot.serviceType.coding[rawCode] — from the scheduletemplatecode lookup (single-char code + description). 0..* cardinality (not 1..*) because the OscarPro converter tolerates lookup misses and emits Slots without the rawCode mapping when no matching code exists.Slot.appointmentType — also from scheduletemplatecode if availableSlot.status — free by default; busy if the appointment table has a row overlapping [start, end); busy-unavailable if ScheduleDate.available != '1'Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Slot | Polaris Slot Core Constraints: slot-has-polaris-id |
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource |
![]() ![]() ![]() |
SΣ | 0..1 | uri | Identifies EMR instance & pipeline version the resource came from |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
S | 0..1 | Narrative | Narrative This profile does not constrain the narrative in regard to content, language, or traceability to data elements |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
SΣ | 1..* | Identifier | Business identifier(s) for slot Slice: Unordered, Open by pattern:system |
![]() ![]() ![]() |
SΣ | 1..1 | Identifier | Polaris Slot ID |
![]() ![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Polaris slot identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-slot-identifier Example General: http://www.acme.com/identifiers/patient |
![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Deterministic per-(provider, date, index) value — re-emission produces same ID Example General: 123456 |
![]() ![]() ![]() |
SΣ | 0..* | Identifier | Source EMR slot identifier |
![]() ![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: secondary |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-raw-code Example General: http://www.acme.com/identifiers/patient |
![]() ![]() ![]() ![]() |
Σ | 1..1 | string | The value that is unique Example General: 123456 |
![]() ![]() |
SΣ | 0..* | CodeableConcept | Service category with raw code support Binding: ServiceCategory (example) |
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard service category code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR service category code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system |
![]() ![]() |
SΣ | 0..* | CodeableConcept | Service type with raw code support Binding: ServiceType (example) |
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard service type code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR service type code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-servicetype-raw-code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system |
![]() ![]() |
SΣ | 0..1 | CodeableConcept | Appointment type that fits this slot Binding: hl7VS-appointmentReasonCodes (preferred) |
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard appointment type code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR appointment type code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system |
![]() ![]() |
SΣ | 1..1 | Reference(Polaris Schedule (Minimal) Core) | The Schedule this Slot belongs to |
![]() ![]() |
SΣ | 1..1 | code | busy | free | busy-unavailable | busy-tentative | entered-in-error Binding: SlotStatus (required) |
![]() ![]() |
SΣ | 1..1 | instant | Slot start instant (UTC with offset) |
![]() ![]() |
SΣ | 1..1 | instant | Slot end instant (UTC with offset) |
![]() ![]() |
S | 0..1 | boolean | Whether the slot is intentionally overbooked |
![]() ![]() |
S | 0..1 | string | Free-text notes about the slot (e.g. blockout reason) |
Documentation for this format | ||||
| Path | Conformance | ValueSet / Code | URI |
| Slot.identifier:polarisId.use | required | Pattern Value: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1From the FHIR Standard | |
| Slot.identifier:rawCode.use | required | Pattern Value: secondaryhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1From the FHIR Standard | |
| Slot.serviceCategory | example | ServiceCategoryhttp://hl7.org/fhir/ValueSet/service-categoryFrom the FHIR Standard | |
| Slot.serviceType | example | ServiceTypehttp://hl7.org/fhir/ValueSet/service-typeFrom the FHIR Standard | |
| Slot.appointmentType | preferred | Hl7VSAppointmentReasonCodeshttp://terminology.hl7.org/ValueSet/v2-0276 | |
| Slot.status | required | SlotStatushttp://hl7.org/fhir/ValueSet/slotstatusFrom the FHIR Standard |
| Id | Grade | Path(s) | Details | Requirements |
| dom-2 | error | Slot | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
| dom-3 | error | Slot | 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 | Slot | 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 | Slot | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
| dom-6 | best practice | Slot | 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() | |
| slot-has-polaris-id | error | Slot | Must have at least one identifier with a canonical Polaris system URI : identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-slot-identifier$')) |
This structure is derived from Slot
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Slot | Polaris Slot Core Constraints: slot-has-polaris-id |
![]() ![]() |
||||
![]() ![]() ![]() |
S | 0..1 | uri | Identifies EMR instance & pipeline version the resource came from |
![]() ![]() |
S | 0..1 | Narrative | Narrative |
![]() ![]() |
S | 1..* | Identifier | Business identifier(s) for slot Slice: Unordered, Open by pattern:system |
![]() ![]() ![]() |
S | 1..1 | Identifier | Polaris Slot ID |
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Required Pattern: official | |
![]() ![]() ![]() ![]() |
1..1 | uri | Polaris slot identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-slot-identifier | |
![]() ![]() ![]() ![]() |
1..1 | string | Deterministic per-(provider, date, index) value — re-emission produces same ID | |
![]() ![]() ![]() |
S | 0..* | Identifier | Source EMR slot identifier |
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Required Pattern: secondary | |
![]() ![]() ![]() ![]() |
1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-raw-code | |
![]() ![]() ![]() ![]() |
1..1 | string | The value that is unique | |
![]() ![]() |
S | 0..* | CodeableConcept | Service category with raw code support |
![]() ![]() ![]() |
0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Standard service category code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Source EMR service category code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | string | Representation defined by the system | |
![]() ![]() |
S | 0..* | CodeableConcept | Service type with raw code support |
![]() ![]() ![]() |
0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Standard service type code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Source EMR service type code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-servicetype-raw-code | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | string | Representation defined by the system | |
![]() ![]() |
S | 0..1 | CodeableConcept | Appointment type that fits this slot |
![]() ![]() ![]() |
0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Standard appointment type code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Source EMR appointment type code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | string | Representation defined by the system | |
![]() ![]() |
S | 1..1 | Reference(Polaris Schedule (Minimal) Core) | The Schedule this Slot belongs to |
![]() ![]() |
S | 1..1 | code | busy | free | busy-unavailable | busy-tentative | entered-in-error Binding: SlotStatus (required) |
![]() ![]() |
S | 1..1 | instant | Slot start instant (UTC with offset) |
![]() ![]() |
S | 1..1 | instant | Slot end instant (UTC with offset) |
![]() ![]() |
S | 0..1 | boolean | Whether the slot is intentionally overbooked |
![]() ![]() |
S | 0..1 | string | Free-text notes about the slot (e.g. blockout reason) |
Documentation for this format | ||||
| Path | Conformance | ValueSet | URI |
| Slot.status | required | SlotStatushttp://hl7.org/fhir/ValueSet/slotstatusFrom the FHIR Standard |
| Id | Grade | Path(s) | Details | Requirements |
| slot-has-polaris-id | error | Slot | Must have at least one identifier with a canonical Polaris system URI : identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-slot-identifier$')) |
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Slot | Polaris Slot Core Constraints: slot-has-polaris-id | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..1 | id | Version specific identifier | ||||
![]() ![]() ![]() |
Σ | 0..1 | instant | When the resource version last changed | ||||
![]() ![]() ![]() |
SΣ | 0..1 | uri | Identifies EMR instance & pipeline version the resource came from | ||||
![]() ![]() ![]() |
Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to | ||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Security Labels applied to this resource Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | ||||
![]() ![]() ![]() |
Σ | 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". | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
S | 0..1 | Narrative | Narrative This profile does not constrain the narrative in regard to content, language, or traceability to data elements | ||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
SΣ | 1..* | Identifier | Business identifier(s) for slot Slice: Unordered, Open by pattern:system | ||||
![]() ![]() ![]() |
SΣ | 1..1 | Identifier | Polaris Slot ID | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official | ||||
![]() ![]() ![]() ![]() |
Σ | 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. | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Polaris slot identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-slot-identifier Example General: http://www.acme.com/identifiers/patient | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Deterministic per-(provider, date, index) value — re-emission produces same ID Example General: 123456 | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() ![]() |
SΣ | 0..* | Identifier | Source EMR slot identifier | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: secondary | ||||
![]() ![]() ![]() ![]() |
Σ | 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. | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-raw-code Example General: http://www.acme.com/identifiers/patient | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | string | The value that is unique Example General: 123456 | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() |
SΣ | 0..* | CodeableConcept | Service category with raw code support Binding: ServiceCategory (example) | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard service category code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR service category code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() |
SΣ | 0..* | CodeableConcept | Service type with raw code support Binding: ServiceType (example) | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard service type code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR service type code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-servicetype-raw-code | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | The specialty of a practitioner that would be required to perform the service requested in this appointment Binding: PracticeSettingCodeValueSet (preferred): Additional details about where the content was created (e.g. clinical specialty). | ||||
![]() ![]() |
SΣ | 0..1 | CodeableConcept | Appointment type that fits this slot Binding: hl7VS-appointmentReasonCodes (preferred) | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard appointment type code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR appointment type code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() |
SΣ | 1..1 | Reference(Polaris Schedule (Minimal) Core) | The Schedule this Slot belongs to | ||||
![]() ![]() |
SΣ | 1..1 | code | busy | free | busy-unavailable | busy-tentative | entered-in-error Binding: SlotStatus (required) | ||||
![]() ![]() |
SΣ | 1..1 | instant | Slot start instant (UTC with offset) | ||||
![]() ![]() |
SΣ | 1..1 | instant | Slot end instant (UTC with offset) | ||||
![]() ![]() |
S | 0..1 | boolean | Whether the slot is intentionally overbooked | ||||
![]() ![]() |
S | 0..1 | string | Free-text notes about the slot (e.g. blockout reason) | ||||
Documentation for this format | ||||||||
| Path | Conformance | ValueSet / Code | URI | |||
| Slot.meta.security | extensible | All Security Labelshttp://hl7.org/fhir/ValueSet/security-labelsFrom the FHIR Standard | ||||
| Slot.meta.tag | example | CommonTagshttp://hl7.org/fhir/ValueSet/common-tagsFrom the FHIR Standard | ||||
| Slot.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languagesFrom the FHIR Standard
| ||||
| Slot.identifier:polarisId.use | required | Pattern Value: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1From the FHIR Standard | ||||
| Slot.identifier:polarisId.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-typeFrom the FHIR Standard | ||||
| Slot.identifier:rawCode.use | required | Pattern Value: secondaryhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1From the FHIR Standard | ||||
| Slot.identifier:rawCode.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-typeFrom the FHIR Standard | ||||
| Slot.serviceCategory | example | ServiceCategoryhttp://hl7.org/fhir/ValueSet/service-categoryFrom the FHIR Standard | ||||
| Slot.serviceType | example | ServiceTypehttp://hl7.org/fhir/ValueSet/service-typeFrom the FHIR Standard | ||||
| Slot.specialty | preferred | PracticeSettingCodeValueSethttp://hl7.org/fhir/ValueSet/c80-practice-codesFrom the FHIR Standard | ||||
| Slot.appointmentType | preferred | Hl7VSAppointmentReasonCodeshttp://terminology.hl7.org/ValueSet/v2-0276 | ||||
| Slot.status | required | SlotStatushttp://hl7.org/fhir/ValueSet/slotstatusFrom the FHIR Standard |
| Id | Grade | Path(s) | Details | Requirements |
| dom-2 | error | Slot | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
| dom-3 | error | Slot | 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 | Slot | 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 | Slot | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
| dom-6 | best practice | Slot | 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() | |
| slot-has-polaris-id | error | Slot | Must have at least one identifier with a canonical Polaris system URI : identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-slot-identifier$')) |
This structure is derived from Slot
Summary
Mandatory: 4 elements(17 nested mandatory elements)
Must-Support: 20 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Slot | Polaris Slot Core Constraints: slot-has-polaris-id |
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource |
![]() ![]() ![]() |
SΣ | 0..1 | uri | Identifies EMR instance & pipeline version the resource came from |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
S | 0..1 | Narrative | Narrative This profile does not constrain the narrative in regard to content, language, or traceability to data elements |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
SΣ | 1..* | Identifier | Business identifier(s) for slot Slice: Unordered, Open by pattern:system |
![]() ![]() ![]() |
SΣ | 1..1 | Identifier | Polaris Slot ID |
![]() ![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Polaris slot identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-slot-identifier Example General: http://www.acme.com/identifiers/patient |
![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Deterministic per-(provider, date, index) value — re-emission produces same ID Example General: 123456 |
![]() ![]() ![]() |
SΣ | 0..* | Identifier | Source EMR slot identifier |
![]() ![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: secondary |
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-raw-code Example General: http://www.acme.com/identifiers/patient |
![]() ![]() ![]() ![]() |
Σ | 1..1 | string | The value that is unique Example General: 123456 |
![]() ![]() |
SΣ | 0..* | CodeableConcept | Service category with raw code support Binding: ServiceCategory (example) |
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard service category code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR service category code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system |
![]() ![]() |
SΣ | 0..* | CodeableConcept | Service type with raw code support Binding: ServiceType (example) |
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard service type code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR service type code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-servicetype-raw-code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system |
![]() ![]() |
SΣ | 0..1 | CodeableConcept | Appointment type that fits this slot Binding: hl7VS-appointmentReasonCodes (preferred) |
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard appointment type code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR appointment type code |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system |
![]() ![]() |
SΣ | 1..1 | Reference(Polaris Schedule (Minimal) Core) | The Schedule this Slot belongs to |
![]() ![]() |
SΣ | 1..1 | code | busy | free | busy-unavailable | busy-tentative | entered-in-error Binding: SlotStatus (required) |
![]() ![]() |
SΣ | 1..1 | instant | Slot start instant (UTC with offset) |
![]() ![]() |
SΣ | 1..1 | instant | Slot end instant (UTC with offset) |
![]() ![]() |
S | 0..1 | boolean | Whether the slot is intentionally overbooked |
![]() ![]() |
S | 0..1 | string | Free-text notes about the slot (e.g. blockout reason) |
Documentation for this format | ||||
| Path | Conformance | ValueSet / Code | URI |
| Slot.identifier:polarisId.use | required | Pattern Value: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1From the FHIR Standard | |
| Slot.identifier:rawCode.use | required | Pattern Value: secondaryhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1From the FHIR Standard | |
| Slot.serviceCategory | example | ServiceCategoryhttp://hl7.org/fhir/ValueSet/service-categoryFrom the FHIR Standard | |
| Slot.serviceType | example | ServiceTypehttp://hl7.org/fhir/ValueSet/service-typeFrom the FHIR Standard | |
| Slot.appointmentType | preferred | Hl7VSAppointmentReasonCodeshttp://terminology.hl7.org/ValueSet/v2-0276 | |
| Slot.status | required | SlotStatushttp://hl7.org/fhir/ValueSet/slotstatusFrom the FHIR Standard |
| Id | Grade | Path(s) | Details | Requirements |
| dom-2 | error | Slot | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
| dom-3 | error | Slot | 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 | Slot | 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 | Slot | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
| dom-6 | best practice | Slot | 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() | |
| slot-has-polaris-id | error | Slot | Must have at least one identifier with a canonical Polaris system URI : identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-slot-identifier$')) |
Differential View
This structure is derived from Slot
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Slot | Polaris Slot Core Constraints: slot-has-polaris-id |
![]() ![]() |
||||
![]() ![]() ![]() |
S | 0..1 | uri | Identifies EMR instance & pipeline version the resource came from |
![]() ![]() |
S | 0..1 | Narrative | Narrative |
![]() ![]() |
S | 1..* | Identifier | Business identifier(s) for slot Slice: Unordered, Open by pattern:system |
![]() ![]() ![]() |
S | 1..1 | Identifier | Polaris Slot ID |
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Required Pattern: official | |
![]() ![]() ![]() ![]() |
1..1 | uri | Polaris slot identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-slot-identifier | |
![]() ![]() ![]() ![]() |
1..1 | string | Deterministic per-(provider, date, index) value — re-emission produces same ID | |
![]() ![]() ![]() |
S | 0..* | Identifier | Source EMR slot identifier |
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Required Pattern: secondary | |
![]() ![]() ![]() ![]() |
1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-raw-code | |
![]() ![]() ![]() ![]() |
1..1 | string | The value that is unique | |
![]() ![]() |
S | 0..* | CodeableConcept | Service category with raw code support |
![]() ![]() ![]() |
0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Standard service category code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Source EMR service category code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | string | Representation defined by the system | |
![]() ![]() |
S | 0..* | CodeableConcept | Service type with raw code support |
![]() ![]() ![]() |
0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Standard service type code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Source EMR service type code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-servicetype-raw-code | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | string | Representation defined by the system | |
![]() ![]() |
S | 0..1 | CodeableConcept | Appointment type that fits this slot |
![]() ![]() ![]() |
0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Standard appointment type code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | Source EMR appointment type code |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() ![]() ![]() ![]() |
1..1 | string | Representation defined by the system | |
![]() ![]() |
S | 1..1 | Reference(Polaris Schedule (Minimal) Core) | The Schedule this Slot belongs to |
![]() ![]() |
S | 1..1 | code | busy | free | busy-unavailable | busy-tentative | entered-in-error Binding: SlotStatus (required) |
![]() ![]() |
S | 1..1 | instant | Slot start instant (UTC with offset) |
![]() ![]() |
S | 1..1 | instant | Slot end instant (UTC with offset) |
![]() ![]() |
S | 0..1 | boolean | Whether the slot is intentionally overbooked |
![]() ![]() |
S | 0..1 | string | Free-text notes about the slot (e.g. blockout reason) |
Documentation for this format | ||||
| Path | Conformance | ValueSet | URI |
| Slot.status | required | SlotStatushttp://hl7.org/fhir/ValueSet/slotstatusFrom the FHIR Standard |
| Id | Grade | Path(s) | Details | Requirements |
| slot-has-polaris-id | error | Slot | Must have at least one identifier with a canonical Polaris system URI : identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-slot-identifier$')) |
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Slot | Polaris Slot Core Constraints: slot-has-polaris-id | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..1 | id | Version specific identifier | ||||
![]() ![]() ![]() |
Σ | 0..1 | instant | When the resource version last changed | ||||
![]() ![]() ![]() |
SΣ | 0..1 | uri | Identifies EMR instance & pipeline version the resource came from | ||||
![]() ![]() ![]() |
Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to | ||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Security Labels applied to this resource Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | ||||
![]() ![]() ![]() |
Σ | 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". | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
S | 0..1 | Narrative | Narrative This profile does not constrain the narrative in regard to content, language, or traceability to data elements | ||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
SΣ | 1..* | Identifier | Business identifier(s) for slot Slice: Unordered, Open by pattern:system | ||||
![]() ![]() ![]() |
SΣ | 1..1 | Identifier | Polaris Slot ID | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official | ||||
![]() ![]() ![]() ![]() |
Σ | 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. | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Polaris slot identifier system: https://fhir.apps.health/NamingSystem/<instance-id>-slot-identifier Example General: http://www.acme.com/identifiers/patient | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Deterministic per-(provider, date, index) value — re-emission produces same ID Example General: 123456 | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() ![]() |
SΣ | 0..* | Identifier | Source EMR slot identifier | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: secondary | ||||
![]() ![]() ![]() ![]() |
Σ | 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. | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-raw-code Example General: http://www.acme.com/identifiers/patient | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | string | The value that is unique Example General: 123456 | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() |
SΣ | 0..* | CodeableConcept | Service category with raw code support Binding: ServiceCategory (example) | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard service category code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR service category code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() |
SΣ | 0..* | CodeableConcept | Service type with raw code support Binding: ServiceType (example) | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard service type code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR service type code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Source system URI or https://fhir.apps.health/NamingSystem/<instance-id>-slot-servicetype-raw-code | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | The specialty of a practitioner that would be required to perform the service requested in this appointment Binding: PracticeSettingCodeValueSet (preferred): Additional details about where the content was created (e.g. clinical specialty). | ||||
![]() ![]() |
SΣ | 0..1 | CodeableConcept | Appointment type that fits this slot Binding: hl7VS-appointmentReasonCodes (preferred) | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by pattern:system | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Standard appointment type code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | Source EMR appointment type code | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() |
SΣ | 1..1 | Reference(Polaris Schedule (Minimal) Core) | The Schedule this Slot belongs to | ||||
![]() ![]() |
SΣ | 1..1 | code | busy | free | busy-unavailable | busy-tentative | entered-in-error Binding: SlotStatus (required) | ||||
![]() ![]() |
SΣ | 1..1 | instant | Slot start instant (UTC with offset) | ||||
![]() ![]() |
SΣ | 1..1 | instant | Slot end instant (UTC with offset) | ||||
![]() ![]() |
S | 0..1 | boolean | Whether the slot is intentionally overbooked | ||||
![]() ![]() |
S | 0..1 | string | Free-text notes about the slot (e.g. blockout reason) | ||||
Documentation for this format | ||||||||
| Path | Conformance | ValueSet / Code | URI | |||
| Slot.meta.security | extensible | All Security Labelshttp://hl7.org/fhir/ValueSet/security-labelsFrom the FHIR Standard | ||||
| Slot.meta.tag | example | CommonTagshttp://hl7.org/fhir/ValueSet/common-tagsFrom the FHIR Standard | ||||
| Slot.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languagesFrom the FHIR Standard
| ||||
| Slot.identifier:polarisId.use | required | Pattern Value: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1From the FHIR Standard | ||||
| Slot.identifier:polarisId.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-typeFrom the FHIR Standard | ||||
| Slot.identifier:rawCode.use | required | Pattern Value: secondaryhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1From the FHIR Standard | ||||
| Slot.identifier:rawCode.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-typeFrom the FHIR Standard | ||||
| Slot.serviceCategory | example | ServiceCategoryhttp://hl7.org/fhir/ValueSet/service-categoryFrom the FHIR Standard | ||||
| Slot.serviceType | example | ServiceTypehttp://hl7.org/fhir/ValueSet/service-typeFrom the FHIR Standard | ||||
| Slot.specialty | preferred | PracticeSettingCodeValueSethttp://hl7.org/fhir/ValueSet/c80-practice-codesFrom the FHIR Standard | ||||
| Slot.appointmentType | preferred | Hl7VSAppointmentReasonCodeshttp://terminology.hl7.org/ValueSet/v2-0276 | ||||
| Slot.status | required | SlotStatushttp://hl7.org/fhir/ValueSet/slotstatusFrom the FHIR Standard |
| Id | Grade | Path(s) | Details | Requirements |
| dom-2 | error | Slot | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
| dom-3 | error | Slot | 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 | Slot | 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 | Slot | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
| dom-6 | best practice | Slot | 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() | |
| slot-has-polaris-id | error | Slot | Must have at least one identifier with a canonical Polaris system URI : identifier.exists(system.matches('^https://fhir.apps.health/NamingSystem/[A-Za-z0-9._-]+-slot-identifier$')) |
This structure is derived from Slot
Summary
Mandatory: 4 elements(17 nested mandatory elements)
Must-Support: 20 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron