ISiKTermin (Appointment)

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

Bestätigungsrelevanz

VerbindlichkeitSHALL

Metadaten

Canonicalhttps://gematik.de/fhir/isik/StructureDefinition/ISiKTermin
Statusactive
Version5.0.0-rc
Basishttp://hl7.org/fhir/StructureDefinition/Appointment

Inhalt

idΣ0..1string
id0..1string
extensionI0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileΣ0..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
SourceS Σ0..1CodingBinding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
replacesS I0..1Extension(Reference(Appointment))
modifierExtension?! I0..*Extension
identifierΣ0..*Identifier
statusS Σ ?!1..1codeBinding
cancelationReasonS Σ0..1CodeableConceptBinding
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
appointmentTypeΣ0..1CodeableConceptBinding
reasonCodeΣ0..*CodeableConceptBinding
reasonReference0..*Reference(Condition | Procedure | Observation | ImmunizationRecommendation)
id0..1string
PriorityS I0..1Extension(CodeableConcept)
value0..1System.String
description0..1string
supportingInformation0..*Reference(Resource)
startS Σ0..1instant
endS Σ0..1instant
minutesDuration0..1positiveInt
id0..1string
extensionI0..*Extension
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
created0..1dateTime
commentS0..1string
patientInstructionS0..1string
basedOn0..*Reference(ServiceRequest)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
typeΣ0..*CodeableConceptBinding
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayS Σ0..1string
requiredΣ0..1codeBinding
statusS Σ1..1codeBinding
period0..1Period
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
typeΣ0..*CodeableConceptBinding
id0..1string
extensionI0..*Extension
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
requiredΣ0..1codeBinding
statusΣ1..1codeBinding
period0..1Period
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
typeΣ0..*CodeableConceptBinding
id0..1string
extensionI0..*Extension
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
requiredΣ0..1codeBinding
statusΣ1..1codeBinding
period0..1Period
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
typeΣ0..*CodeableConceptBinding
id0..1string
extensionI0..*Extension
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
requiredΣ0..1codeBinding
statusΣ1..1codeBinding
period0..1Period
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
typeΣ0..*CodeableConceptBinding
id0..1string
extensionI0..*Extension
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
requiredΣ0..1codeBinding
statusΣ1..1codeBinding
period0..1Period
requestedPeriod0..*Period
<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="ISiKTermin" />
    <url value="https://gematik.de/fhir/isik/StructureDefinition/ISiKTermin" />
    <version value="5.0.0-rc" />
    <name value="ISiKTermin" />
    <status value="active" />
    <experimental value="false" />
    <date value="2025-04-09" />
    <publisher value="gematik GmbH" />
    <description value="Das Datenobjekte ISiKTermin repr&#228;sentiert einen gebuchten Termin, sowie einen Terminvorschlag." />
    <fhirVersion value="4.0.1" />
    <kind value="resource" />
    <abstract value="false" />
    <type value="Appointment" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Appointment" />
    <derivation value="constraint" />
    <differential>
        <element id="Appointment">
            <path value="Appointment" />
            <constraint>
                <key value="ISiK-app-1" />
                <severity value="error" />
                <human value="Der Endzeitpunkt eines Termins MUSS nach dem Startzeitpunkt liegen" />
                <expression value="start &lt;= end" />
                <source value="https://gematik.de/fhir/isik/StructureDefinition/ISiKTermin" />
            </constraint>
        </element>
        <element id="Appointment.meta">
            <path value="Appointment.meta" />
            <comment value="Ein Tag kann verwendet werden um zu kennzeichnen, dass die Ressource von Extern erstellt worden ist." />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.meta.tag">
            <path value="Appointment.meta.tag" />
            <slicing>
                <discriminator>
                    <type value="pattern" />
                    <path value="$this" />
                </discriminator>
                <rules value="open" />
            </slicing>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.meta.tag:Source">
            <path value="Appointment.meta.tag" />
            <sliceName value="Source" />
            <min value="0" />
            <max value="1" />
            <mustSupport value="true" />
            <binding>
                <strength value="required" />
                <valueSet value="http://fhir.de/ValueSet/common-meta-tag-de" />
            </binding>
        </element>
        <element id="Appointment.extension">
            <path value="Appointment.extension" />
            <comment value="Begr&#252;ndung zum Must Support: Termineabsagen sollten verkettbar sein, da am originalen Termin noch weitere Informationen h&#228;ngen k&#246;nnen." />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.extension:replaces">
            <path value="Appointment.extension" />
            <sliceName value="replaces" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://hl7.org/fhir/5.0/StructureDefinition/extension-Appointment.replaces" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.status">
            <path value="Appointment.status" />
            <comment value="Begr&#252;ndung zu Must Support : Im ISiK Kontext ist der Status eines Termins von entscheidender Bedeutung, um den aktuellen Stand und die Verf&#252;gbarkeit des Termins zu kommunizieren." />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.cancelationReason">
            <path value="Appointment.cancelationReason" />
            <comment value="Begr&#252;ndung zu Must Support: Dieses Feld ist optional (0..1), muss jedoch implementiert werden (MS), um die M&#246;glichkeit zu bieten, einen Grund f&#252;r die Absage eines Termins zu hinterlegen." />
            <mustSupport value="true" />
            <binding>
                <strength value="required" />
                <valueSet value="https://gematik.de/fhir/isik/ValueSet/ISiKTerminCancelationReason" />
            </binding>
        </element>
        <element id="Appointment.serviceType">
            <path value="Appointment.serviceType" />
            <comment value="Begr&#252;ndung zu Kardinalit&#228;t und Must Support: Die Dienstleistungsart eines Termins ist von entscheidender Bedeutung, um die Verf&#252;gbarkeit und Planung des Termins zu gew&#228;hrleisten. Daher ist dieses Feld verpflichtend (1..*) und muss unterst&#252;tzt werden (MS). Aufgrund der Heterogenit&#228;t von Dienstleistungen ist eine standardisierte Kodierung nicht zwingend notwendig, eine Freitextbeschreibung ist ausreichend." />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.serviceType.text">
            <path value="Appointment.serviceType.text" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.specialty">
            <path value="Appointment.specialty" />
            <comment value="Optionale Angabe aller Fachbereiche aus denen ein oder mehrere Akteure f&#252;r die Durchf&#252;hrung des Termins ben&#246;tigt werden. \n  \n  Begr&#252;ndung zu Kardinalit&#228;t und Must Support: KANN auch anhand des Kalenders, in dem ein Termin gebucht wird, ermittelt werden.\n  Die Angabe der Fachbereiche ist optional (0..*), muss jedoch implementiert werden (MS), um die Spezialisierung hinsichtlich der zugeordneten Behandlungseinheit des Termins eindeutig zu definieren und eine korrekte Zuordnung zu gew&#228;hrleisten." />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.specialty.coding">
            <path value="Appointment.specialty.coding" />
            <slicing>
                <discriminator>
                    <type value="pattern" />
                    <path value="$this" />
                </discriminator>
                <rules value="open" />
            </slicing>
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.specialty.coding:Fachrichtung">
            <path value="Appointment.specialty.coding" />
            <sliceName value="Fachrichtung" />
            <comment value="Begr&#252;ndung zur Kardinalit&#228;t: Die Kardinalit&#228;t der Fachrichtung-Eigenschaft wird auf 1..1 festgelegt, um sicherzustellen, dass genau eine Fachrichtung vorhanden ist. Dies ist notwendig, um die Spezialisierung des Termins eindeutig zu definieren und eine korrekte Zuordnung zu gew&#228;hrleisten.\n  \n  Hintergrund zur Entscheidung: Die Wahl des hinterlegten ValueSets (http://ihe-d.de/ValueSets/IHEXDSpracticeSettingCode) wurde mit einem Mitglied der IHE Deutschland Arbeitsgruppe XDS ValueSets (https://www.ihe-d.de/projekte/xds-value-sets-fuer-deutschland/) sowie mit der KBV abgestimmt (Stand:13.6.2024)." />
            <min value="1" />
            <max value="1" />
            <mustSupport value="true" />
            <binding>
                <strength value="required" />
                <valueSet value="http://ihe-d.de/ValueSets/IHEXDSpracticeSettingCode" />
            </binding>
        </element>
        <element id="Appointment.specialty.coding:ErweiterterFachabteilungsschluessel">
            <path value="Appointment.specialty.coding" />
            <sliceName value="ErweiterterFachabteilungsschluessel" />
            <comment value="Dieses ValueSet KANN &#252;ber ein Mapping (siehe Abschnitt https://wiki.hl7.de/index.php?title=IG:Value_Sets_f%C3%BCr_XDS#DocumentEntry.practiceSettingCode) mit dem ValueSet der Fachrichtung verkn&#252;pft werden und dar&#252;ber ggf. die Integration von Systemen erleichtern." />
            <min value="0" />
            <max value="1" />
            <binding>
                <strength value="required" />
                <valueSet value="http://fhir.de/ValueSet/dkgev/Fachabteilungsschluessel-erweitert" />
            </binding>
        </element>
        <element id="Appointment.priority">
            <path value="Appointment.priority" />
            <comment value="Begr&#252;ndung Must Support: Die Priorit&#228;t eines Termins ist von entscheidender Bedeutung, um die Dringlichkeit und Relevanz des Termins zu kommunizieren und zu priorisieren. Eine Priorit&#228;t ist nicht zwingend erforderlich, muss jedoch implementiert werden (MS), um die M&#246;glichkeit zu bieten, die Dringlichkeit und Relevanz des Termins abzurufen." />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.priority.extension">
            <path value="Appointment.priority.extension" />
            <comment value="Hinweis: In R5 ist die Priority ein CodeableConcept. \n  \n  Begr&#252;ndung zu Must Support: Dieses Element ist optional (0..1), muss jedoch implementiert werden (MS), um besonders einen Notfall als solchen ausweisen zu k&#246;nnen." />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.priority.extension:Priority">
            <path value="Appointment.priority.extension" />
            <sliceName value="Priority" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="https://gematik.de/fhir/isik/StructureDefinition/ISiKTerminPriorityExtension" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.start">
            <path value="Appointment.start" />
            <comment value="Begr&#252;ndung zu Kardinalit&#228;t und Must Support: Der Startzeitpunkt eines Termins ist von entscheidender Bedeutung, um die Verf&#252;gbarkeit und Planung des Termins zu gew&#228;hrleisten. Daher muss dieses Feld unterst&#252;tzt werden (MS). Das Feld ist in den meisten F&#228;llen verpflichtend, nur f&#252;r die Status &#39;proposed&#39;, &#39;cancelled&#39;, &#39;waitlist&#39; existiert kein Wert." />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.end">
            <path value="Appointment.end" />
            <comment value="Begr&#252;ndung zu Kardinalit&#228;t und Must Support: Der Endzeitpunkt eines Termins ist von entscheidender Bedeutung, um die Verf&#252;gbarkeit und Planung des Termins zu gew&#228;hrleisten. Daher muss dieses Feld unterst&#252;tzt werden (MS). Das Feld ist in den meisten F&#228;llen verpflichtend, nur f&#252;r die Status &#39;proposed&#39;, &#39;cancelled&#39;, &#39;waitlist&#39; existiert kein Wert." />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.slot">
            <path value="Appointment.slot" />
            <comment value="Begr&#252;ndung zu Kardinalit&#228;t und Must Support: Die Kardinalit&#228;t der slot-Eigenschaft bleibt 0..*, sodass ein Termin-Requestor bei der Terminbuchung nur einen Termin und ein Verweis auf ein ISiKKalender &#252;bergeben kann. Es ist dann die Aufgabe des Termin-Repositories in Abh&#228;ngigkeit der gebuchten Dienstleistung freie Terminbl&#246;cke zu finden. Diese sind im Appointment zu referenzieren." />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.slot.reference">
            <path value="Appointment.slot.reference" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.comment">
            <path value="Appointment.comment" />
            <comment value="Hinweis: Im ISiK Kontext sollte dieses Feld zur internen Kommunikation zwischen Leistungserbringern verwendet werden, z.B. f&#252;r interne Notizen rund um den Termin.\n\nBegr&#252;ndung zum Must Support: Dieses Feld ist optional (0..1), muss jedoch implementiert werden (MS), um die M&#246;glichkeit zu bieten, zus&#228;tzliche Informationen zum Termin zu hinterlegen und abrufen zu k&#246;nnen. \n\nEs gilt weiterhin die Semantik des Elements nach FHIR-Kernspezifikation:\n\n&#39;Additional text to aid in facilitating the appointment. For instance, a comment might be, &#39;patient should proceed immediately to infusion room upon arrival&#39;\n\nWhere this is a planned appointment and the start/end dates are not set then this field can be used to provide additional guidance on the details of the appointment request, including any restrictions on when to book it.&#39;" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.patientInstruction">
            <path value="Appointment.patientInstruction" />
            <comment value="Hinweis: Dieses Feld sollte im Kontext von ISIK verwendet werden f&#252;r die Kommunikation im Sinne der Definition der FHIR-Kernspezifikation - sowohl von Systemseite (administrativ) als auch von Seiten des medizinischen Fachpersonals.\n\nBeispiel f&#252;r eine Nachricht: &#39;Bitte n&#252;chtern erscheinen&#39; etc.\n\nBegr&#252;ndung zum Must Support: Dieses Feld ist optional (0..1), muss jedoch implementiert werden (MS), um die M&#246;glichkeit zu bieten, zus&#228;tzliche Informationen f&#252;r Patienten zum Termin zu hinterlegen und abrufen zu k&#246;nnen. \n\nEs gilt weiterhin der Hinweis der FHIR Kernspezifikation:\n&#39;Note that FHIR strings SHALL NOT exceed 1MB in size&#39;" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant">
            <path value="Appointment.participant" />
            <slicing>
                <discriminator>
                    <type value="type" />
                    <path value="actor.resolve()" />
                </discriminator>
                <rules value="open" />
            </slicing>
            <comment value="Hinweis: Die Kardinalit&#228;t von actor.display und das MS-Flag von .status wird an die Slices vererbt und diese sind entsprechend zu implementieren.\n\nBegr&#252;ndung zu Kardinalit&#228;t und Must Support: Die Teilnehmer eines Termins sind von entscheidender Bedeutung, um die Verf&#252;gbarkeit und Planung des Termins zu gew&#228;hrleisten. Daher muss dieses Feld unterst&#252;tzt werden (MS)." />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant.actor">
            <path value="Appointment.participant.actor" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant.actor.display">
            <path value="Appointment.participant.actor.display" />
            <comment value="Hinweis: F&#252;r alle Target-Ressourcen SOLL ein Displaywert f&#252;r die Referenz angegeben werden, sodass Systeme eine &#220;bersicht der am Termin beteiligten Akteure anzeigen k&#246;nnen ohne die Referenzen aufl&#246;sen zu m&#252;ssen. Somit kann ein Termin-Consumer direkt anzeigen welche Akteure f&#252;r den Termin relevant sind." />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant.status">
            <path value="Appointment.participant.status" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant:AkteurPatient">
            <path value="Appointment.participant" />
            <sliceName value="AkteurPatient" />
            <comment value="Hinweis: Im ISIK-Kontext MUSS der referenzierte Patient konform zum [ISIKPatient](https://gematik.de/fhir/isik/StructureDefinition/ISiKPatient) des Basismoduls sein. Ein Sonderfall sind Patienten, &#252;ber die ein Termin-Requestor oder Termin-Repository nur rudiment&#228;re Informationen verf&#252;gt. Diese Patienten-Ressourcen sind bis zur Vervollst&#228;ndigung nur gegen den Kernstandard valide.\n\nBegr&#252;ndung zu Kardinalit&#228;t und Must Support: Die teilnehmenden Patienten eines Termins sind von entscheidender Bedeutung, um die Verf&#252;gbarkeit und Planung des Termins zu gew&#228;hrleisten. Daher muss dieses Feld unterst&#252;tzt werden (MS). Hingegen kann die Patienten-Referenz separat in der $book-Operation &#252;bergeben werden, sodass hier keine verpflichtende Kardinalti&#228;t gew&#228;hlt werden kann." />
            <min value="0" />
            <max value="*" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant:AkteurPatient.actor">
            <path value="Appointment.participant.actor" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
            </type>
        </element>
        <element id="Appointment.participant:AkteurPatient.actor.reference">
            <path value="Appointment.participant.actor.reference" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant:AkteurPersonImGesundheitsberuf">
            <path value="Appointment.participant" />
            <sliceName value="AkteurPersonImGesundheitsberuf" />
            <comment value="Im ISIK-Kontext MUSS die referenzierte RelatedPerson-Ressource konform zum [ISiKAngehoeriger](https://gematik.de/fhir/isik/StructureDefinition/ISiKAngehoeriger) des Basismoduls sein.\n\nBegr&#252;ndung zu Kardinalit&#228;t und Must Support: Die Angabe eines Angeh&#246;rigen ist optional, da in vielen F&#228;llen die Referenzierung des Patienten ausreichend ist. Bei Terminen, die durch einen Angeh&#246;rigen gebucht/verwaltet werden, ist es jedoch wichtig, dass diese Information an das Termin-Repository &#252;bermittelt werden kann." />
            <min value="0" />
            <max value="*" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant:AkteurPersonImGesundheitsberuf.actor">
            <path value="Appointment.participant.actor" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Practitioner" />
            </type>
        </element>
        <element id="Appointment.participant:AkteurPersonImGesundheitsberuf.actor.reference">
            <path value="Appointment.participant.actor.reference" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant:AkteurMedizinischeBehandlungseinheit">
            <path value="Appointment.participant" />
            <sliceName value="AkteurMedizinischeBehandlungseinheit" />
            <min value="0" />
            <max value="*" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant:AkteurMedizinischeBehandlungseinheit.actor">
            <path value="Appointment.participant.actor" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/HealthcareService" />
            </type>
        </element>
        <element id="Appointment.participant:AkteurMedizinischeBehandlungseinheit.actor.reference">
            <path value="Appointment.participant.actor.reference" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant:Angehoeriger">
            <path value="Appointment.participant" />
            <sliceName value="Angehoeriger" />
            <min value="0" />
            <max value="*" />
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant:Angehoeriger.actor">
            <path value="Appointment.participant.actor" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson" />
            </type>
        </element>
        <element id="Appointment.participant:Angehoeriger.actor.reference">
            <path value="Appointment.participant.actor.reference" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
    </differential>
