<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="TipluDiagnose" />
  <url value="https://tiplu.de/fhir/StructureDefinition/TipluDiagnose" />
  <version value="2.0.2" />
  <name value="TipluDiagnose" />
  <title value="TipluDiagnose" />
  <status value="active" />
  <date value="2026-04-02" />
  <publisher value="Tiplu GmbH" />
  <contact>
    <name value="Tiplu GmbH" />
    <telecom>
      <system value="email" />
      <value value="fhir@tiplu.de" />
    </telecom>
  </contact>
  <description value="Die Grundlage der TipluDiagnose bietet das Profil des [ISiKDiagnose](https://simplifier.net/isik-basis-v2/isikdiagnose) der Gematik. Das Profil wird erweitert um ein Metatag-Binding auf Codes aus dem Valueset UrsacheBidirektionalGesperrt.&#xA;Dieses Profil ist kompatibel mit dem Diagnose Profil aus dem (MII Basismodul Diagnose)[https://simplifier.net/mii-basismodul-diagnose-2024]." />
  <copyright value="Tiplu GmbH" />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Condition" />
  <baseDefinition value="https://gematik.de/fhir/isik/v2/Basismodul/StructureDefinition/ISiKDiagnose" />
  <derivation value="constraint" />
  <differential>
    <element id="Condition.meta">
      <path value="Condition.meta" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.meta.source">
      <path value="Condition.meta.source" />
      <comment value="Hier soll zukünftig angegeben werden, aus welchem System die Information kommt. Zum aktuellen Zeitpunkt ist die Information nicht befüllt." />
      <mustSupport value="true" />
    </element>
    <element id="Condition.meta.profile">
      <path value="Condition.meta.profile" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.meta.tag">
      <path value="Condition.meta.tag" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Condition.meta.tag:UrsacheBidirektionalGesperrt">
      <path value="Condition.meta.tag" />
      <sliceName value="UrsacheBidirektionalGesperrt" />
      <short value="Codes für die Ursache dafür, dass ein Fall bidirektional gesperrt ist." />
      <comment value="Die Diagnose ist im Quellsystem gesperrt für die Rückschreibung und Veränderung durch ein Subsystem" />
      <min value="0" />
      <max value="*" />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <valueSet value="https://tiplu.de/fhir/ValueSet/UrsacheBidirektionalGesperrt" />
      </binding>
    </element>
    <element id="Condition.extension:Dauerdiagnose">
      <path value="Condition.extension" />
      <sliceName value="Dauerdiagnose" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://tiplu.de/fhir/StructureDefinition/Dauerdiagnose" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.extension:Feststellungsdatum">
      <path value="Condition.extension" />
      <sliceName value="Feststellungsdatum" />
      <comment value="Zum aktuellen Zeitpunkt ist die Information nicht befüllt." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://hl7.org/fhir/StructureDefinition/condition-assertedDate" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.code.coding">
      <path value="Condition.code.coding" />
      <comment value="Es ist mindestens ein Code nach dem ICD-10-GM Slice vorhanden." />
      <min value="1" />
    </element>
    <element id="Condition.bodySite">
      <path value="Condition.bodySite" />
      <short value="Körperstelle" />
      <comment value="Zum aktuellen Zeitpunkt ist die Information nicht befüllt." />
      <mustSupport value="true" />
    </element>
    <element id="Condition.bodySite.coding">
      <path value="Condition.bodySite.coding" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="system" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.bodySite.coding:snomed-ct">
      <path value="Condition.bodySite.coding" />
      <sliceName value="snomed-ct" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <valueSet value="https://www.medizininformatik-initiative.de/fhir/core/modul-diagnose/ValueSet/mii-vs-diagnose-bodystructure-snomed" />
      </binding>
    </element>
    <element id="Condition.bodySite.coding:snomed-ct.system">
      <path value="Condition.bodySite.coding.system" />
      <min value="1" />
      <patternUri value="http://snomed.info/sct" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.bodySite.coding:snomed-ct.version">
      <path value="Condition.bodySite.coding.version" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.bodySite.coding:snomed-ct.code">
      <path value="Condition.bodySite.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.onset[x]:onsetPeriod">
      <path value="Condition.onset[x]" />
      <sliceName value="onsetPeriod" />
      <short value="Beginn Zeitraum" />
      <definition value="Der Zeitraum, in dem die Erkrankung begonnen hat, nach Meinung des Klinikers." />
      <comment value="Zum aktuellen Zeitpunkt ist die Information nicht befüllt." />
      <type>
        <code value="Period" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.onset[x]:onsetPeriod.start">
      <path value="Condition.onset[x].start" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.onset[x]:onsetPeriod.start.extension:Lebensphase-Start">
      <path value="Condition.onset[x].start.extension" />
      <sliceName value="Lebensphase-Start" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.onset[x]:onsetPeriod.end">
      <path value="Condition.onset[x].end" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.onset[x]:onsetPeriod.end.extension:Lebensphase-Ende">
      <path value="Condition.onset[x].end.extension" />
      <sliceName value="Lebensphase-Ende" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.onset[x]:onsetDateTime">
      <path value="Condition.onset[x]" />
      <sliceName value="onsetDateTime" />
      <short value="Beginn Datum" />
      <definition value="Das Datum, an dem die Erkrankung begonnen hat, nach Meinung des Klinikers." />
      <comment value="Zum aktuellen Zeitpunkt ist die Information nicht befüllt." />
      <type>
        <code value="dateTime" />
      </type>
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>