Gestion d'Agenda Partagé (GAP)
3.0.0-ballot - 3.0.0-ballot

This page is part of the Guide d'implémentation FHIR - Gestion d'Agendas Partagés (v3.0.0-ballot: Release) based on FHIR R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Resource Profile: GAP_FrSchedule

Official URL: https://interop.esante.gouv.fr/ig/fhir/gap/StructureDefinition/gap-fr-schedule Version: 3.0.0-ballot
Draft as of 2023-10-10 Computable Name: GAP_FrSchedule

Usage:

Formal Views of Profile Content

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

This structure is derived from FrSchedule

NameFlagsCard.TypeDescription & Constraintsdoco
.. Schedule 0..*FrScheduleA container for slots of time that may be available for booking appointments

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Schedule 0..*FrScheduleA container for slots of time that may be available for booking appointments
... implicitRules ?!ΣN0..1uriA set of rules under which this content was created
... serviceTypeDuration N0..*(Complex)Optional Extensions Element
URL: http://interopsante.org/fhir/StructureDefinition/FrServiceTypeDuration
... availabilityTime N0..*(Complex)Optional Extensions Element
URL: http://interopsante.org/fhir/StructureDefinition/FrScheduleAvailabiltyTime
... active ?!ΣN0..1booleanWhether this schedule is in active use
... serviceCategory ΣN0..1CodeableConceptHigh-level category
Binding: ServiceCategory (example)
... actor ΣCN1..*Reference(Device | PractitionerRole | FrRelatedPerson | FrHealthcareService | FrLocation | FrPatient | FrPractitioner)Resource(s) that availability information is being provided for

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Schedule.serviceCategoryexampleServiceCategory

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorScheduleIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorScheduleIf 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-4errorScheduleIf 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-5errorScheduleIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceScheduleA 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()
ref-1errorSchedule.actorSHALL 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
.. Schedule 0..*FrScheduleA container for slots of time 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
... Slices for extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... serviceTypeDuration N0..*(Complex)Optional Extensions Element
URL: http://interopsante.org/fhir/StructureDefinition/FrServiceTypeDuration
... availabilityTime N0..*(Complex)Optional Extensions Element
URL: http://interopsante.org/fhir/StructureDefinition/FrScheduleAvailabiltyTime
... modifierExtension ?!N0..*ExtensionExtensions that cannot be ignored
Slice: Unordered, Open by value:url
... identifier ΣN0..*IdentifierExternal Ids for this item
.... 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 ΣN0..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value ΣN0..1stringThe value that is unique
Example General: 123456
.... period ΣCN0..1PeriodTime period when id is/was valid for use
.... assigner ΣCN0..1Reference(Organization)Organization that issued id (may be just text)
... active ?!ΣN0..1booleanWhether this schedule is in active use
... serviceCategory ΣN0..1CodeableConceptHigh-level category
Binding: ServiceCategory (example)
... specialty ΣN0..*CodeableConceptType of specialty needed
Binding: fr-practitioner-specialty (required): Additional details about where the content was created (e.g. clinical specialty).