</StructureDefinition>
{
    "resourceType": "StructureDefinition",
    "id": "ISiKTermin",
    "url": "https://gematik.de/fhir/isik/StructureDefinition/ISiKTermin",
    "version": "5.0.0-rc",
    "name": "ISiKTermin",
    "status": "active",
    "experimental": false,
    "date": "2025-04-09",
    "publisher": "gematik GmbH",
    "description": "Das Datenobjekte ISiKTermin repräsentiert einen gebuchten Termin, sowie einen Terminvorschlag.",
    "fhirVersion": "4.0.1",
    "kind": "resource",
    "abstract": false,
    "type": "Appointment",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Appointment",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "Appointment",
                "path": "Appointment",
                "constraint":  [
                    {
                        "key": "ISiK-app-1",
                        "severity": "error",
                        "human": "Der Endzeitpunkt eines Termins MUSS nach dem Startzeitpunkt liegen",
                        "expression": "start <= end",
                        "source": "https://gematik.de/fhir/isik/StructureDefinition/ISiKTermin"
                    }
                ]
            },
            {
                "id": "Appointment.meta",
                "path": "Appointment.meta",
                "comment": "Ein Tag kann verwendet werden um zu kennzeichnen, dass die Ressource von Extern erstellt worden ist.",
                "mustSupport": true
            },
            {
                "id": "Appointment.meta.tag",
                "path": "Appointment.meta.tag",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "pattern",
                            "path": "$this"
                        }
                    ],
                    "rules": "open"
                },
                "mustSupport": true
            },
            {
                "id": "Appointment.meta.tag:Source",
                "path": "Appointment.meta.tag",
                "sliceName": "Source",
                "min": 0,
                "max": "1",
                "mustSupport": true,
                "binding": {
                    "strength": "required",
                    "valueSet": "http://fhir.de/ValueSet/common-meta-tag-de"
                }
            },
            {
                "id": "Appointment.extension",
                "path": "Appointment.extension",
                "comment": "Begründung zum Must Support: Termineabsagen sollten verkettbar sein, da am originalen Termin noch weitere Informationen hängen können.",
                "mustSupport": true
            },
            {
                "id": "Appointment.extension:replaces",
                "path": "Appointment.extension",
                "sliceName": "replaces",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://hl7.org/fhir/5.0/StructureDefinition/extension-Appointment.replaces"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.status",
                "path": "Appointment.status",
                "comment": "Begründung zu Must Support : Im ISiK Kontext ist der Status eines Termins von entscheidender Bedeutung, um den aktuellen Stand und die Verfügbarkeit des Termins zu kommunizieren.",
                "mustSupport": true
            },
            {
                "id": "Appointment.cancelationReason",
                "path": "Appointment.cancelationReason",
                "comment": "Begründung zu Must Support: Dieses Feld ist optional (0..1), muss jedoch implementiert werden (MS), um die Möglichkeit zu bieten, einen Grund für die Absage eines Termins zu hinterlegen.",
                "mustSupport": true,
                "binding": {
                    "strength": "required",
                    "valueSet": "https://gematik.de/fhir/isik/ValueSet/ISiKTerminCancelationReason"
                }
            },
            {
                "id": "Appointment.serviceType",
                "path": "Appointment.serviceType",
                "comment": "Begründung zu Kardinalität und Must Support: Die Dienstleistungsart eines Termins ist von entscheidender Bedeutung, um die Verfügbarkeit und Planung des Termins zu gewährleisten. Daher ist dieses Feld verpflichtend (1..*) und muss unterstützt werden (MS). Aufgrund der Heterogenität von Dienstleistungen ist eine standardisierte Kodierung nicht zwingend notwendig, eine Freitextbeschreibung ist ausreichend.",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Appointment.serviceType.text",
                "path": "Appointment.serviceType.text",
                "mustSupport": true
            },
            {
                "id": "Appointment.specialty",
                "path": "Appointment.specialty",
                "comment": "Optionale Angabe aller Fachbereiche aus denen ein oder mehrere Akteure für die Durchführung des Termins benötigt werden. \n  \n  Begründung zu Kardinalität und Must Support: KANN auch anhand des Kalenders, in dem ein Termin gebucht wird, ermittelt werden.\n  Die Angabe der Fachbereiche ist optional (0..*), muss jedoch implementiert werden (MS), um die Spezialisierung hinsichtlich der zugeordneten Behandlungseinheit des Termins eindeutig zu definieren und eine korrekte Zuordnung zu gewährleisten.\n  ",
                "mustSupport": true
            },
            {
                "id": "Appointment.specialty.coding",
                "path": "Appointment.specialty.coding",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "pattern",
                            "path": "$this"
                        }
                    ],
                    "rules": "open"
                },
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Appointment.specialty.coding:Fachrichtung",
                "path": "Appointment.specialty.coding",
                "sliceName": "Fachrichtung",
                "comment": "Begründung zur Kardinalität: Die Kardinalität der Fachrichtung-Eigenschaft wird auf 1..1 festgelegt, um sicherzustellen, dass genau eine Fachrichtung vorhanden ist. Dies ist notwendig, um die Spezialisierung des Termins eindeutig zu definieren und eine korrekte Zuordnung zu gewährleisten.\n  \n  Hintergrund zur Entscheidung: Die Wahl des hinterlegten ValueSets (http://ihe-d.de/ValueSets/IHEXDSpracticeSettingCode) wurde mit einem Mitglied der IHE Deutschland Arbeitsgruppe XDS ValueSets (https://www.ihe-d.de/projekte/xds-value-sets-fuer-deutschland/) sowie mit der KBV abgestimmt (Stand:13.6.2024).",
                "min": 1,
                "max": "1",
                "mustSupport": true,
                "binding": {
                    "strength": "required",
                    "valueSet": "http://ihe-d.de/ValueSets/IHEXDSpracticeSettingCode"
                }
            },
            {
                "id": "Appointment.specialty.coding:ErweiterterFachabteilungsschluessel",
                "path": "Appointment.specialty.coding",
                "sliceName": "ErweiterterFachabteilungsschluessel",
                "comment": "Dieses ValueSet KANN über ein Mapping (siehe Abschnitt https://wiki.hl7.de/index.php?title=IG:Value_Sets_f%C3%BCr_XDS#DocumentEntry.practiceSettingCode) mit dem ValueSet der Fachrichtung verknüpft werden und darüber ggf. die Integration von Systemen erleichtern.",
                "min": 0,
                "max": "1",
                "binding": {
                    "strength": "required",
                    "valueSet": "http://fhir.de/ValueSet/dkgev/Fachabteilungsschluessel-erweitert"
                }
            },
            {
                "id": "Appointment.priority",
                "path": "Appointment.priority",
                "comment": "Begründung Must Support: Die Priorität eines Termins ist von entscheidender Bedeutung, um die Dringlichkeit und Relevanz des Termins zu kommunizieren und zu priorisieren. Eine Priorität ist nicht zwingend erforderlich, muss jedoch implementiert werden (MS), um die Möglichkeit zu bieten, die Dringlichkeit und Relevanz des Termins abzurufen.",
                "mustSupport": true
            },
            {
                "id": "Appointment.priority.extension",
                "path": "Appointment.priority.extension",
                "comment": "Hinweis: In R5 ist die Priority ein CodeableConcept. \n  \n  Begründung zu Must Support: Dieses Element ist optional (0..1), muss jedoch implementiert werden (MS), um besonders einen Notfall als solchen ausweisen zu können.",
                "mustSupport": true
            },
            {
                "id": "Appointment.priority.extension:Priority",
                "path": "Appointment.priority.extension",
                "sliceName": "Priority",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "https://gematik.de/fhir/isik/StructureDefinition/ISiKTerminPriorityExtension"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.start",
                "path": "Appointment.start",
                "comment": "Begründung zu Kardinalität und Must Support: Der Startzeitpunkt eines Termins ist von entscheidender Bedeutung, um die Verfügbarkeit und Planung des Termins zu gewährleisten. Daher muss dieses Feld unterstützt werden (MS). Das Feld ist in den meisten Fällen verpflichtend, nur für die Status 'proposed', 'cancelled', 'waitlist' existiert kein Wert.",
                "mustSupport": true
            },
            {
                "id": "Appointment.end",
                "path": "Appointment.end",
                "comment": "Begründung zu Kardinalität und Must Support: Der Endzeitpunkt eines Termins ist von entscheidender Bedeutung, um die Verfügbarkeit und Planung des Termins zu gewährleisten. Daher muss dieses Feld unterstützt werden (MS). Das Feld ist in den meisten Fällen verpflichtend, nur für die Status 'proposed', 'cancelled', 'waitlist' existiert kein Wert.",
                "mustSupport": true
            },
            {
                "id": "Appointment.slot",
                "path": "Appointment.slot",
                "comment": "Begründung zu Kardinalität und Must Support: Die Kardinalität der slot-Eigenschaft bleibt 0..*, sodass ein Termin-Requestor bei der Terminbuchung nur einen Termin und ein Verweis auf ein ISiKKalender übergeben kann. Es ist dann die Aufgabe des Termin-Repositories in Abhängigkeit der gebuchten Dienstleistung freie Terminblöcke zu finden. Diese sind im Appointment zu referenzieren.",
                "mustSupport": true
            },
            {
                "id": "Appointment.slot.reference",
                "path": "Appointment.slot.reference",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Appointment.comment",
                "path": "Appointment.comment",
                "comment": "Hinweis: Im ISiK Kontext sollte dieses Feld zur internen Kommunikation zwischen Leistungserbringern verwendet werden, z.B. für interne Notizen rund um den Termin.\n\nBegründung zum Must Support: Dieses Feld ist optional (0..1), muss jedoch implementiert werden (MS), um die Möglichkeit zu bieten, zusätzliche Informationen zum Termin zu hinterlegen und abrufen zu können. \n\nEs gilt weiterhin die Semantik des Elements nach FHIR-Kernspezifikation:\n\n'Additional text to aid in facilitating the appointment. For instance, a comment might be, 'patient should proceed immediately to infusion room upon arrival'\n\nWhere this is a planned appointment and the start/end dates are not set then this field can be used to provide additional guidance on the details of the appointment request, including any restrictions on when to book it.'",
                "mustSupport": true
            },
            {
                "id": "Appointment.patientInstruction",
                "path": "Appointment.patientInstruction",
                "comment": "Hinweis: Dieses Feld sollte im Kontext von ISIK verwendet werden für die Kommunikation im Sinne der Definition der FHIR-Kernspezifikation - sowohl von Systemseite (administrativ) als auch von Seiten des medizinischen Fachpersonals.\n\nBeispiel für eine Nachricht: 'Bitte nüchtern erscheinen' etc.\n\nBegründung zum Must Support: Dieses Feld ist optional (0..1), muss jedoch implementiert werden (MS), um die Möglichkeit zu bieten, zusätzliche Informationen für Patienten zum Termin zu hinterlegen und abrufen zu können. \n\nEs gilt weiterhin der Hinweis der FHIR Kernspezifikation:\n'Note that FHIR strings SHALL NOT exceed 1MB in size'",
                "mustSupport": true
            },
            {
                "id": "Appointment.participant",
                "path": "Appointment.participant",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "type",
                            "path": "actor.resolve()"
                        }
                    ],
                    "rules": "open"
                },
                "comment": "Hinweis: Die Kardinalität von actor.display und das MS-Flag von .status wird an die Slices vererbt und diese sind entsprechend zu implementieren.\n\nBegründung zu Kardinalität und Must Support: Die Teilnehmer eines Termins sind von entscheidender Bedeutung, um die Verfügbarkeit und Planung des Termins zu gewährleisten. Daher muss dieses Feld unterstützt werden (MS).",
                "mustSupport": true
            },
            {
                "id": "Appointment.participant.actor",
                "path": "Appointment.participant.actor",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Appointment.participant.actor.display",
                "path": "Appointment.participant.actor.display",
                "comment": "Hinweis: Für alle Target-Ressourcen SOLL ein Displaywert für die Referenz angegeben werden, sodass Systeme eine Übersicht der am Termin beteiligten Akteure anzeigen können ohne die Referenzen auflösen zu müssen. Somit kann ein Termin-Consumer direkt anzeigen welche Akteure für den Termin relevant sind.",
                "mustSupport": true
            },
            {
                "id": "Appointment.participant.status",
                "path": "Appointment.participant.status",
                "mustSupport": true
            },
            {
                "id": "Appointment.participant:AkteurPatient",
                "path": "Appointment.participant",
                "sliceName": "AkteurPatient",
                "comment": "Hinweis: Im ISIK-Kontext MUSS der referenzierte Patient konform zum [ISIKPatient](https://gematik.de/fhir/isik/StructureDefinition/ISiKPatient) des Basismoduls sein. Ein Sonderfall sind Patienten, über die ein Termin-Requestor oder Termin-Repository nur rudimentäre Informationen verfügt. Diese Patienten-Ressourcen sind bis zur Vervollständigung nur gegen den Kernstandard valide.\n\nBegründung zu Kardinalität und Must Support: Die teilnehmenden Patienten eines Termins sind von entscheidender Bedeutung, um die Verfügbarkeit und Planung des Termins zu gewährleisten. Daher muss dieses Feld unterstützt werden (MS). Hingegen kann die Patienten-Referenz separat in der $book-Operation übergeben werden, sodass hier keine verpflichtende Kardinaltiät gewählt werden kann.",
                "min": 0,
                "max": "*",
                "mustSupport": true
            },
            {
                "id": "Appointment.participant:AkteurPatient.actor",
                "path": "Appointment.participant.actor",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://hl7.org/fhir/StructureDefinition/Patient"
                        ]
                    }
                ]
            },
            {
                "id": "Appointment.participant:AkteurPatient.actor.reference",
                "path": "Appointment.participant.actor.reference",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Appointment.participant:AkteurPersonImGesundheitsberuf",
                "path": "Appointment.participant",
                "sliceName": "AkteurPersonImGesundheitsberuf",
                "comment": "Im ISIK-Kontext MUSS die referenzierte RelatedPerson-Ressource konform zum [ISiKAngehoeriger](https://gematik.de/fhir/isik/StructureDefinition/ISiKAngehoeriger) des Basismoduls sein.\n\nBegründung zu Kardinalität und Must Support: Die Angabe eines Angehörigen ist optional, da in vielen Fällen die Referenzierung des Patienten ausreichend ist. Bei Terminen, die durch einen Angehörigen gebucht/verwaltet werden, ist es jedoch wichtig, dass diese Information an das Termin-Repository übermittelt werden kann.",
                "min": 0,
                "max": "*",
                "mustSupport": true
            },
            {
                "id": "Appointment.participant:AkteurPersonImGesundheitsberuf.actor",
                "path": "Appointment.participant.actor",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://hl7.org/fhir/StructureDefinition/Practitioner"
                        ]
                    }
                ]
            },
            {
                "id": "Appointment.participant:AkteurPersonImGesundheitsberuf.actor.reference",
                "path": "Appointment.participant.actor.reference",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Appointment.participant:AkteurMedizinischeBehandlungseinheit",
                "path": "Appointment.participant",
                "sliceName": "AkteurMedizinischeBehandlungseinheit",
                "min": 0,
                "max": "*",
                "mustSupport": true
            },
            {
                "id": "Appointment.participant:AkteurMedizinischeBehandlungseinheit.actor",
                "path": "Appointment.participant.actor",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://hl7.org/fhir/StructureDefinition/HealthcareService"
                        ]
                    }
                ]
            },
            {
                "id": "Appointment.participant:AkteurMedizinischeBehandlungseinheit.actor.reference",
                "path": "Appointment.participant.actor.reference",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Appointment.participant:Angehoeriger",
                "path": "Appointment.participant",
                "sliceName": "Angehoeriger",
                "min": 0,
                "max": "*",
                "mustSupport": true
            },
            {
                "id": "Appointment.participant:Angehoeriger.actor",
                "path": "Appointment.participant.actor",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://hl7.org/fhir/StructureDefinition/RelatedPerson"
                        ]
                    }
                ]
            },
            {
                "id": "Appointment.participant:Angehoeriger.actor.reference",
                "path": "Appointment.participant.actor.reference",
                "min": 1,
                "mustSupport": true
            }
        ]
    }
}

