ISiKTermin (Appointment)


Motivation

Das Datenobjekte ISiKTermin repräsentiert einen gebuchten Termin, sowie einen Terminvorschlag.


Kompabilität

Siehe Kompabilität.


FHIR-Profil

NameCanonical
ISiKTerminhttps://gematik.de/fhir/ISiK/v2/StructureDefinition/ISiKTermin

versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileΣ0..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
SourceS Σ0..1CodingBinding
NachrichtS I0..*Extension(Reference(ISiKNachricht))
replacesS I0..1Extension(Reference(Appointment))
identifierΣ0..*Identifier
statusS Σ ?!1..1codeBinding
cancelationReasonS Σ0..1CodeableConceptBinding
serviceCategoryΣ0..*CodeableConcept
serviceTypeS Σ1..*CodeableConcept
FachrichtungS Σ1..1CodeableConceptBinding
appointmentTypeΣ0..1CodeableConceptBinding
reasonCodeΣ0..*CodeableConceptBinding
reasonReferenceI0..*Reference(Condition | Procedure | Observation | ImmunizationRecommendation)
PriorityS I0..1Extension(CodeableConcept)
description0..1string
supportingInformationI0..*Reference(Resource)
startS Σ1..1instant
endS Σ1..1instant
minutesDuration0..1positiveInt
slotS I0..*Reference(Slot)
created0..1dateTime
commentS0..1string
patientInstructionS0..1string
basedOnI0..*Reference(ServiceRequest)
typeΣ0..*CodeableConceptBinding
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayS Σ1..1string
requiredΣ0..1codeBinding
statusS Σ1..1codeBinding
periodI0..1Period
typeΣ0..*CodeableConceptBinding
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
requiredΣ0..1codeBinding
statusΣ1..1codeBinding
periodI0..1Period
typeΣ0..*CodeableConceptBinding
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
requiredΣ0..1codeBinding
statusΣ1..1codeBinding
periodI0..1Period
typeΣ0..*CodeableConceptBinding
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
requiredΣ0..1codeBinding
statusΣ1..1codeBinding
periodI0..1Period
requestedPeriodI0..*Period

Folgende FHIRPath-Constraints sind im Profil zu beachten:

keyseverityhumanexpression
ISiK-app-1errorDer Endzeitpunkt eines Termins sollte nach dem Startzeitpunkt liegenstart <= end

Terminology Bindings

PathNameStrengthURL
Appointment.meta.tagcommon-meta-tag-derequiredhttp://fhir.de/ValueSet/common-meta-tag-de
Appointment.statusISiKTerminStatusrequiredhttps://gematik.de/fhir/ISiK/v2/ValueSet/ISiKTerminStatus
Appointment.cancelationReasonISiKTerminCancelationReasonrequiredhttps://gematik.de/fhir/ISiK/v2/ValueSet/ISiKTerminCancelationReason
Appointment.specialtyhe-d.de/ValueSets/IHEXDSauthorSpecialityrequiredhttp://ihe-d.de/ValueSets/IHEXDSauthorSpeciality

Anmerkungen zu Must-Support-Feldern

Appointment.meta.tag

Bedeutung: Herkunft der Termnins

Hinweis: Angabe ob der Termin durch einen externen Termin Requestor eingestellt wurde. Falls das Datenobjekt dauerhaft in das Termin Repository gespeichert wird, MUSS der Tag entfernt werden. Des Weiteren gelten die Vorgaben des ISiK Basismoduls zur CREATE-Interaktion.

Appointment.extension:Nachricht

Bedeutung: Kommunikation mit der PatientIn

Hinweis: Das Element "comment" dient auschließlich für die Kommunikation zwischen den LeistungserbringerInnen. Für die Kommunikation mit der PatientIn sind Communication-Ressourcen zu verwenden. Für den Termin relevante Referenzen MÜSSEN angegeben werden.

Appointment.extension:replaces

Bedeutung: Angabe eines abgesagten / verschobenen Termins

Hinweis: Im Falle, dass per $book-Operation ein verschobener / abgesagter Termin angegeben wird, MUSS dieser für die Rückverfolgbarkeit referenziert werden.

Appointment.status

Bedeutung: Differenzierung zwischen Terminwunsch und gebuchten Termin

Hinweis: Ein Termin Requestor kann im Status entsprechend wählen, sodass der Termin als Terminwunsch zu interpretieren ist. Nachdem der Termin bestätigt wurde, ist der Terminstatus durch das Terminrepository anzupassen.

Alle Statuswerte MÜSSEN durch ein bestätigungsrelevantes System unterstüzt werden, inbesondere der Status "proposed" und "booked".

Appointment.cancelationReason

Bedeutung: Grund für die Absage eines Termin

Hinweis: Eine minimale Kodierung MUSS mittels des vorgeschlagenen Bindings vorliegen. Granularere Differenzierungen können durch weitere Codings erfolgen.

Appointment.serviceType

Bedeutung: Kodierung der Behandlungsleistung des Termins

Hinweis: Dies SOLLTE der Kodierung des serviceType des Schedules entsprechend innerhalb dessen der Termin bebucht wird.

Appointment.specialty

Bedeutung: Kodierung der Fachrichtung des Termins

Hinweis: Dies SOLLTE der Kodierung des specialty des Schedules entsprechend innerhalb dessen der Termin bebucht wird.

Appointment.priority.extension:Priority

Bedeutung: Kodierte Angabe der Priorität des Termins

Hinweis: Anstelle der numerischen Priorität MUSS in ISiK eine kodierte Priorität angegeben werden.

Appointment.start

Bedeutung: Startzeitpunkt des Termin