... actor ΣCN1..*Reference(Device | PractitionerRole | FrRelatedPerson | FrHealthcareService | FrLocation | FrPatient | FrPractitioner)Resource(s) that availability information is being provided for
... planningHorizon ΣCN0..1PeriodPeriod of time covered by schedule
... comment N0..1stringComments on availability

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Schedule.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Schedule.identifier.userequiredIdentifierUse
Schedule.identifier.typeextensibleIdentifier Type Codes
Schedule.serviceCategoryexampleServiceCategory
Schedule.specialtyrequiredfr-practitioner-specialty (a valid code from https://mos.esante.gouv.fr/NOS/TRE_R38-SpecialiteOrdinale/FHIR/TRE-R38-SpecialiteOrdinale)

Constraints

IdGradePath(s)DetailsRequirements
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()
per-1errorSchedule.identifier.period, Schedule.planningHorizonIf present, start SHALL have a lower value than end
: start.hasValue().not() or end.hasValue().not() or (start <= end)
ref-1errorSchedule.identifier.assigner, Schedule.actorSHALL 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 FrSchedule

Summary

Differential View

This structure is derived from FrSchedule

NameFlagsCard.TypeDescription & Constraintsdoco
.. Schedule 0..*FrScheduleA container for slots of time that may be available for booking appointments

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Schedule 0..*FrScheduleA container for slots of time that may be available for booking appointments
... implicitRules ?!ΣN0..1uriA set of rules under which this content was created
... serviceTypeDuration N0..*(Complex)Optional Extensions Element
URL: http://interopsante.org/fhir/StructureDefinition/FrServiceTypeDuration
... availabilityTime N0..*(Complex)Optional Extensions Element
URL: http://interopsante.org/fhir/StructureDefinition/FrScheduleAvailabiltyTime
... active ?!ΣN0..1booleanWhether this schedule is in active use
... serviceCategory ΣN0..1CodeableConceptHigh-level category
Binding: ServiceCategory (example)
... actor ΣCN1..*Reference(Device | PractitionerRole | FrRelatedPerson | FrHealthcareService | FrLocation | FrPatient | FrPractitioner)Resource(s) that availability information is being provided for

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Schedule.serviceCategoryexampleServiceCategory

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorScheduleIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorScheduleIf 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-4errorScheduleIf 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-5errorScheduleIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceScheduleA 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()
ref-1errorSchedule.actorSHALL 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
.. Schedule 0..*FrScheduleA container for slots of time 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
... Slices for extension N0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... serviceTypeDuration N0..*(Complex)Optional Extensions Element
URL: http://interopsante.org/fhir/StructureDefinition/FrServiceTypeDuration
... availabilityTime N0..*(Complex)Optional Extensions Element
URL: http://interopsante.org/fhir/StructureDefinition/FrScheduleAvailabiltyTime
... modifierExtension ?!N0..*ExtensionExtensions that cannot be ignored
Slice: Unordered, Open by value:url
... identifier ΣN0..*IdentifierExternal Ids for this item
.... 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 ΣN0..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value ΣN0..1stringThe value that is unique
Example General: 123456
.... period ΣCN0..1PeriodTime period when id is/was valid for use
.... assigner ΣCN0..1Reference(Organization)Organization that issued id (may be just text)
... active ?!ΣN0..1booleanWhether this schedule is in active use
... serviceCategory ΣN0..1CodeableConceptHigh-level category
Binding: ServiceCategory (example)
... specialty ΣN0..*CodeableConceptType of specialty needed
Binding: fr-practitioner-specialty (required): Additional details about where the content was created (e.g. clinical specialty).


... actor ΣCN1..*Reference(Device | PractitionerRole | FrRelatedPerson | FrHealthcareService | FrLocation | FrPatient | FrPractitioner)Resource(s) that availability information is being provided for
... planningHorizon ΣCN0..1PeriodPeriod of time covered by schedule
... comment N0..1stringComments on availability

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Schedule.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Schedule.identifier.userequiredIdentifierUse
Schedule.identifier.typeextensibleIdentifier Type Codes
Schedule.serviceCategoryexampleServiceCategory
Schedule.specialtyrequiredfr-practitioner-specialty (a valid code from https://mos.esante.gouv.fr/NOS/TRE_R38-SpecialiteOrdinale/FHIR/TRE-R38-SpecialiteOrdinale)

Constraints

IdGradePath(s)DetailsRequirements
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()
per-1errorSchedule.identifier.period, Schedule.planningHorizonIf present, start SHALL have a lower value than end
: start.hasValue().not() or end.hasValue().not() or (start <= end)
ref-1errorSchedule.identifier.assigner, Schedule.actorSHALL 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 FrSchedule

Summary

 

Other representations of profile: CSV, Excel, Schematron