<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="ISiKMedikament" />
  <url value="https://gematik.de/fhir/isik/v3/Medikation/StructureDefinition/ISiKMedikament" />
  <version value="3.1.1" />
  <name value="ISiKMedikament" />
  <status value="active" />
  <experimental value="false" />
  <date value="2025-12-01" />
  <publisher value="gematik GmbH" />
  <description value="Dieses Profil ermöglicht die Abbildung von patientenunabhängigen Informationen zu Medikamenten in ISiK Szenarien." />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Medication" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Medication" />
  <derivation value="constraint" />
  <differential>
    <element id="Medication">
      <path value="Medication" />
      <constraint>
        <key value="isik-med-1" />
        <severity value="error" />
        <human value="Medikamenten-Code, -Bezeichnung oder Inhaltsstoffe müssen angegeben werden." />
        <expression value="code.exists() or ingredient.exists()" />
        <source value="https://gematik.de/fhir/isik/v3/Medikation/StructureDefinition/ISiKMedikament" />
      </constraint>
    </element>
    <element id="Medication.code">
      <path value="Medication.code" />
      <short value="Medikament in codierter Form oder ggf. als Freitext" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding">
      <path value="Medication.code.coding" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:PZN">
      <path value="Medication.code.coding" />
      <sliceName value="PZN" />
      <comment value="Mehrfachcodierung ist zulässig, da für ein abstraktes Medikament auch mehrere PZN-Codes existieren können, z. B. existieren für Aspirin 3 verschiedene Packungsgrößen." />
      <min value="0" />
      <max value="*" />
      <patternCoding>
        <system value="http://fhir.de/CodeSystem/ifa/pzn" />
      </patternCoding>
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:PZN.system">
      <path value="Medication.code.coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:PZN.code">
      <path value="Medication.code.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:PZN.display">
      <path value="Medication.code.coding.display" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:ATC-DE">
      <path value="Medication.code.coding" />
      <sliceName value="ATC-DE" />
      <comment value="Mehrfachcodierung ist zulässig, da für ein abstraktes Medikament auch mehrere ATC-Codes existieren können, z. B. existieren für Aspirin 4 verschiedene Codes, je nachdem wofür das Medikament angewendet wird." />
      <min value="0" />
      <max value="*" />
      <patternCoding>
        <system value="http://fhir.de/CodeSystem/bfarm/atc" />
      </patternCoding>
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:ATC-DE.system">
      <path value="Medication.code.coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:ATC-DE.code">
      <path value="Medication.code.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:ATC-DE.display">
      <path value="Medication.code.coding.display" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:WG14">
      <path value="Medication.code.coding" />
      <sliceName value="WG14" />
      <min value="0" />
      <max value="1" />
      <patternCoding>
        <system value="http://fhir.de/CodeSystem/abdata/wg14" />
      </patternCoding>
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:WG14.system">
      <path value="Medication.code.coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:WG14.code">
      <path value="Medication.code.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.coding:WG14.display">
      <path value="Medication.code.coding.display" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.code.text">
      <path value="Medication.code.text" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.status">
      <path value="Medication.status" />
      <short value="Status der Medikamenteninformation" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.manufacturer">
      <path value="Medication.manufacturer" />
      <short value="Hersteller des Medikaments" />
      <comment value="Hier kann der tatsächliche Hersteller des Medikaments benannt werden, vornehmlich im Fall von Wirkstoffmischungen (Rezepturen), beispielsweise die Krankenhausapotheke. Zu beachten ist, dass die zulassende Organisation, wie sie z.B. in den Daten zur PZN benannt ist, nicht als Hersteller gilt." />
      <mustSupport value="true" />
    </element>
    <element id="Medication.manufacturer.display">
      <path value="Medication.manufacturer.display" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.form">
      <path value="Medication.form" />
      <short value="Abgabeform" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.form.coding">
      <path value="Medication.form.coding" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="Medication.form.coding:EDQM">
      <path value="Medication.form.coding" />
      <sliceName value="EDQM" />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <valueSet value="http://hl7.org/fhir/uv/ips/ValueSet/medicine-doseform" />
      </binding>
    </element>
    <element id="Medication.form.coding:EDQM.system">
      <path value="Medication.form.coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.form.coding:EDQM.code">
      <path value="Medication.form.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.form.coding:EDQM.display">
      <path value="Medication.form.coding.display" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.amount">
      <path value="Medication.amount" />
      <short value="Menge" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.amount.numerator">
      <path value="Medication.amount.numerator" />
      <min value="1" />
      <patternQuantity>
        <system value="http://unitsofmeasure.org" />
      </patternQuantity>
      <mustSupport value="true" />
    </element>
    <element id="Medication.amount.numerator.value">
      <path value="Medication.amount.numerator.value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.amount.numerator.unit">
      <path value="Medication.amount.numerator.unit" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.amount.numerator.system">
      <path value="Medication.amount.numerator.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.amount.numerator.code">
      <path value="Medication.amount.numerator.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.amount.denominator">
      <path value="Medication.amount.denominator" />
      <patternQuantity>
        <system value="http://unitsofmeasure.org" />
      </patternQuantity>
      <mustSupport value="true" />
    </element>
    <element id="Medication.amount.denominator.value">
      <path value="Medication.amount.denominator.value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.amount.denominator.unit">
      <path value="Medication.amount.denominator.unit" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.amount.denominator.system">
      <path value="Medication.amount.denominator.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.amount.denominator.code">
      <path value="Medication.amount.denominator.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient">
      <path value="Medication.ingredient" />
      <short value="Informationen zu Bestandteilen (Rezeptur)" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.extension">
      <path value="Medication.ingredient.extension" />
      <short value="Wirkstofftyp" />
      <comment value="Handelt es sich um eine Angabe zum Wirkstoff oder zum exakter Inhaltsstoff (z.B. Salze)?" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.extension:wirkstofftyp">
      <path value="Medication.ingredient.extension" />
      <sliceName value="wirkstofftyp" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.medizininformatik-initiative.de/fhir/core/modul-medikation/StructureDefinition/wirkstofftyp" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]">
      <path value="Medication.ingredient.item[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept">
      <path value="Medication.ingredient.item[x]" />
      <sliceName value="itemCodeableConcept" />
      <short value="Bestandteil in codierter Form oder ggf. als Freitext" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding">
      <path value="Medication.ingredient.item[x].coding" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:ASK">
      <path value="Medication.ingredient.item[x].coding" />
      <sliceName value="ASK" />
      <min value="0" />
      <max value="1" />
      <patternCoding>
        <system value="http://fhir.de/CodeSystem/ask" />
      </patternCoding>
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:ASK.system">
      <path value="Medication.ingredient.item[x].coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:ASK.code">
      <path value="Medication.ingredient.item[x].coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:ASK.display">
      <path value="Medication.ingredient.item[x].coding.display" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:ATC-DE">
      <path value="Medication.ingredient.item[x].coding" />
      <sliceName value="ATC-DE" />
      <min value="0" />
      <max value="1" />
      <patternCoding>
        <system value="http://fhir.de/CodeSystem/bfarm/atc" />
      </patternCoding>
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:ATC-DE.system">
      <path value="Medication.ingredient.item[x].coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:ATC-DE.code">
      <path value="Medication.ingredient.item[x].coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:ATC-DE.display">
      <path value="Medication.ingredient.item[x].coding.display" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:PZN">
      <path value="Medication.ingredient.item[x].coding" />
      <sliceName value="PZN" />
      <min value="0" />
      <max value="1" />
      <patternCoding>
        <system value="http://fhir.de/CodeSystem/ifa/pzn" />
      </patternCoding>
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:PZN.system">
      <path value="Medication.ingredient.item[x].coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:PZN.code">
      <path value="Medication.ingredient.item[x].coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:PZN.display">
      <path value="Medication.ingredient.item[x].coding.display" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:WG14">
      <path value="Medication.ingredient.item[x].coding" />
      <sliceName value="WG14" />
      <min value="0" />
      <max value="1" />
      <patternCoding>
        <system value="http://fhir.de/CodeSystem/abdata/wg14" />
      </patternCoding>
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:WG14.system">
      <path value="Medication.ingredient.item[x].coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:WG14.code">
      <path value="Medication.ingredient.item[x].coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.coding:WG14.display">
      <path value="Medication.ingredient.item[x].coding.display" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemCodeableConcept.text">
      <path value="Medication.ingredient.item[x].text" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemReference">
      <path value="Medication.ingredient.item[x]" />
      <sliceName value="itemReference" />
      <short value="Bestandteil (Referenz auf ein anderes Medikament)" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Substance" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Medication" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.item[x]:itemReference.reference">
      <path value="Medication.ingredient.item[x].reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.isActive">
      <path value="Medication.ingredient.isActive" />
      <short value="handelt es sich um einen aktiven Bestandteil?" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.strength">
      <path value="Medication.ingredient.strength" />
      <short value="Stärke" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.strength.numerator">
      <path value="Medication.ingredient.strength.numerator" />
      <min value="1" />
      <patternQuantity>
        <system value="http://unitsofmeasure.org" />
      </patternQuantity>
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.strength.numerator.value">
      <path value="Medication.ingredient.strength.numerator.value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.strength.numerator.unit">
      <path value="Medication.ingredient.strength.numerator.unit" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.strength.numerator.system">
      <path value="Medication.ingredient.strength.numerator.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.strength.numerator.code">
      <path value="Medication.ingredient.strength.numerator.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.strength.denominator">
      <path value="Medication.ingredient.strength.denominator" />
      <patternQuantity>
        <system value="http://unitsofmeasure.org" />
      </patternQuantity>
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.strength.denominator.value">
      <path value="Medication.ingredient.strength.denominator.value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.strength.denominator.unit">
      <path value="Medication.ingredient.strength.denominator.unit" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.strength.denominator.system">
      <path value="Medication.ingredient.strength.denominator.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.ingredient.strength.denominator.code">
      <path value="Medication.ingredient.strength.denominator.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Medication.batch">
      <path value="Medication.batch" />
      <short value="Angaben zur Charge" />
      <comment value="Bitte beachten Sie gegebenenfalls die Regelungen der zwischen GKV-SV und DAV: https://www.gkv-datenaustausch.de/leistungserbringer/apotheken/apotheken.jsp . Insbesondere den Technischen Anhang 7 (TA7) zur Arzneimittelabrechnungsvereinbarung gemäß § 300 Absatz 3 SGB V in der aktuellsten Fassung." />
      <mustSupport value="true" />
    </element>
    <element id="Medication.batch.lotNumber">
      <path value="Medication.batch.lotNumber" />
      <short value="Chargennummer" />
      <comment value="Gemäß Anlage 1 der TA7 kann hier übergangsweise bis zum 30. Juni 2025 eine Musterchargennummer (&quot;STELLEN&quot;) eingetragen werden. Wenn die Übermittlung der Chargenbezeichnung beim Stellen von Arzneimitteln technisch nicht möglich ist, z.B. beim Verblistern, wird von der Verpflichtung zur Chargendokumentation abgesehen. Dementsprechend kann anstatt der tatsächlichen Chargenbezeichnungen &quot;STELLEN&quot; in das hierbeschirebene Datenfeld eingetragen werden." />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>