Soigneur FHIR Implementation Guide
0.1.0 - ci-build Germany flag

Soigneur FHIR 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: Availability Block (Appointment)

Official URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-availability-block Version: 0.1.0
Draft as of 2026-11-14 Computable Name: CcAvailabilityBlock

Copyright/Legal: Copyright (c) Soigneur. Licensed under CC0-1.0 (public domain dedication). FHIR(R) is the registered trademark of HL7 and is used with permission.

A plan-independent absence/restriction block the coach records from chat or the athlete enters manually (ADR 0071). cc-ext-availability-block marks it; cc-ext-availability-type is the reason (calendar label); cc-ext-training-impact (lock-step with core.plan Absence.category) feeds absence layering. description = short label; comment = free-text coach context. Guardrail invariant: never carries cc-ext-external-planner.

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: doco
Appointment C 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
Constraints: app-2, app-3, app-4, cc-inv-availability-not-external
Appointment.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Appointment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
Appointment.Slices for extension.extension:availabilityBlock 1..1 boolean Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-block
Appointment.Slices for extension.extension:availabilityType 1..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-type
Binding: Availability-block type (required)
Appointment.Slices for extension.extension:trainingImpact 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-training-impact
Binding: Training impact of an availability block (required)
Appointment.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Appointment.status This element is a modifier element. This element is included in summaries. 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): The free/busy status of an appointment.
Appointment.description 0..1 string Short calendar label (e.g. 'Business travel to Copenhagen')
Appointment.start This element is included in summaries. 1..1 instant Block start (multi-day blocks span start..end)
Appointment.end This element is included in summaries. 1..1 instant Block end
Appointment.comment 0..1 string Free-text coach context (e.g. drained from travel, hotel-gym spinner available)
Appointment.participant C 1..* BackboneElement Participants involved in appointment
Constraints: app-1
Appointment.participant.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Appointment.participant.actor This element is included in summaries. 1..1 Reference(Soigneur Athlete (Patient)) The athlete
Appointment.participant.status This element is included in summaries. 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Appointment.status Base required AppointmentStatus 📍4.0.1 FHIR Std.
Appointment.participant.​status Base required ParticipationStatus 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Beschreibung Expression
cc-inv-availability-not-external error Appointment An availability block must NOT carry the external-planner flag — the guardrail that keeps availability/absence blocks out of the plan-mode external-plan signal (ADR 0071). extension('https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-external-planner').empty()

This structure is derived from Appointment

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Appointment C 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
Constraints: cc-inv-availability-not-external
Appointment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
Appointment.Slices for extension.extension:availabilityBlock 1..1 boolean Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-block
Appointment.Slices for extension.extension:availabilityType 1..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-type
Binding: Availability-block type (required)
Appointment.Slices for extension.extension:trainingImpact 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-training-impact
Binding: Training impact of an availability block (required)
Appointment.description 0..1 string Short calendar label (e.g. 'Business travel to Copenhagen')
Appointment.start 1..1 instant Block start (multi-day blocks span start..end)
Appointment.comment 0..1 string Free-text coach context (e.g. drained from travel, hotel-gym spinner available)
Appointment.participant
Appointment.participant.actor 1..1 Reference(Soigneur Athlete (Patient)) The athlete

doco Documentation for this format

Constraints

