eHealth Infrastructure
2.3.0 - release

eHealth Infrastructure - Local Development build (v2.3.0). See the Directory of published versions

Resource Profile: ehealth-group-appointment

Official URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-group-appointment Version: 2.3.0
Active as of 2022-09-27 Computable Name: ehealth-group-appointment

Extra Validation Constraints

  • When a dateTime value is present in the ehealth-registration-deadline extension, then a WARNING validation issue will be raised if a participant is added to the appointment after this point in time
    • This constraint is implemented directly on the server due to technical limitations, which means it is not listed with other Implementation Guide constraints
  • The ehealth-creator extension value is managed by the server and holds a reference to the CareTeam that created the group appointment
    • When creating a new group appointment, the server automatically fills out this value based on the JWT CareTeam context of the user
    • Trying to assign a value different from the CareTeam in context when creating a group appointment, or changing this value in an update or patch operation, generates a http 422 error
    • The value is used by the security system of the server to allow the original creator of the group appointment to modify the appointment after creation, even when the creator is not the ehealth-responsible party

Usage:

Formal Views of Profile Content

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

This structure is derived from Appointment

Summary

Mandatory: 7 elements (1 nested mandatory element)
Fixed Value: 1 element

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Appointment.serviceType is sliced based on the value of value:coding.code

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet
Appointment.languagepreferredCommonLanguages
Max Binding: AllLanguages
Appointment.statusrequiredAppointmentStatus
Appointment.cancelationReasonexampleAppointmentCancellationReason
Appointment.serviceCategoryexampleServiceCategory
Appointment.serviceTypeexampleServiceType
Appointment.serviceType:appointmentTypeexampleServiceType
Appointment.serviceType:appointmentType.codingrequiredAppointmentServiceType
Appointment.specialtypreferredPracticeSettingCodeValueSet
Appointment.appointmentTyperequiredAppointmentTypeCodes
Appointment.reasonCoderequiredAppointmentReason
Appointment.participant.typeextensibleParticipantType
Appointment.participant.requiredrequiredParticipantRequired
Appointment.participant.statusrequiredParticipationStatus

Constraints

IdGradePathDetailsRequirements
responsible-1errorAppointmentEnsuring that responsible entity is a participating party
: (extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-responsible').value.reference in participant.extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-ext-careteam').value.reference) or (extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-responsible').value.reference in participant.actor.reference)
max-participantswarningAppointmentToo many intended participants
: extension.where(url = 'http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-max-participants').exists() implies participant.actor.where(reference.startsWith('#').not()).count() <= extension.where(url = 'http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-max-participants').valueInteger
min-participantswarningAppointmentToo few intended participants
: extension.where(url = 'http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-min-participants').exists() implies participant.actor.where(reference.startsWith('#').not()).count() >= extension.where(url = 'http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-min-participants').valueInteger
governance-1errorAppointment.extension:legalBasisWhen extension is used a Episode of Care MUST be referenced
: %resource.supportingInformation.reference.contains('EpisodeOfCare/')
responsible-2errorAppointment.extension:legalBasisBoth performing organization and responsible organization must be populated when legal basis is used
: %resource.extension.where(url = 'http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-performing-organization').exists() and %resource.extension.where(url = 'http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-responsible-organization').exists()