ISiKKalender (Schedule)


Motivation

Das Datenobjekt ISiKKalender bietet die Möglichkeit Kalender für verschiedene Akteure (Practitioner, Device, HealthcareService) zu exponieren, sodass für die Ressourcen Termine gebucht werden können.


Kompatibilität

Siehe Kompatibilität.


FHIR-Profil

NameCanonical
ISiKKalenderhttps://gematik.de/fhir/isik/StructureDefinition/ISiKKalender

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
id0..1string
extensionI0..0Extension
url1..1uri
valueBase64Binarybase64Binary
valueBooleanboolean
valueCanonicalcanonical()
valueCodecode
valueDatedate
valueDateTimedateTime
valueDecimaldecimal
valueIdid
valueInstantinstant
valueIntegerinteger
valueMarkdownmarkdown
valueOidoid
valuePositiveIntpositiveInt
valueTimetime
valueUnsignedIntunsignedInt
valueUriuri
valueUrlurl
valueUuiduuid
valueAddressAddress
valueAgeAge
valueAnnotationAnnotation
valueAttachmentAttachment
valueCodeableConceptCodeableConcept
valueCodingCoding
valueContactPointContactPoint
valueCountCount
valueDistanceDistance
valueDurationDuration
valueHumanNameHumanName
valueIdentifierIdentifier
valueMoneyMoney
valuePeriodPeriod
valueQuantityQuantity
valueRangeRange
valueRatioRatio
valueSampledDataSampledData
valueSignatureSignature
valueTimingTiming
valueContactDetailContactDetail
valueContributorContributor
valueDataRequirementDataRequirement
valueExpressionExpression
valueParameterDefinitionParameterDefinition
valueRelatedArtifactRelatedArtifact
valueTriggerDefinitionTriggerDefinition
valueUsageContextUsageContext
valueDosageDosage
valueMetaMeta
valueReferenceReference()
valueString1..1string
KalenderNameS I0..1Extension(string)
modifierExtension?! I0..*Extension
identifierΣ0..*Identifier
activeS Σ ?!1..1boolean
serviceCategoryΣ0..*CodeableConcept
id0..1string
extensionI0..*Extension
codingΣ0..*Coding
textS Σ0..1string
id0..1string
extensionI0..*Extension
FachrichtungS Σ1..1CodingBinding
ErweiterterFachabteilungsschluesselΣ0..1CodingBinding
textΣ0..1string
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierS Σ0..1Identifier
displayS Σ0..1string
id0..1string
extensionI0..*Extension
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
planningHorizonΣ I0..1Period
comment0..1string

Folgende FHIRPath-Constraints sind im Profil zu beachten:


Terminology Bindings

PathNameStrengthURL
Schedule.specialty.codinghe-d.de/ValueSets/IHEXDSpracticeSettingCoderequiredhttp://ihe-d.de/ValueSets/IHEXDSpracticeSettingCode
Schedule.specialty.codingdkgev/Fachabteilungsschluessel-erweitertrequiredhttp://fhir.de/ValueSet/dkgev/Fachabteilungsschluessel-erweitert

Anmerkungen zu Must-Support-Feldern

Schedule.extension:KalenderName

Bedeutung: Gebräuchlicher Name des Kalenders

Hinweis: Im alltäglichen Kontext besitzen Kalender neben der Zugehörigkeit zu einer Ressource teilweise einen Namen. Dieser muss nicht zwingend ein eineindeutiger Identifier sein. Aufgrund dessen kann dieser Name zusätzlich abgebildet werden. Falls kein Name angegeben wird, kann ein Termin-Consumer einen Namen z.B. aus den Elementen "serviceType" oder "specialty" für Anzeigezwecke ableiten.

Schedule.active

Bedeutung: Ist der Kalender in aktiver Verwendung?

Hinweis: Historische Kalender können ebenfalls über die ISiK-Schnittstelle ausgetauscht werden. Für diese dürfen jedoch keine Termine vereinbart werden. Das terminführende System MUSS dies bei der Buchung überprüfen.

Schedule.serviceType

Bedeutung: Welche Besuchsgründe / Behandlungsleistungen werden durch diesen Kalender erfasst?

Hinweis: Die Besuchsgründe / Behandlungsleistungen SOLLEN im Schedule angegeben werden, falls unter Schedule.actor nur Referenzen mit Referenz.display angegeben werden oder direkt auf einen Practitioner referenziert wird. Im Falle, dass ein HealthcareService referenziert wird, SOLLEN die gleichen Informationen wie in HealthcareService.type angegeben werden. Seitens der aktuellen Spezifikation werden keine Vorgaben bezüglich der zu verwendenden Terminologie gemacht. Entsprechend verwendete Kataloge müssen als CodeSystem-Ressource exponiert werden.

Schedule.specialty

Bedeutung: Welche Fachrichtung(en) führen die Behandlungsleistungen, die durch diesen Kalender erfasst werden, aus?

Hinweis: Die Fachrichtung(en) SOLL(EN) im Schedule angegeben werden, falls unter Schedule.actor nur Referenzen mit Referenz.display angegeben werden oder direkt auf einen Practitioner referenziert wird. Im Falle, dass ein HealthcareService referenziert wird, SOLLEN die gleichen Informationen wie in HealthcareService.specialty angegeben werden.

Schedule.actor

Bedeutung: Für welche Akteure wird der Kalender geführt?

Hinweis: Nicht alle Target-Ressourcen dieser Referenz existieren als Profil innerhalb des ISiK-Basismoduls oder ISiK-Terminplanung. Für alle Target-Ressourcen SOLL ein Displaywert für die Referenz angegeben werden. Nur für HealthcareService und Practitioner MUSS Reference.reference angegeben werden.


Interaktionen

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

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

    Beispiele:

    GET [base]/Schedule?_id=103270

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

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

    Beispiele:

    GET [base]/Schedule?active=true

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

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

    Beispiele:

    GET [base]/Schedule?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]/Schedule?specialty=urn:oid:1.2.276.0.76.5.114|535

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

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

    Beispiele:

    GET [base]/Schedule?actor=Practitioner/ISiKPractitionerExample

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


Beispiele

{
    "resourceType": "Schedule",
    "id": "ISiKKalenderExample",
    "meta": {
        "profile":  [
            "https://gematik.de/fhir/isik/StructureDefinition/ISiKKalender"
        ]
    },
    "active": true,
    "serviceType":  [
        {
            "coding":  [
                {
                    "code": "124",
                    "system": "http://terminology.hl7.org/CodeSystem/service-type"
                }
            ]
        }
    ],
    "specialty":  [
        {
            "coding":  [
                {
                    "code": "ALLG",
                    "system": "http://ihe-d.de/CodeSystems/AerztlicheFachrichtungen"
                }
            ]
        }
    ],
    "actor":  [
        {
            "reference": "Practitioner/example",
            "display": "Dr. Fleming"
        }
    ]
}

Ein Beispiel zu einer gebündelten Suchabfrage auf einen Slot (wie in ISiKKalender.actor erwähnt) ist folgende:

GET https://example.org/fhir/Slot?schedule.actor:HealthcareService.type=http://dicom.nema.org/resources/ontology/DCM|CT&schedule.actor:Location.name=RaumXYZ