Id Grade Path(s) Beschreibung Expression
cc-inv-availability-not-external error Appointment An availability block must NOT carry the external-planner flag — the guardrail that keeps availability/absence blocks out of the plan-mode external-plan signal (ADR 0071). extension('https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-external-planner').empty()
NameFlagsCard.TypeDescription & Constraints    Filter: doco
Appointment C 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
Constraints: app-2, app-3, app-4, cc-inv-availability-not-external
Appointment.id This element is included in summaries. 0..1 id Logical id of this artifact
Appointment.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Appointment.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Appointment.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Appointment.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
Appointment.contained 0..* Resource Contained, inline Resources
Appointment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
Appointment.Slices for extension.extension:availabilityBlock 1..1 boolean Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-block
Appointment.Slices for extension.extension:availabilityType 1..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-type
Binding: Availability-block type (required)
Appointment.Slices for extension.extension:trainingImpact 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-training-impact
Binding: Training impact of an availability block (required)
Appointment.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Appointment.identifier This element is included in summaries. 0..* Identifier External Ids for this item
Appointment.status This element is a modifier element. This element is included in summaries. 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): The free/busy status of an appointment.
Appointment.cancelationReason This element is included in summaries. 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason (example)
Appointment.serviceCategory This element is included in summaries. 0..* CodeableConcept A broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (example)
Appointment.serviceType This element is included in summaries. 0..* CodeableConcept The specific service that is to be performed during this appointment
Binding: ServiceType (example)
Appointment.specialty This element is included in summaries. 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
Appointment.appointmentType This element is included in summaries. 0..1 CodeableConcept The style of appointment or patient that has been booked in the slot (not service type)
Binding: hl7VS-appointmentReasonCodes (preferred)
Appointment.reasonCode This element is included in summaries. 0..* CodeableConcept Coded reason this appointment is scheduled
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.
Appointment.reasonReference 0..* Reference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason the appointment is to take place (resource)
Appointment.priority 0..1 unsignedInt Used to make informed decisions if needing to re-prioritize
Appointment.description 0..1 string Short calendar label (e.g. 'Business travel to Copenhagen')
Appointment.supportingInformation 0..* Reference(Resource) Additional information to support the appointment
Appointment.start This element is included in summaries. 1..1 instant Block start (multi-day blocks span start..end)
Appointment.end This element is included in summaries. 1..1 instant Block end
Appointment.minutesDuration 0..1 positiveInt Can be less than start/end (e.g. estimate)
Appointment.slot 0..* Reference(Slot) The slots that this appointment is filling
Appointment.created 0..1 dateTime The date that this appointment was initially created
Appointment.comment 0..1 string Free-text coach context (e.g. drained from travel, hotel-gym spinner available)
Appointment.patientInstruction 0..1 string Detailed information and instructions for the patient
Appointment.basedOn 0..* Reference(ServiceRequest) The service request this appointment is allocated to assess
Appointment.participant C 1..* BackboneElement Participants involved in appointment
Constraints: app-1
Appointment.participant.id 0..1 string Unique id for inter-element referencing
Appointment.participant.extension 0..* Extension Additional content defined by implementations
Appointment.participant.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Appointment.participant.type This element is included in summaries. 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
Appointment.participant.actor This element is included in summaries. 1..1 Reference(Soigneur Athlete (Patient)) The athlete
Appointment.participant.required This element is included in summaries. 0..1 code required | optional | information-only
Binding: ParticipantRequired (required): Is the Participant required to attend the appointment.
Appointment.participant.status This element is included in summaries. 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
Appointment.participant.period 0..1 Period Participation period of the actor
Appointment.requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Appointment.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Appointment.status Base required AppointmentStatus 📍4.0.1 FHIR Std.
Appointment.cancelationReason Base example Appointment cancellation reason 📍4.0.1 FHIR Std.
Appointment.serviceCategory Base example Service category 📍4.0.1 FHIR Std.
Appointment.serviceType Base example Service type 📍4.0.1 FHIR Std.
Appointment.specialty Base preferred Practice Setting Code Value Set 📍4.0.1 FHIR Std.
Appointment.appointmentType Base preferred hl7VS-appointmentReasonCodes 📦3.0.0 THO v7.5
Appointment.reasonCode Base preferred Encounter Reason Codes 📍4.0.1 FHIR Std.
Appointment.participant.​type Base extensible Participant type 📍4.0.1 FHIR Std.
Appointment.participant.​required Base required ParticipantRequired 📍4.0.1 FHIR Std.
Appointment.participant.​status Base required ParticipationStatus 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Beschreibung Expression
cc-inv-availability-not-external error Appointment An availability block must NOT carry the external-planner flag — the guardrail that keeps availability/absence blocks out of the plan-mode external-plan signal (ADR 0071). extension('https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-external-planner').empty()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Appointment C 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
Constraints: app-2, app-3, app-4, cc-inv-availability-not-external
Appointment.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Appointment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
Appointment.Slices for extension.extension:availabilityBlock 1..1 boolean Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-block
Appointment.Slices for extension.extension:availabilityType 1..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-type
Binding: Availability-block type (required)
Appointment.Slices for extension.extension:trainingImpact 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-training-impact
Binding: Training impact of an availability block (required)
Appointment.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Appointment.status This element is a modifier element. This element is included in summaries. 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): The free/busy status of an appointment.
Appointment.description 0..1 string Short calendar label (e.g. 'Business travel to Copenhagen')
Appointment.start This element is included in summaries. 1..1 instant Block start (multi-day blocks span start..end)
Appointment.end This element is included in summaries. 1..1 instant Block end
Appointment.comment 0..1 string Free-text coach context (e.g. drained from travel, hotel-gym spinner available)
Appointment.participant C 1..* BackboneElement Participants involved in appointment
Constraints: app-1
Appointment.participant.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Appointment.participant.actor This element is included in summaries. 1..1 Reference(Soigneur Athlete (Patient)) The athlete
Appointment.participant.status This element is included in summaries. 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Appointment.status Base required AppointmentStatus 📍4.0.1 FHIR Std.
Appointment.participant.​status Base required ParticipationStatus 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Beschreibung Expression
cc-inv-availability-not-external error Appointment An availability block must NOT carry the external-planner flag — the guardrail that keeps availability/absence blocks out of the plan-mode external-plan signal (ADR 0071). extension('https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-external-planner').empty()

