Codes, extension, profiles and more
1.0.0 - ci-build Norway flag

Codes, extension, profiles and more - Local Development build (v1.0.0). See the Directory of published versions

Resource Profile: HnBasisSlot

Official URL: http://helsenorge.no/fhir/StructureDefinition/hn-basis-slot Version: 1.0.0
Draft as of 2024-06-12 Computable Name: HnBasisSlot

Profil for slot i Helsenorge. Basert på FHIR Slot (R4)

Usage:

Formal Views of Profile Content

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

This structure is derived from Slot

NameFlagsCard.TypeDescription & Constraintsdoco
.. Slot 0..*SlotA slot of time on a schedule that may be available for booking appointments
... identifier 1..1IdentifierIdentifer must be UUID/GUID
.... system 1..1uriThe namespace for the identifier value
.... value 1..1stringThe value that is unique
.... assigner 0..1Reference(Organization | no-basis-Organization)Organization that issued id (may be just text)
... serviceCategory 1..1CodeableConceptA broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (required)
.... coding C0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... serviceType 0..*CodeableConceptThe 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
Binding: hn-scheduleandslot-type-vs (required)
.... coding C0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
.... coding C0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... appointmentType 0..1CodeableConceptThe style of appointment or patient that may be booked in the slot (not service type)
Binding: hn-scheduleandslot-type-vs (required)
.... coding C0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... schedule 1..1Reference(Schedule | HnBasisSchedule)The schedule resource that this slot defines an interval of status information

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Slot.serviceCategoryrequiredServiceCategory
Slot.serviceTyperequiredHnScheduleAndSlotTypeVS
Slot.appointmentTyperequiredHnScheduleAndSlotTypeVS

Constraints

IdGradePath(s)DetailsRequirements
inv-4errorSlot.serviceCategory.coding, Slot.serviceType.coding, Slot.specialty.coding, Slot.appointmentType.codingIf code is used in a codable consept the system must be used
: code > '' implies (system > '' )
NameFlagsCard.TypeDescription & Constraintsdoco
.. Slot 0..*SlotA slot of time on a schedule that may be available for booking appointments
... implicitRules ?!ΣN0..1uriA set of rules under which this content was created
... modifierExtension ?!N0..*ExtensionExtensions that cannot be ignored
Slice: Unordered, Open by value:url
... identifier Σ1..1IdentifierIdentifer must be UUID/GUID
.... use ?!ΣN0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system Σ1..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ1..1stringThe value that is unique
Example General: 123456
.... assigner ΣC0..1Reference(Organization | no-basis-Organization)Organization that issued id (may be just text)
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... serviceType Σ0..*CodeableConceptThe 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
Binding: hn-scheduleandslot-type-vs (required)
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... appointmentType Σ0..1CodeableConceptThe style of appointment or patient that may be booked in the slot (not service type)
Binding: hn-scheduleandslot-type-vs (required)
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... schedule ΣC1..1Reference(Schedule | HnBasisSchedule)The schedule resource that this slot defines an interval of status information
... status ΣN1..1codebusy | free | busy-unavailable | busy-tentative | entered-in-error
Binding: SlotStatus (required): The free/busy status of the slot.

... start ΣN1..1instantDate/Time that the slot is to begin
... end ΣN1..1instantDate/Time that the slot is to conclude

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Slot.identifier.userequiredIdentifierUse
Slot.serviceCategoryrequiredServiceCategory
Slot.serviceTyperequiredHnScheduleAndSlotTypeVS
Slot.appointmentTyperequiredHnScheduleAndSlotTypeVS
Slot.statusrequiredSlotStatus

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSlotIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSlotIf 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-4errorSlotIf 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-5errorSlotIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSlotA 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** elementsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-4errorSlot.serviceCategory.coding, Slot.serviceType.coding, Slot.appointmentType.codingIf code is used in a codable consept the system must be used
: code > '' implies (system > '' )
ref-1errorSlot.identifier.assigner, Slot.scheduleSHALL have a contained resource if a local reference is provided
: reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
NameFlagsCard.TypeDescription & Constraintsdoco
.. Slot 0..*SlotA slot of time on a schedule that may be available for booking appointments
... id Σ0..1idLogical id of this artifact
... meta ΣN0..1MetaMetadata about the resource
... implicitRules ?!ΣN0..1uriA set of rules under which this content was created
... text N0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... modifierExtension ?!N0..*ExtensionExtensions that cannot be ignored
Slice: Unordered, Open by value:url
... identifier Σ1..1IdentifierIdentifer must be UUID/GUID
.... id 0..1stringUnique id for inter-element referencing
.... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!ΣN0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type ΣN0..1CodeableConceptDescription 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..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ1..1stringThe value that is unique
Example General: 123456
.... period ΣCN0..1PeriodTime period when id is/was valid for use
.... assigner ΣC0..1Reference(Organization | no-basis-Organization)Organization that issued id (may be just text)
... serviceCategory Σ1..1CodeableConceptA broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (required)
.... id 0..1stringUnique id for inter-element referencing
.... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
.... text ΣN0..1stringPlain text representation of the concept
... serviceType Σ0..*CodeableConceptThe 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
Binding: hn-scheduleandslot-type-vs (required)
.... id 0..1stringUnique id for inter-element referencing
.... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
.... text ΣN0..1stringPlain text representation of the concept
... specialty ΣN0..*CodeableConceptThe 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).


