<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="ISiKLaborbefund" />
  <url value="https://gematik.de/fhir/isik/StructureDefinition/ISiKLaborbefund" />
  <version value="6.0.0-rc" />
  <name value="ISiKLaborbefund" />
  <status value="active" />
  <experimental value="false" />
  <date value="2026-04-02" />
  <publisher value="gematik GmbH" />
  <description value="Dieses Profil ermöglicht die Abbildung von Laborbefunden eines Patienten in ISiK Szenarien. Es dient der strukturierten Dokumentation und Gruppierung von Laboruntersuchungen, ihren Ergebnissen und zugehörigen Informationen, um eine konsistente und maschinenlesbare Darstellung von Laborbefunden zu gewährleisten." />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="DiagnosticReport" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/DiagnosticReport" />
  <derivation value="constraint" />
  <differential>
    <element id="DiagnosticReport.id">
      <path value="DiagnosticReport.id" />
      <short value="serverseitige, interne ID des Datensatzes" />
      <comment value="**bedingtes Pflichtfeld/bedingtes MS:** Alle von einem Server bereitgestellten Ressourcen MÜSSEN über eine `id` verfügen.&#xA;  Von Clients erzeugte Ressourcen, die im Kontext einer CREATE-Interaktion übermittelt werden, MÜSSEN NICHT über eine `id`verfügen." />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.meta.versionId">
      <path value="DiagnosticReport.meta.versionId" />
      <short value="Eindeutiger Name der serverseitigen Version des Datensatzes" />
      <comment value="Alle von einem Server bereitgestellten Ressourcen SOLLEN über eine `versionID` verfügen.&#xA;  Von Clients erzeugte Ressourcen, die im Kontext einer CREATE-Interaktion übermittelt werden, MÜSSEN NICHT über eine `versionID`verfügen." />
    </element>
    <element id="DiagnosticReport.meta.lastUpdated">
      <path value="DiagnosticReport.meta.lastUpdated" />
      <short value="Zeitpunkt der letzten Änderung" />
      <comment value="Alle von einem Server bereitgestellten Ressourcen SOLLEN über ein `lastUpdate` verfügen.&#xA;  Von Clients erzeugte Ressourcen, die im Kontext einer CREATE-Interaktion übermittelt werden, MÜSSEN NICHT über ein `lastUpdate`verfügen." />
    </element>
    <element id="DiagnosticReport.implicitRules">
      <path value="DiagnosticReport.implicitRules" />
      <short value="Verweis auf die Regeln, nach denen die Ressource erstellt wurde" />
      <comment value="Begründung Constraint: In ISiK existiert kein Use-Case für dieses Element. Da es sich um ein Modifying Element handelt, wird es daher ausgeschlossen.&#xA;  Darüber hinaus werden die Regeln als URI vorgehalten. Dies führt dazu, dass sich hinter der URI eine beliebige Menge an Regeln befinden kann; wodurch  nicht sichergestellt werden kann, dass alle Clients die Regeln korrekt interpretieren können." />
      <max value="0" />
    </element>
    <element id="DiagnosticReport.identifier">
      <path value="DiagnosticReport.identifier" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="type" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <short value="Eindeutiger Identifier des Laborbefunds" />
      <comment value="**Begründung MS**: Ein eindeutiger Identifier ermöglicht die zuverlässige Referenzierung und Nachverfolgung von Laborbefunden über verschiedene Systeme hinweg." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.identifier.type">
      <path value="DiagnosticReport.identifier.type" />
      <short value="Art des Identifiers" />
      <comment value="**Begründung MS**: Der Identifier-Typ dient zur fachlichen Unterscheidung verschiedener Identifikatoren eines Laborbefunds." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.identifier.system">
      <path value="DiagnosticReport.identifier.system" />
      <short value="Namensraum des Identifiers" />
      <comment value="**Begründung MS**: Das System gibt den Kontext oder die Quelle des Identifiers an" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.identifier.value">
      <path value="DiagnosticReport.identifier.value" />
      <short value="Der eigentliche Identifier-Wert" />
      <comment value="**Begründung MS**: Der Wert ist die konkrete Kennung der Laborbefunde und muss in ihrem Namensraum eindeutig sein." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.identifier:befund">
      <path value="DiagnosticReport.identifier" />
      <sliceName value="befund" />
      <short value="Filler-Identifikator" />
      <comment value="**Begründung MS**: Der Filler-Identifikator ist der vom Labor (Filler) vergebene, eindeutige Identifier eines Laborbefunds und dient zur zuverlässigen Zuordnung und Nachverfolgung dieses Befunds in anderen Systemen (z. B. LIS)." />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.identifier:befund.type">
      <path value="DiagnosticReport.identifier.type" />
      <patternCodeableConcept>
        <coding>
          <system value="http://terminology.hl7.org/CodeSystem/v2-0203" />
          <code value="FILL" />
        </coding>
      </patternCodeableConcept>
    </element>
    <element id="DiagnosticReport.status">
      <path value="DiagnosticReport.status" />
      <short value="Status des Befunds" />
      <comment value="**Begründung MS**: Der Status ist unerlässlich für die korrekte Interpretation eines Befunds. **WICHTIGER Hinweis für Implementierer**:  &#xA;  * Alle server-seitigen Implementierungen MÜSSEN in der Lage sein, &#xA;  die systemintern möglichen Statuswerte korrekt in FHIR abzubilden, mindestens jedoch die Werte `final` und `unknown`.&#xA;  * Alle client-seitigen Implementierungen MÜSSEN in der Lage sein, sämtliche Status-Codes zu interpretieren und dem Anwender in angemessener Form darstellen zu können, &#xA;  beispielsweise durch Ausblenden/Durchstreichen von Befunden mit dem status `entered-in-error`" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.category">
      <path value="DiagnosticReport.category" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <short value="Befund-Kategorie" />
      <comment value="**Begründung MS**: Die Kategorisierung eines Befunds dient der fachlichen Einordnung und erleichtert die Suche und Filterung von Befunden." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.category.coding">
      <path value="DiagnosticReport.category.coding" />
      <short value="Codierte Darstellung der Befund-Kategorie" />
      <comment value="**Begründung MS**: Eine codierte Darstellung ermöglicht die maschinelle Verarbeitung und erleichtert die Suche und Filterung von Befunden." />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.category.coding.system">
      <path value="DiagnosticReport.category.coding.system" />
      <short value="Kodiersystem für die Kategorie" />
      <comment value="**Begründung MS**: Das System gibt den Kontext oder die Quelle des Kategoriecodes an." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.category.coding.code">
      <path value="DiagnosticReport.category.coding.code" />
      <short value="Kategoriecode" />
      <comment value="**Begründung MS**: Der Code dient zur fachlichen Unterscheidung verschiedener Kategorien eines Befunds." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.category.coding.display">
      <path value="DiagnosticReport.category.coding.display" />
      <short value="Anzeigename der Kategorie" />
      <comment value="**Begründung MS**: Der Anzeigename bietet eine lesbare Darstellung der Kategorie für Benutzer." />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.category:lab-category">
      <path value="DiagnosticReport.category" />
      <sliceName value="lab-category" />
      <short value="Labor-Kategorie" />
      <comment value="**Begründung MS**: Kategorie-Slice für Laborbefunde" />
      <min value="1" />
      <max value="1" />
      <patternCodeableConcept>
        <coding>
          <system value="http://terminology.hl7.org/CodeSystem/v2-0074" />
          <code value="LAB" />
        </coding>
      </patternCodeableConcept>
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.code">
      <path value="DiagnosticReport.code" />
      <short value="Code" />
      <comment value="**Begründung MS**: Der Code ist unerlässlich für die korrekte Interpretation eines Befunds, da er die Art des Befunds angibt." />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.code.coding">
      <path value="DiagnosticReport.code.coding" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <short value="Codierte Darstellung des Befunds" />
      <comment value="**Begründung MS**: Eine codierte Darstellung ermöglicht die maschinelle Verarbeitung und erleichtert die Suche und Filterung von Befunden." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.code.coding.system">
      <path value="DiagnosticReport.code.coding.system" />
      <short value="Kodiersystem für den Befundcode" />
      <comment value="**Begründung MS**: Das System gibt den Kontext oder die Quelle des Befundcodes an." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.code.coding.code">
      <path value="DiagnosticReport.code.coding.code" />
      <short value="Befundcode" />
      <comment value="**Begründung MS**: Der Code dient zur fachlichen Unterscheidung verschiedener Befunde." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.code.coding.display">
      <path value="DiagnosticReport.code.coding.display" />
      <short value="Anzeigename des Befunds" />
      <comment value="**Begründung MS**: Der Anzeigename bietet eine lesbare Darstellung des Befundcodes für Benutzer." />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.code.coding:loinc-labReport">
      <path value="DiagnosticReport.code.coding" />
      <sliceName value="loinc-labReport" />
      <short value="LOINC-Code für Laborbefund" />
      <comment value="**Begründung MS**: Der LOINC-Code 11502-2 ist der etablierte Standardcode für die Kategorie 'Laborbefund' und ermöglicht eine konsistente und interoperable Kennzeichnung von Laborbefunden über verschiedene Systeme hinweg." />
      <min value="1" />
      <max value="1" />
      <patternCoding>
        <system value="http://loinc.org" />
        <code value="11502-2" />
      </patternCoding>
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.subject">
      <path value="DiagnosticReport.subject" />
      <short value="Patientenbezug" />
      <comment value="**Begründung Pflichtfeld:** Ein Patientenbezug des Falls muss stets zum Zwecke der Nachvollziehbarkeit und Datenintegrität vorliegen." />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.subject.reference">
      <path value="DiagnosticReport.subject.reference" />
      <short value="Patienten-Link" />
      <comment value="**Begründung Pflichtfeld:** Die Verlinkung auf eine Patienten-Ressource dient der technischen Zuordnung der Dokumentation zu einem Patienten und ermöglicht wichtige API-Funktionen wie verkettete Suche, (Reverse-)Include etc.&#xA;Im ISik Kontext MUSS die referenzierte Ressource konform zu [ISiKPatient](https://gematik.de/fhir/isik/StructureDefinition/ISiKPatient) sein.&#xA;Jenseits von ISiK KÖNNEN weitere Instanzen mit anderen Profilen referenziert werden." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.encounter">
      <path value="DiagnosticReport.encounter" />
      <short value="Aufenthaltsbezug" />
      <comment value="**Begründung Must-Support:** Ein Aufenthaltsbezug der Diagnose MUSS stets zum Zwecke der Nachvollziehbarkeit und Datenintegrität vorliegen." />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.encounter.reference">
      <path value="DiagnosticReport.encounter.reference" />
      <short value="Encounter-Link" />
      <comment value="**Begründung Pflichtfeld:** Die Verlinkung auf eine Encounter-Ressource dient der technischen Zuordnung der Dokumentation zu einem Aufenthalt und ermöglicht wichtige API-Funktionen wie verkettete Suche, (Reverse-)Include etc.&#xA;**WICHTIGER Hinweis für Implementierer:** Die Zuordnung MUSS auf einen Encounter der Ebene &quot;Abteilungskontakt&quot; (siehe hierzu Basismodul &gt; UseCases &gt; Abbildung des Konstruktes &quot;Fall&quot;) erfolgen.  &#xA;Bei der Auswahl des Encounters ist zu beachten, dass unter einer (Abrechnungs-)&quot;Fallnummer&quot; (hier: `Encounter.account`) unter Umständen mehrere Encounter gruppiert sein können (z.B. stationärer Besuch mit mehreren vor- und nachstationären Aufenthalten.)&#xA;Im ISik Kontext MUSS die referenzierte Ressource konform zu [ISiKKontaktGesundheitseinrichtung](https://gematik.de/fhir/isik/StructureDefinition/ISiKKontaktGesundheitseinrichtung) sein.&#xA;Jenseits von ISiK KÖNNEN weitere Instanzen mit anderen Profilen referenziert werden." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.effective[x]">
      <path value="DiagnosticReport.effective[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
      <short value="Klinisches Bezugsdatum" />
      <comment value="**Begründung Must Support**: Das Datum und die Uhrzeit der Untersuchungen des Befundes sind für die Interpretation der Untersuchungsergebnisse relevant. Sie ermöglichen die zeitliche Einordnung der Ergebnisse, was insbesondere bei Verlaufsauswertungen, Trendanalysen und zeitabhängiger Entscheidungsunterstützung von großer Bedeutung ist." />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.effective[x]:effectiveDateTime">
      <path value="DiagnosticReport.effective[x]" />
      <sliceName value="effectiveDateTime" />
      <short value="Zeitpunkt (Datum oder Datum + Uhrzeit)" />
      <comment value="**Begründung MS**: Das Element `effectiveDateTime` ermöglicht die Angabe eines konkreten Zeitpunkts (Datum oder Datum + Uhrzeit) für das klinische Bezugsdatum eines Befunds. Es ist von zentraler Bedeutung, um die Beobachtung - insbesondere bei Laborbefunden - zeitlich korrekt einzuordnen und die klinische Relevanz der Ergebnisse zu bewerten." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="dateTime" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.issued">
      <path value="DiagnosticReport.issued" />
      <short value="Zeitpunkt der Verfügbarkeit des Befunds" />
      <comment value="**Begründung MS**: Relevant zur Nachvollziehbarkeit und Validierung von Befunden." />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.performer">
      <path value="DiagnosticReport.performer" />
      <short value="Ausführende*r" />
      <comment value="**Begründung MS**: Die durchführende Person oder Organisation ist für die Validität und Verantwortlichkeit des Befunds maßgeblich." />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.performer.reference">
      <path value="DiagnosticReport.performer.reference" />
      <short value="Performer-Link" />
      <comment value="**Begründung MS**: Die Referenz ermöglicht die Verknüpfung mit der ausführenden Person oder Organisation" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.specimen">
      <path value="DiagnosticReport.specimen" />
      <short value="Probenmaterial" />
      <comment value="**Begründung MS**: Das Probenmaterial, auf dem die Laboruntersuchungen basieren, ist für die Interpretation der Ergebnisse von großer Bedeutung. Es ermöglicht die Nachvollziehbarkeit und Validierung der Befunde, da bestimmte Ergebnisse nur in Bezug auf spezifische Probenmaterialien korrekt interpretiert werden können." />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.specimen.reference">
      <path value="DiagnosticReport.specimen.reference" />
      <short value="Specimen-Link" />
      <comment value="**Begründung MS**: Die Referenz ermöglicht die Verknüpfung mit dem Probenmaterial." />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.result">
      <path value="DiagnosticReport.result" />
      <short value="Ergebnis" />
      <comment value="**Begründung MS**: Die Laboruntersuchungen eines Befunds müssen mit ihren Ergebnissen verknüpft werden, um eine vollständige und aussagekräftige Dokumentation der Befunde zu gewährleisten." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DiagnosticReport.result.reference">
      <path value="DiagnosticReport.result.reference" />
      <short value="Ergebnis-Link" />
      <comment value="**Begründung MS**: Die Referenz ermöglicht die Verknüpfung mit den Laborergebnissen, die Teil dieses Laborbefunds sind." />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>