Constraints/Invarianten

NameSchweregradBeschreibungAusdruck
ISiK-app-1errorDer Endzeitpunkt eines Termins MUSS nach dem Startzeitpunkt liegenstart <= end

Terminology-Bindings

ElementStaerkeValueSet
Appointment.meta.tag:Sourcerequiredhttp://fhir.de/ValueSet/common-meta-tag-de
Appointment.cancelationReasonrequiredhttps://gematik.de/fhir/isik/ValueSet/ISiKTerminCancelationReason
Appointment.specialty.coding:Fachrichtungrequiredhttp://ihe-d.de/ValueSets/IHEXDSpracticeSettingCode
Appointment.specialty.coding:ErweiterterFachabteilungsschluesselrequiredhttp://fhir.de/ValueSet/dkgev/Fachabteilungsschluessel-erweitert

Anmerkungen zu Must-Support-Feldern

FeldnameHinweise
Appointment.meta

Ein Tag kann verwendet werden um zu kennzeichnen, dass die Ressource von Extern erstellt worden ist.

Appointment.meta.tag
Appointment.meta.tag:Source
Appointment.extension

Begründung zum Must Support: Termineabsagen sollten verkettbar sein, da am originalen Termin noch weitere Informationen hängen können.

Appointment.extension:replaces
Appointment.status