Hinweis: Dies MUSS dem Startzeitpunkt des ersten Slots des Termins entsprechen

Appointment.end

Bedeutung: Endzeitpunkt des Termin

Hinweis: Dies MUSS dem Endzeitpunkt des letzten Slots des Termins entsprechen

Appointment.slot

Bedeutung: Referenzierung der Slots für die Verknüpfung des Termins mit einem Schedule

Hinweis: Die Referenzierung des Schedules kann durch einen oder mehrere Slots erfolgen. Falls mehrere Slots referenziert werden, MÜSSEN diese den gleichen Schedule referenzieren. Es kann keine Reihenfolge durch die Angabe der Slots abgeleitet werden.

Appointment.comment

Bedeutung: Interner Kommentar der LeistungserbingerIn

Hinweis: Diese Kommentare KÖNNEN potentiell sensitive Angaben enthalten und SOLLTEN vor der Herausgabe an die PatientIn gefiltert werden.

Appointment.patientInstruction

Bedeutung: Handlungsanweisungen für die PatientIn in Vorbereitung auf den Termin

Appointment.participant

Bedeutung: TeilnehmerInnen des Termins

Hinweis: Mindestens eine Patient-Referenz MUSS angegeben werden. Dies MUSS durch das Termin-Repository während der Buchung des Termin geprüft werden. Weitere Leistungserbringer KÖNNEN angegeben werden.


Interaktionen

Für die Ressource Appointment MUSS die REST-Interaktion "READ" implementiert werden.

  1. Der Suchparameter "_id" MUSS unterstützt werden:

    Beispiele:

    GET [base]/Appointment?_id=103270

    Anwendungshinweise: Weitere Informationen zur Suche nach "_id" finden sich in der FHIR-Basisspezifikation - Abschnitt "Parameters for all resources".

  2. Der Suchparameter "status" MUSS unterstützt werden:

    Beispiele:

    GET [base]/Appointment?status=booked

    Anwendungshinweise: Weitere Informationen zur Suche nach "Appointment.status" finden sich in der FHIR-Basisspezifikation - Abschnitt "Token Search".

  3. Der Suchparameter "service-type" MUSS unterstützt werden:

    Beispiele:

    GET [base]/Appointment?service-type=http://example.org/fhir/CodeSystem/ScheduleServiceType|CT

    Anwendungshinweise: Weitere Informationen zur Suche nach "Schedule.serviceType" finden sich in der FHIR-Basisspezifikation - Abschnitt "Token Search".

  4. Der Suchparameter "specialty" MUSS unterstützt werden:

    Beispiele:

    GET [base]/Appointment?specialty=urn:oid:1.2.276.0.76.5.114|535

    Anwendungshinweise: Weitere Informationen zur Suche nach "Appointment.specialty" finden sich in der FHIR-Basisspezifikation - Abschnitt "Token Search".

  5. Der Suchparameter "date" MUSS unterstützt werden:

    Beispiele:

    GET [base]/Appointment?date=2022-12-10T09:00:00Z

    Anwendungshinweise: Weitere Informationen zur Suche nach "Appointment.start" finden sich in der FHIR-Basisspezifikation - Abschnitt "Date Search".

  6. Der Suchparameter "slot" MUSS unterstützt werden:

    Beispiele:

    GET [base]/Appointment?slot=Slot/ISiKSlotExample

    Anwendungshinweise: Weitere Informationen zur Suche nach "Appointment.slot" finden sich in der FHIR-Basisspezifikation - Abschnitt "reference".

  7. Der Suchparameter "actor" MUSS unterstützt werden:

    Beispiele:

    GET [base]/Appointment?actor=Patient/ISiKPatientExample

    Anwendungshinweise: Weitere Informationen zur Suche nach "Appointment.participant.actor" finden sich in der FHIR-Basisspezifikation - Abschnitt "reference".


Beispiele

{
    "resourceType": "Appointment",
    "id": "ISiKTerminExample",
    "meta": {
        "tag":  [
            {
                "code": "external",
                "system": "http://fhir.de/CodeSystem/common-meta-tag-de"
            }
        ],
        "profile":  [
            "https://gematik.de/fhir/ISiK/v2/StructureDefinition/ISiKTermin"
        ]
    },
    "extension":  [
        {
            "url": "https://gematik.de/fhir/ISiK/v2/StructureDefinition/ISiKNachrichtExtension",
            "valueReference": {
                "reference": "Communication/ISiKNachrichtExample"
            }
        }
    ],
    "status": "proposed",
    "start": "2022-12-10T09:00:00Z",
    "end": "2022-12-10T11:00:00Z",
    "slot":  [
        {
            "reference": "ISiKSlotExample"
        }
    ],
    "comment": "Dies ist ein Test Kommentar!",
    "serviceType":  [
        {
            "coding":  [
                {
                    "code": "124",
                    "system": "http://terminology.hl7.org/CodeSystem/service-type"
                }
            ]
        }
    ],
    "specialty":  [
        {
            "coding":  [
                {
                    "code": "010",
                    "system": "urn:oid:1.2.276.0.76.5.114"
                }
            ]
        }
    ],
    "participant":  [
        {
            "actor": {
                "display": "Test Patient",
                "reference": "Patient/example"
            },
            "status": "accepted"
        }
    ],
    "_priority": {
        "extension":  [
            {
                "url": "https://gematik.de/fhir/ISiK/v2/StructureDefinition/ISiKTerminPriorityExtension",
                "valueCodeableConcept": {
                    "coding":  [
                        {
                            "code": "25876001",
                            "system": "http://snomed.info/sct"
                        }
                    ]
                }
            }
        ]
    }
}