DIPS Core Implementation Guide
0.1.0 - ci-build Norway

DIPS Core Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: SelfBookingSlot

Official URL: http://dips.no/fhir/R4/StructureDefinition/SelfBookingSlot Version: 0.1.0
Draft as of 2026-09-03 Computable Name: SelfBookingSlot

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
.. Slot 0..* Slot A slot of time on a schedule that may be available for booking appointments
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... schedule Σ 1..1 Reference(DIPSAppointmentSchedule) DIPS: reference to the schedule as a conatined resource. The schedule represents the resource in DIPS
.... display Σ 0..1 string DIPS: the resource name in DIPS
... start Σ 1..1 instant DIPS: starting time of planned activity/first activity on contact (may not be the same as the checkin time)
... end Σ 1..1 instant DIPS: end time of planned activity

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Slot.status Base required SlotStatus 📦4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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()

This structure is derived from Slot

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Slot 0..* Slot A slot of time on a schedule that may be available for booking appointments
... identifier 0..0 External Ids for this item
... serviceCategory 0..0 A broad categorization of the service that is to be performed during this appointment
... serviceType 0..0 The type of appointments that can be booked into this slot (ideally this would be an identifiable service - which is at a location, rather than the location itself). If provided then this overrides the value provided on the availability resource
... appointmentType 0..0 The style of appointment or patient that may be booked in the slot (not service type)
... schedule 1..1 Reference(DIPSAppointmentSchedule) DIPS: reference to the schedule as a conatined resource. The schedule represents the resource in DIPS
.... type 0..0 Type the reference refers to (e.g. "Patient")
.... display 0..1 string DIPS: the resource name in DIPS
... status 1..1 code DIPS: 'busy' or 'free' (busy | free | busy-unavailable | busy-tentative)
Binding: SlotStatus (required)
... start 1..1 instant DIPS: starting time of planned activity/first activity on contact (may not be the same as the checkin time)
... end 1..1 instant DIPS: end time of planned activity
... overbooked 0..0 This slot has already been overbooked, appointments are unlikely to be accepted for this time
... comment 0..0 Comments on the slot to describe any extended information. Such as custom constraints on the slot

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Slot.status Base required SlotStatus 📦4.0.1 FHIR Std.
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Slot 0..* Slot A slot of time on a schedule that may be available for booking appointments
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
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
... schedule Σ 1..1 Reference(DIPSAppointmentSchedule) DIPS: reference to the schedule as a conatined resource. The schedule represents the resource in DIPS
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string DIPS: the resource name in DIPS
... status Σ 1..1 code DIPS: 'busy' or 'free' (busy | free | busy-unavailable | busy-tentative)
Binding: SlotStatus (required)
... start Σ 1..1 instant DIPS: starting time of planned activity/first activity on contact (may not be the same as the checkin time)
... end Σ 1..1 instant DIPS: end time of planned activity

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Slot.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Slot.status Base required SlotStatus 📦4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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()

This structure is derived from Slot

Summary

Prohibited: 8 elements

Structures

This structure refers to these other structures:

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Slot 0..* Slot A slot of time on a schedule that may be available for booking appointments
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... schedule Σ 1..1 Reference(DIPSAppointmentSchedule) DIPS: reference to the schedule as a conatined resource. The schedule represents the resource in DIPS
.... display Σ 0..1 string DIPS: the resource name in DIPS
... start Σ 1..1 instant DIPS: starting time of planned activity/first activity on contact (may not be the same as the checkin time)
... end Σ 1..1 instant DIPS: end time of planned activity

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Slot.status Base required SlotStatus 📦4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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()

Differential View

This structure is derived from Slot

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Slot 0..* Slot A slot of time on a schedule that may be available for booking appointments
... identifier 0..0 External Ids for this item
... serviceCategory 0..0 A broad categorization of the service that is to be performed during this appointment
... serviceType 0..0 The type of appointments that can be booked into this slot (ideally this would be an identifiable service - which is at a location, rather than the location itself). If provided then this overrides the value provided on the availability resource
... appointmentType 0..0 The style of appointment or patient that may be booked in the slot (not service type)
... schedule 1..1 Reference(DIPSAppointmentSchedule) DIPS: reference to the schedule as a conatined resource. The schedule represents the resource in DIPS
.... type 0..0 Type the reference refers to (e.g. "Patient")
.... display 0..1 string DIPS: the resource name in DIPS
... status 1..1 code DIPS: 'busy' or 'free' (busy | free | busy-unavailable | busy-tentative)
Binding: SlotStatus (required)
... start 1..1 instant DIPS: starting time of planned activity/first activity on contact (may not be the same as the checkin time)
... end 1..1 instant DIPS: end time of planned activity
... overbooked 0..0 This slot has already been overbooked, appointments are unlikely to be accepted for this time
... comment 0..0 Comments on the slot to describe any extended information. Such as custom constraints on the slot

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Slot.status Base required SlotStatus 📦4.0.1 FHIR Std.

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Slot 0..* Slot A slot of time on a schedule that may be available for booking appointments
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
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
... schedule Σ 1..1 Reference(DIPSAppointmentSchedule) DIPS: reference to the schedule as a conatined resource. The schedule represents the resource in DIPS
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string DIPS: the resource name in DIPS
... status Σ 1..1 code DIPS: 'busy' or 'free' (busy | free | busy-unavailable | busy-tentative)
Binding: SlotStatus (required)
... start Σ 1..1 instant DIPS: starting time of planned activity/first activity on contact (may not be the same as the checkin time)
... end Σ 1..1 instant DIPS: end time of planned activity

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Slot.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Slot.status Base required SlotStatus 📦4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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()

This structure is derived from Slot

Summary

Prohibited: 8 elements

Structures

This structure refers to these other structures:

 

Other representations of profile: CSV, Excel, Schematron