Begründung zu Must Support : Im ISiK Kontext ist der Status eines Termins von entscheidender Bedeutung, um den aktuellen Stand und die Verfügbarkeit des Termins zu kommunizieren.

Appointment.cancelationReason

Begründung zu Must Support: Dieses Feld ist optional (0..1), muss jedoch implementiert werden (MS), um die Möglichkeit zu bieten, einen Grund für die Absage eines Termins zu hinterlegen.

Appointment.serviceType

Begründung zu Kardinalität und Must Support: Die Dienstleistungsart eines Termins ist von entscheidender Bedeutung, um die Verfügbarkeit und Planung des Termins zu gewährleisten. Daher ist dieses Feld verpflichtend (1..*) und muss unterstützt werden (MS). Aufgrund der Heterogenität von Dienstleistungen ist eine standardisierte Kodierung nicht zwingend notwendig, eine Freitextbeschreibung ist ausreichend.

Appointment.serviceType.text
Appointment.specialty

Optionale Angabe aller Fachbereiche aus denen ein oder mehrere Akteure für die Durchführung des Termins benötigt werden.

Begründung zu Kardinalität und Must Support: KANN auch anhand des Kalenders, in dem ein Termin gebucht wird, ermittelt werden. Die Angabe der Fachbereiche ist optional (0..*), muss jedoch implementiert werden (MS), um die Spezialisierung hinsichtlich der zugeordneten Behandlungseinheit des Termins eindeutig zu definieren und eine korrekte Zuordnung zu gewährleisten.