.... id 0..1stringUnique id for inter-element referencing
.... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
.... text ΣN0..1stringPlain text representation of the concept
... appointmentType Σ0..1CodeableConceptThe style of appointment or patient that may be booked in the slot (not service type)
Binding: hn-scheduleandslot-type-vs (required)
.... id 0..1stringUnique id for inter-element referencing
.... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
.... text ΣN0..1stringPlain text representation of the concept
... schedule ΣC1..1Reference(Schedule | HnBasisSchedule)The schedule resource that this slot defines an interval of status information
... status ΣN1..1codebusy | free | busy-unavailable | busy-tentative | entered-in-error
Binding: SlotStatus (required): The free/busy status of the slot.

... start ΣN1..1instantDate/Time that the slot is to begin
... end ΣN1..1instantDate/Time that the slot is to conclude
... overbooked N0..1booleanThis slot has already been overbooked, appointments are unlikely to be accepted for this time
... comment N0..1stringComments on the slot to describe any extended information. Such as custom constraints on the slot

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Slot.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Slot.identifier.userequiredIdentifierUse
Slot.identifier.typeextensibleIdentifier Type Codes
Slot.serviceCategoryrequiredServiceCategory
Slot.serviceTyperequiredHnScheduleAndSlotTypeVS
Slot.specialtypreferredPracticeSettingCodeValueSet
Slot.appointmentTyperequiredHnScheduleAndSlotTypeVS
Slot.statusrequiredSlotStatus

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSlotIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSlotIf 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-4errorSlotIf 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-5errorSlotIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSlotA 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** elementsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-4errorSlot.serviceCategory.coding, Slot.serviceType.coding, Slot.specialty.coding, Slot.appointmentType.codingIf code is used in a codable consept the system must be used
: code > '' implies (system > '' )
per-1errorSlot.identifier.periodIf present, start SHALL have a lower value than end
: start.hasValue().not() or end.hasValue().not() or (start <= end)
ref-1errorSlot.identifier.assigner, Slot.scheduleSHALL have a contained resource if a local reference is provided
: reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))

This structure is derived from Slot

Differential View

This structure is derived from Slot

NameFlagsCard.TypeDescription & Constraintsdoco
.. Slot 0..*SlotA slot of time on a schedule that may be available for booking appointments
... identifier 1..1IdentifierIdentifer must be UUID/GUID
.... system 1..1uriThe namespace for the identifier value
.... value 1..1stringThe value that is unique
.... assigner 0..1Reference(Organization | no-basis-Organization)Organization that issued id (may be just text)
... serviceCategory 1..1CodeableConceptA broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (required)
.... coding C0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... serviceType 0..*CodeableConceptThe 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
Binding: hn-scheduleandslot-type-vs (required)
.... coding C0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
.... coding C0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... appointmentType 0..1CodeableConceptThe style of appointment or patient that may be booked in the slot (not service type)
Binding: hn-scheduleandslot-type-vs (required)
.... coding C0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... schedule 1..1Reference(Schedule | HnBasisSchedule)The schedule resource that this slot defines an interval of status information

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Slot.serviceCategoryrequiredServiceCategory
Slot.serviceTyperequiredHnScheduleAndSlotTypeVS
Slot.appointmentTyperequiredHnScheduleAndSlotTypeVS

Constraints

IdGradePath(s)DetailsRequirements
inv-4errorSlot.serviceCategory.coding, Slot.serviceType.coding, Slot.specialty.coding, Slot.appointmentType.codingIf code is used in a codable consept the system must be used
: code > '' implies (system > '' )

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Slot 0..*SlotA slot of time on a schedule that may be available for booking appointments
... implicitRules ?!ΣN0..1uriA set of rules under which this content was created
... modifierExtension ?!N0..*ExtensionExtensions that cannot be ignored
Slice: Unordered, Open by value:url
... identifier Σ1..1IdentifierIdentifer must be UUID/GUID
.... use ?!ΣN0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system Σ1..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ1..1stringThe value that is unique
Example General: 123456
.... assigner ΣC0..1Reference(Organization | no-basis-Organization)Organization that issued id (may be just text)
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... serviceType Σ0..*CodeableConceptThe 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
Binding: hn-scheduleandslot-type-vs (required)
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... appointmentType Σ0..1CodeableConceptThe style of appointment or patient that may be booked in the slot (not service type)
Binding: hn-scheduleandslot-type-vs (required)
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
... schedule ΣC1..1Reference(Schedule | HnBasisSchedule)The schedule resource that this slot defines an interval of status information
... status ΣN1..1codebusy | free | busy-unavailable | busy-tentative | entered-in-error
Binding: SlotStatus (required): The free/busy status of the slot.