Differential View

This structure is derived from Appointment

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Appointment C 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
Constraints: cc-inv-availability-not-external
Appointment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
Appointment.Slices for extension.extension:availabilityBlock 1..1 boolean Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-block
Appointment.Slices for extension.extension:availabilityType 1..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-type
Binding: Availability-block type (required)
Appointment.Slices for extension.extension:trainingImpact 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-training-impact
Binding: Training impact of an availability block (required)
Appointment.description 0..1 string Short calendar label (e.g. 'Business travel to Copenhagen')
Appointment.start 1..1 instant Block start (multi-day blocks span start..end)
Appointment.end 1..1 instant Block end
Appointment.comment 0..1 string Free-text coach context (e.g. drained from travel, hotel-gym spinner available)
Appointment.participant
Appointment.participant.actor 1..1 Reference(Soigneur Athlete (Patient)) The athlete

doco Documentation for this format

Constraints

Id Grade Path(s) Beschreibung Expression
cc-inv-availability-not-external error Appointment An availability block must NOT carry the external-planner flag — the guardrail that keeps availability/absence blocks out of the plan-mode external-plan signal (ADR 0071). extension('https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-external-planner').empty()

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Appointment C 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
Constraints: app-2, app-3, app-4, cc-inv-availability-not-external
Appointment.id This element is included in summaries. 0..1 id Logical id of this artifact
Appointment.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Appointment.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Appointment.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Appointment.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
Appointment.contained 0..* Resource Contained, inline Resources
Appointment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
Appointment.Slices for extension.extension:availabilityBlock 1..1 boolean Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-block
Appointment.Slices for extension.extension:availabilityType 1..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-availability-type
Binding: Availability-block type (required)
Appointment.Slices for extension.extension:trainingImpact 0..1 code Optional Extensions Element
URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-training-impact
Binding: Training impact of an availability block (required)
Appointment.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Appointment.identifier This element is included in summaries. 0..* Identifier External Ids for this item
Appointment.status This element is a modifier element. This element is included in summaries. 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): The free/busy status of an appointment.
Appointment.cancelationReason This element is included in summaries. 0..1 CodeableConcept The coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason (example)
Appointment.serviceCategory This element is included in summaries. 0..* CodeableConcept A broad categorization of the service that is to be performed during this appointment
Binding: ServiceCategory (example)
Appointment.serviceType This element is included in summaries. 0..* CodeableConcept The specific service that is to be performed during this appointment
Binding: ServiceType (example)
Appointment.specialty This element is included in summaries. 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
Appointment.appointmentType This element is included in summaries. 0..1 CodeableConcept The style of appointment or patient that has been booked in the slot (not service type)
Binding: hl7VS-appointmentReasonCodes (preferred)
Appointment.reasonCode This element is included in summaries. 0..* CodeableConcept Coded reason this appointment is scheduled
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.
Appointment.reasonReference 0..* Reference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason the appointment is to take place (resource)
Appointment.priority 0..1 unsignedInt Used to make informed decisions if needing to re-prioritize
Appointment.description 0..1 string Short calendar label (e.g. 'Business travel to Copenhagen')
Appointment.supportingInformation 0..* Reference(Resource) Additional information to support the appointment
Appointment.start This element is included in summaries. 1..1 instant Block start (multi-day blocks span start..end)
Appointment.end This element is included in summaries. 1..1 instant Block end
Appointment.minutesDuration 0..1 positiveInt Can be less than start/end (e.g. estimate)
Appointment.slot 0..* Reference(Slot) The slots that this appointment is filling
Appointment.created 0..1 dateTime The date that this appointment was initially created
Appointment.comment 0..1 string Free-text coach context (e.g. drained from travel, hotel-gym spinner available)
Appointment.patientInstruction 0..1 string Detailed information and instructions for the patient
Appointment.basedOn 0..* Reference(ServiceRequest) The service request this appointment is allocated to assess
Appointment.participant C 1..* BackboneElement Participants involved in appointment
Constraints: app-1
Appointment.participant.id 0..1 string Unique id for inter-element referencing
Appointment.participant.extension 0..* Extension Additional content defined by implementations
Appointment.participant.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Appointment.participant.type This element is included in summaries. 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.
Appointment.participant.actor This element is included in summaries. 1..1 Reference(Soigneur Athlete (Patient)) The athlete
Appointment.participant.required This element is included in summaries. 0..1 code required | optional | information-only
Binding: ParticipantRequired (required): Is the Participant required to attend the appointment.
Appointment.participant.status This element is included in summaries. 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.
Appointment.participant.period 0..1 Period Participation period of the actor
Appointment.requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Appointment.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Appointment.status Base required AppointmentStatus 📍4.0.1 FHIR Std.
Appointment.cancelationReason Base example Appointment cancellation reason 📍4.0.1 FHIR Std.
Appointment.serviceCategory Base example Service category 📍4.0.1 FHIR Std.
Appointment.serviceType Base example Service type 📍4.0.1 FHIR Std.
Appointment.specialty Base preferred Practice Setting Code Value Set 📍4.0.1 FHIR Std.
Appointment.appointmentType Base preferred hl7VS-appointmentReasonCodes 📦3.0.0 THO v7.5
Appointment.reasonCode Base preferred Encounter Reason Codes 📍4.0.1 FHIR Std.
Appointment.participant.​type Base extensible Participant type 📍4.0.1 FHIR Std.
Appointment.participant.​required Base required ParticipantRequired 📍4.0.1 FHIR Std.
Appointment.participant.​status Base required ParticipationStatus 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Beschreibung Expression
cc-inv-availability-not-external error Appointment An availability block must NOT carry the external-planner flag — the guardrail that keeps availability/absence blocks out of the plan-mode external-plan signal (ADR 0071). extension('https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-external-planner').empty()

 

Other representations of profile: CSV, Excel, Schematron