Appointment.specialty.coding
Appointment.specialty.coding:Fachrichtung

Begründung zur Kardinalität: Die Kardinalität der Fachrichtung-Eigenschaft wird auf 1..1 festgelegt, um sicherzustellen, dass genau eine Fachrichtung vorhanden ist. Dies ist notwendig, um die Spezialisierung des Termins eindeutig zu definieren und eine korrekte Zuordnung zu gewährleisten.

Hintergrund zur Entscheidung: Die Wahl des hinterlegten ValueSets (http://ihe-d.de/ValueSets/IHEXDSpracticeSettingCode) wurde mit einem Mitglied der IHE Deutschland Arbeitsgruppe XDS ValueSets (https://www.ihe-d.de/projekte/xds-value-sets-fuer-deutschland/) sowie mit der KBV abgestimmt (Stand:13.6.2024).

Appointment.priority

Begründung Must Support: Die Priorität eines Termins ist von entscheidender Bedeutung, um die Dringlichkeit und Relevanz des Termins zu kommunizieren und zu priorisieren. Eine Priorität ist nicht zwingend erforderlich, muss jedoch implementiert werden (MS), um die Möglichkeit zu bieten, die Dringlichkeit und Relevanz des Termins abzurufen.

Appointment.priority.extension

Hinweis: In R5 ist die Priority ein CodeableConcept.

Begründung zu Must Support: Dieses Element ist optional (0..1), muss jedoch implementiert werden (MS), um besonders einen Notfall als solchen ausweisen zu können.

Appointment.priority.extension:Priority
Appointment.start

Begründung zu Kardinalität und Must Support: Der Startzeitpunkt eines Termins ist von entscheidender Bedeutung, um die Verfügbarkeit und Planung des Termins zu gewährleisten. Daher muss dieses Feld unterstützt werden (MS). Das Feld ist in den meisten Fällen verpflichtend, nur für die Status 'proposed', 'cancelled', 'waitlist' existiert kein Wert.

Appointment.end

Begründung zu Kardinalität und Must Support: Der Endzeitpunkt eines Termins ist von entscheidender Bedeutung, um die Verfügbarkeit und Planung des Termins zu gewährleisten. Daher muss dieses Feld unterstützt werden (MS). Das Feld ist in den meisten Fällen verpflichtend, nur für die Status 'proposed', 'cancelled', 'waitlist' existiert kein Wert.

Appointment.slot

Begründung zu Kardinalität und Must Support: Die Kardinalität der slot-Eigenschaft bleibt 0..*, sodass ein Termin-Requestor bei der Terminbuchung nur einen Termin und ein Verweis auf ein ISiKKalender übergeben kann. Es ist dann die Aufgabe des Termin-Repositories in Abhängigkeit der gebuchten Dienstleistung freie Terminblöcke zu finden. Diese sind im Appointment zu referenzieren.

Appointment.slot.reference
Appointment.comment

Hinweis: Im ISiK Kontext sollte dieses Feld zur internen Kommunikation zwischen Leistungserbringern verwendet werden, z.B. für interne Notizen rund um den Termin.

Begründung zum Must Support: Dieses Feld ist optional (0..1), muss jedoch implementiert werden (MS), um die Möglichkeit zu bieten, zusätzliche Informationen zum Termin zu hinterlegen und abrufen zu können.

Es gilt weiterhin die Semantik des Elements nach FHIR-Kernspezifikation:

'Additional text to aid in facilitating the appointment. For instance, a comment might be, 'patient should proceed immediately to infusion room upon arrival'

Where this is a planned appointment and the start/end dates are not set then this field can be used to provide additional guidance on the details of the appointment request, including any restrictions on when to book it.'

Appointment.patientInstruction

Hinweis: Dieses Feld sollte im Kontext von ISIK verwendet werden für die Kommunikation im Sinne der Definition der FHIR-Kernspezifikation - sowohl von Systemseite (administrativ) als auch von Seiten des medizinischen Fachpersonals.

Beispiel für eine Nachricht: 'Bitte nüchtern erscheinen' etc.

Begründung zum Must Support: Dieses Feld ist optional (0..1), muss jedoch implementiert werden (MS), um die Möglichkeit zu bieten, zusätzliche Informationen für Patienten zum Termin zu hinterlegen und abrufen zu können.

Es gilt weiterhin der Hinweis der FHIR Kernspezifikation: 'Note that FHIR strings SHALL NOT exceed 1MB in size'

Appointment.participant

Hinweis: Die Kardinalität von actor.display und das MS-Flag von .status wird an die Slices vererbt und diese sind entsprechend zu implementieren.

Begründung zu Kardinalität und Must Support: Die Teilnehmer eines Termins sind von entscheidender Bedeutung, um die Verfügbarkeit und Planung des Termins zu gewährleisten. Daher muss dieses Feld unterstützt werden (MS).

Appointment.participant.actor
Appointment.participant.actor.display

Hinweis: Für alle Target-Ressourcen SOLL ein Displaywert für die Referenz angegeben werden, sodass Systeme eine Übersicht der am Termin beteiligten Akteure anzeigen können ohne die Referenzen auflösen zu müssen. Somit kann ein Termin-Consumer direkt anzeigen welche Akteure für den Termin relevant sind.

Appointment.participant.status
Appointment.participant:AkteurPatient

Hinweis: Im ISIK-Kontext MUSS der referenzierte Patient konform zum ISIKPatient des Basismoduls sein. Ein Sonderfall sind Patienten, über die ein Termin-Requestor oder Termin-Repository nur rudimentäre Informationen verfügt. Diese Patienten-Ressourcen sind bis zur Vervollständigung nur gegen den Kernstandard valide.

Begründung zu Kardinalität und Must Support: Die teilnehmenden Patienten eines Termins sind von entscheidender Bedeutung, um die Verfügbarkeit und Planung des Termins zu gewährleisten. Daher muss dieses Feld unterstützt werden (MS). Hingegen kann die Patienten-Referenz separat in der $book-Operation übergeben werden, sodass hier keine verpflichtende Kardinaltiät gewählt werden kann.

Appointment.participant:AkteurPatient.actor.reference
Appointment.participant:AkteurPersonImGesundheitsberuf

Im ISIK-Kontext MUSS die referenzierte RelatedPerson-Ressource konform zum ISiKAngehoeriger des Basismoduls sein.

Begründung zu Kardinalität und Must Support: Die Angabe eines Angehörigen ist optional, da in vielen Fällen die Referenzierung des Patienten ausreichend ist. Bei Terminen, die durch einen Angehörigen gebucht/verwaltet werden, ist es jedoch wichtig, dass diese Information an das Termin-Repository übermittelt werden kann.

Appointment.participant:AkteurPersonImGesundheitsberuf.actor.reference
Appointment.participant:AkteurMedizinischeBehandlungseinheit
Appointment.participant:AkteurMedizinischeBehandlungseinheit.actor.reference
Appointment.participant:Angehoeriger
Appointment.participant:Angehoeriger.actor.reference

Appointment.meta.tag

Bedeutung: Herkunft der Termins

Hinweis: Angabe, ob der Termin durch einen externen Termin-Requestor eingestellt wurde. Falls das Datenobjekt dauerhaft in das Termin-Repository gespeichert wird, KANN der Tag entfernt werden. Für die weitere Prozesssteuerung kann eine Unterscheidung, ob es sich um einen intern oder extern erstellten Termin handelt, notwendig sein, sodass aus Gründen der Nachvollziehbarkeit der Tag bestehen bleiben sollte. Des Weiteren gelten die Vorgaben des ISiK Basismoduls zur CREATE-Interaktion.

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 Termin-Repository anzupassen.

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

Appointment.cancelationReason

Bedeutung: Grund für die Absage eines Termins

Hinweis: Eine minimale Kodierung MUSS mittels des vorgeschlagenen Bindings vorliegen. Differenzierungen mit feinerer Granularität können durch weitere Codings erfolgen.

Appointment.serviceType

Bedeutung: Kodierung der Behandlungsleistung des Termins

Hinweis: Dies SOLL der Kodierung des serviceType eines Schedules entsprechen, der innerhalb des Termins gebucht wird. Ein Termin-Repository SOLL einen Termin abweisen, falls unbekannte Kodierungen in .serviceType durch den Termin-Requestor übermittelt werden, sodass ein Termin-Repository sicherstellen kann, dass alle Ressourcen für die Behandlungsleistung(en) bereitgestellt werden können. Hierzu ist eine Interpretation der Behandlungsleistung notwendig. Ein Termin KANN für mehrere Behandlungsleistungen gebucht werden, falls dies durch die Fachlogik des Termin-Repositories unterstützt wird.

Appointment.specialty

Bedeutung: Kodierung der Fachrichtung des Termins

Hinweis: Sofern aus den auf der Appointment-Ressource aufsetzenden Anwendungsfällen eine weitere Verarbeitung der Ressource durch einen menschlichen Nutzer nicht ausgeschlossen werden kann, MUSS das bestätigungsrelevante System mit dem Termin verbundenen Ressourcen (insb. Appointment.slot, Appointment.slot.schedule, Appointment.participant:AkteurMedizinischeBehandlungseinheit.actor) oder aus dem spezifischen Kontext verfügbare Informationen auswerten und das Element Appointment.specialty mit einem sinnvollen Wert kodieren (eine Ausnahme bildet hier zum Beispiel die fachrichtungs-unabhängige Terminplanung durch krankenhausinterne, zentrale Organisationseinheiten). Insbesondere ist die Kodierung der Fachrichtung des Termins notwendig im Kontext der Bereitstellung einer graphischen Oberfläche, wie sie Endnutzenden in einem Zuweiserportal/Patientenportal zur Ansicht gebracht 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 Termins

Hinweis: Sofern der Termin an einen Slot gebunden ist, SOLL der Startzeitpunkt des Termins dem Startzeitpunkt des ersten Slots des Termins entsprechen.

Appointment.end

Bedeutung: Endzeitpunkt des Termins

Hinweis: Sofern der Termin an einen Slot gebunden ist, SOLL der Endzeitpunkt des Termins 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. Es kann keine Reihenfolge durch die Angabe der Slots abgeleitet werden.

Hinweis: In der Vergangenheit liegende Slots, welche nicht verknüpft wurden, DÜRFEN NICHT mehr abrufbar sein. Jegliche andere Slots müssen auch per id, herausgegeben werden. Sobald die id einmalig per Search herausgeben wurde, müssen diese gleichbleibend abrufbar sein.

Appointment.patientInstruction

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

Appointment.participant

Bedeutung: Teilnehmer des Termins

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

Interaktionen

InteraktionVerbindlichkeit
readSHALL
search-typeSHALL
patchSHALL
ParameterTypVerbindlichkeitHinweise
_idtokenSHALL

Beispiel: GET [base]/[Resourcetype]?_id=103270 Anwendungshinweis: Der Parameter _id wird selten alleinstehend verwendet, da sich zum Abruf einer Ressource anhand der id die READ-Interaktion besser anbietet. Der Parameter kann jedoch verwendet werden, um den Abruf einer Ressource bspw. mit einem _include weiterer Ressourcen zu verbinden, z.B. zum Abruf eines Encounters in Verbindung mit dem zugehörigen Patienten: GET [base]/Encounter?_id=103270&_include=Encounter:patient Weitere Details siehe FHIR-Kernspezifikation, Abschnitt Parameters for all resources. Dieser Suchparameter ist für die Umsetzung des IHE PDQm Profils verpflichtend.

_tagtokenSHALL

Beispiel: GET [base]/[Resourcetype]?_tag=https://example.org/codes|needs-review Anwendungshinweis: Weitere Details siehe FHIR-Kernspezifikation, Abschnitt Parameters for all resources sowie Abschnitt Tags.

_countnumberSHALL

Beispiel: GET [base]/[Resourcetype]?_count=100 Anwendungshinweis: Weitere Details siehe FHIR-Kernspezifikation, Abschnitt Page Count.

_hasstringMAY

Beispiel: Suche nach allen Patienten, die eine Observation mit dem Code '1234-5' haben GET [base]/Patient?_has:Observation:patient:code=1234-5 Beispiel: Suche nach allen Encountern, bei denen die Diagnose 'A12.3' gestellt wurde GET [base]/Encounter?_has:Condition:encounter:code=A12.3 Anwendungshinweis: Weitere Details siehe FHIR-Kernspezifikation, Abschnitt Reverse Chaining.

statustokenSHALL

Beispiel:
GET [base]/Appointment?status=booked
Anwendungshinweis:
Weitere Details siehe FHIR-Kernspezifikation.

service-typetokenSHALL

Beispiel:
GET [base]/Appointment?service-type=http://example.org/fhir/CodeSystem/ScheduleServiceType|CT
Anwendungshinweis:
Anwendungshinweise: Bei einer Suche mit dem :not-Modifier MÜSSEN Ressourcen, die keinen Wert für Appointment.serviceType enthalten, im Suchergebnis enthalten sein. Weitere Details siehe FHIR-Kernspezifikation.

specialtytokenSHALL

Beispiel:
GET [base]/Appointment?specialty=urn:oid:1.2.276.0.76.5.114|535
Anwendungshinweis: Anwendungshinweise: Bei einer Suche mit dem :not-Modifier MÜSSEN Ressourcen, die keinen Wert für Appointment.specialty enthalten, im Suchergebnis enthalten sein. Weitere Details siehe FHIR-Kernspezifikation.

datedateSHALL

Beispiel:
GET [base]/Appointment?date=2022-12-10T09:00:00Z
Anwendungshinweis: Die Suche wird gegen das Element Appointment.start ausgewertet.
Weitere Details siehe FHIR-Kernspezifikation.

slotreferenceSHALL

Beispiel:
GET [base]/Appointment?slot=Slot/ISiKSlotExample
Anwendungshinweis:
Weitere Details siehe FHIR-Kernspezifikation.

actorreferenceSHALL

Beispiel:
GET [base]/Appointment?actor=Patient/ISiKPatientExample
Anwendungshinweis:
Weitere Details siehe FHIR-Kernspezifikation.

(Reverse-)Include

Include
Appointment:slot; Appointment:actor
NameSpezifikationVerbindlichkeit
bookhttps://gematik.de/fhir/isik/OperationDefinition/AppointmentBookSHALL
Command 'pagelink' could not render: Page not found.

Beispiele

Appointment
<Appointment xmlns="http://hl7.org/fhir">
    <id value="ISiKTerminExample" />
    <meta>
        <profile value="https://gematik.de/fhir/isik/StructureDefinition/ISiKTermin" />
        <tag>
            <system value="http://fhir.de/CodeSystem/common-meta-tag-de" />
            <code value="external" />
        </tag>
    </meta>
    <status value="proposed" />
    <serviceType>
        <coding>
            <system value="http://terminology.hl7.org/CodeSystem/service-type" />
            <code value="124" />
        </coding>
    </serviceType>
    <specialty>
        <coding>
            <system value="http://ihe-d.de/CodeSystems/AerztlicheFachrichtungen" />
            <code value="ALLG" />
        </coding>
    </specialty>
    <priority>
        <extension url="https://gematik.de/fhir/isik/StructureDefinition/ISiKTerminPriorityExtension">
            <valueCodeableConcept>
                <coding>
                    <system value="http://snomed.info/sct" />
                    <code value="25876001" />
                </coding>
            </valueCodeableConcept>
        </extension>
    </priority>
    <start value="2022-12-10T09:00:00Z" />
    <end value="2022-12-10T11:00:00Z" />
    <slot>
        <reference value="Slot/ISiKTerminblockExample" />
    </slot>
    <participant>
        <actor>
            <reference value="Patient/ISiKPatientTest" />
            <display value="Test Patient" />
        </actor>
        <status value="accepted" />
    </participant>
</Appointment>
{
    "resourceType": "Appointment",
    "id": "ISiKTerminExample",
    "meta": {
        "tag":  [
            {
                "code": "external",
                "system": "http://fhir.de/CodeSystem/common-meta-tag-de"
            }
        ],
        "profile":  [
            "https://gematik.de/fhir/isik/StructureDefinition/ISiKTermin"
        ]
    },
    "status": "proposed",
    "start": "12/10/2022 09:00:00",
    "end": "12/10/2022 11:00:00",
    "slot":  [
        {
            "reference": "Slot/ISiKTerminblockExample"
        }
    ],
    "serviceType":  [
        {
            "coding":  [
                {
                    "code": "124",
                    "system": "http://terminology.hl7.org/CodeSystem/service-type"
                }
            ]
        }
    ],
    "specialty":  [
        {
            "coding":  [
                {
                    "code": "ALLG",
                    "system": "http://ihe-d.de/CodeSystems/AerztlicheFachrichtungen"
                }
            ]
        }
    ],
    "participant":  [
        {
            "actor": {
                "display": "Test Patient",
                "reference": "Patient/ISiKPatientTest"
            },
            "status": "accepted"
        }
    ],
    "_priority": {
        "extension":  [
            {
                "url": "https://gematik.de/fhir/isik/StructureDefinition/ISiKTerminPriorityExtension",
                "valueCodeableConcept": {
                    "coding":  [
                        {
                            "code": "25876001",
                            "system": "http://snomed.info/sct"
                        }
                    ]
                }
            }
        ]
    }
}
Appointment
<Appointment xmlns="http://hl7.org/fhir">
    <id value="ISiKTerminExampleExtendedICU" />
    <meta>
        <profile value="https://gematik.de/fhir/isik/StructureDefinition/ISiKTermin" />
        <tag>
            <system value="http://fhir.de/CodeSystem/common-meta-tag-de" />
            <code value="external" />
        </tag>
    </meta>
    <status value="proposed" />
    <serviceType>
        <coding>
            <system value="http://terminology.hl7.org/CodeSystem/service-type" />
            <code value="174" />
        </coding>
    </serviceType>
    <specialty>
        <coding>
            <system value="http://ihe-d.de/CodeSystems/AerztlicheFachrichtungen" />
            <code value="INTM" />
        </coding>
        <coding>
            <system value="http://fhir.de/CodeSystem/dkgev/Fachabteilungsschluessel-erweitert" />
            <code value="3600" />
        </coding>
    </specialty>
    <priority>
        <extension url="https://gematik.de/fhir/isik/StructureDefinition/ISiKTerminPriorityExtension">
            <valueCodeableConcept>
                <coding>
                    <system value="http://snomed.info/sct" />
                    <code value="25876001" />
                </coding>
            </valueCodeableConcept>
        </extension>
    </priority>
    <start value="2022-12-10T09:00:00Z" />
    <end value="2022-12-10T09:30:00Z" />
    <slot>
        <reference value="Slot/ISiKTerminblockExample" />
    </slot>
    <participant>
        <actor>
            <reference value="Patient/ISiKPatientTest" />
            <display value="Test Patient" />
        </actor>
        <status value="accepted" />
    </participant>
</Appointment>
{
    "resourceType": "Appointment",
    "id": "ISiKTerminExampleExtendedICU",
    "meta": {
        "tag":  [
            {
                "code": "external",
                "system": "http://fhir.de/CodeSystem/common-meta-tag-de"
            }
        ],
        "profile":  [
            "https://gematik.de/fhir/isik/StructureDefinition/ISiKTermin"
        ]
    },
    "status": "proposed",
    "start": "12/10/2022 09:00:00",
    "end": "12/10/2022 09:30:00",
    "slot":  [
        {
            "reference": "Slot/ISiKTerminblockExample"
        }
    ],
    "serviceType":  [
        {
            "coding":  [
                {
                    "code": "174",
                    "system": "http://terminology.hl7.org/CodeSystem/service-type"
                }
            ]
        }
    ],
    "specialty":  [
        {
            "coding":  [
                {
                    "code": "INTM",
                    "system": "http://ihe-d.de/CodeSystems/AerztlicheFachrichtungen"
                },
                {
                    "code": "3600",
                    "system": "http://fhir.de/CodeSystem/dkgev/Fachabteilungsschluessel-erweitert"
                }
            ]
        }
    ],
    "participant":  [
        {
            "actor": {
                "display": "Test Patient",
                "reference": "Patient/ISiKPatientTest"
            },
            "status": "accepted"
        }
    ],
    "_priority": {
        "extension":  [
            {
                "url": "https://gematik.de/fhir/isik/StructureDefinition/ISiKTerminPriorityExtension",
                "valueCodeableConcept": {
                    "coding":  [
                        {
                            "code": "25876001",
                            "system": "http://snomed.info/sct"
                        }
                    ]
                }
            }
        ]
    }
}