... start ΣN1..1instantDate/Time that the slot is to begin
... end ΣN1..1instantDate/Time that the slot is to conclude

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Slot.identifier.userequiredIdentifierUse
Slot.serviceCategoryrequiredServiceCategory
Slot.serviceTyperequiredHnScheduleAndSlotTypeVS
Slot.appointmentTyperequiredHnScheduleAndSlotTypeVS
Slot.statusrequiredSlotStatus

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSlotIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSlotIf 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-4errorSlotIf 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-5errorSlotIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSlotA 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** elementsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-4errorSlot.serviceCategory.coding, Slot.serviceType.coding, Slot.appointmentType.codingIf code is used in a codable consept the system must be used
: code > '' implies (system > '' )
ref-1errorSlot.identifier.assigner, Slot.scheduleSHALL have a contained resource if a local reference is provided
: reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Slot 0..*SlotA slot of time on a schedule that may be available for booking appointments
... id Σ0..1idLogical id of this artifact
... meta ΣN0..1MetaMetadata about the resource
... implicitRules ?!ΣN0..1uriA set of rules under which this content was created
... text N0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... modifierExtension ?!N0..*ExtensionExtensions that cannot be ignored
Slice: Unordered, Open by value:url
... identifier Σ1..1IdentifierIdentifer must be UUID/GUID
.... id 0..1stringUnique id for inter-element referencing
.... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!ΣN0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type ΣN0..1CodeableConceptDescription 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..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ1..1stringThe value that is unique
Example General: 123456
.... period ΣCN0..1PeriodTime period when id is/was valid for use
.... assigner ΣC0..1Reference(Organization | no-basis-Organization)Organization that issued id (may be just text)
... serviceCategory Σ1..1CodeableConceptA broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (required)
.... id 0..1stringUnique id for inter-element referencing
.... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
.... text ΣN0..1stringPlain text representation of the concept
... serviceType Σ0..*CodeableConceptThe 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
Binding: hn-scheduleandslot-type-vs (required)
.... id 0..1stringUnique id for inter-element referencing
.... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
.... text ΣN0..1stringPlain text representation of the concept
... specialty ΣN0..*CodeableConceptThe 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).


.... id 0..1stringUnique id for inter-element referencing
.... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
.... text ΣN0..1stringPlain text representation of the concept
... appointmentType Σ0..1CodeableConceptThe style of appointment or patient that may be booked in the slot (not service type)
Binding: hn-scheduleandslot-type-vs (required)
.... id 0..1stringUnique id for inter-element referencing
.... extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding ΣC0..*CodingCode defined by a terminology system
inv-4: If code is used in a codable consept the system must be used
.... text ΣN0..1stringPlain text representation of the concept
... schedule ΣC1..1Reference(Schedule | HnBasisSchedule)The schedule resource that this slot defines an interval of status information
... status ΣN1..1codebusy | free | busy-unavailable | busy-tentative | entered-in-error
Binding: SlotStatus (required): The free/busy status of the slot.

... start ΣN1..1instantDate/Time that the slot is to begin
... end ΣN1..1instantDate/Time that the slot is to conclude
... overbooked N0..1booleanThis slot has already been overbooked, appointments are unlikely to be accepted for this time
... comment N0..1stringComments on the slot to describe any extended information. Such as custom constraints on the slot

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Slot.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Slot.identifier.userequiredIdentifierUse
Slot.identifier.typeextensibleIdentifier Type Codes
Slot.serviceCategoryrequiredServiceCategory
Slot.serviceTyperequiredHnScheduleAndSlotTypeVS
Slot.specialtypreferredPracticeSettingCodeValueSet
Slot.appointmentTyperequiredHnScheduleAndSlotTypeVS
Slot.statusrequiredSlotStatus

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSlotIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSlotIf 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-4errorSlotIf 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-5errorSlotIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSlotA 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** elementsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-4errorSlot.serviceCategory.coding, Slot.serviceType.coding, Slot.specialty.coding, Slot.appointmentType.codingIf code is used in a codable consept the system must be used
: code > '' implies (system > '' )
per-1errorSlot.identifier.periodIf present, start SHALL have a lower value than end
: start.hasValue().not() or end.hasValue().not() or (start <= end)
ref-1errorSlot.identifier.assigner, Slot.scheduleSHALL have a contained resource if a local reference is provided
: reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))

This structure is derived from Slot

 

Other representations of profile: CSV, Excel, Schematron