<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="GKVSV-PR-TA7-Rechnung-Composition" />
  <url value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_PR_TA7_Rechnung_Composition" />
  <version value="1.5.1" />
  <name value="GKVSV_PR_TA7_Rechnung_Composition" />
  <title value="GKVSV_PR_TA7_Rechnung_Composition" />
  <status value="active" />
  <date value="2025-03-31" />
  <description value="TA7 Rechnung - Composition" />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Composition" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Composition" />
  <derivation value="constraint" />
  <differential>
    <element id="Composition.meta">
      <path value="Composition.meta" />
      <min value="1" />
    </element>
    <element id="Composition.meta.profile">
      <path value="Composition.meta.profile" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Composition.meta.profile:erpProfile">
      <path value="Composition.meta.profile" />
      <sliceName value="erpProfile" />
      <min value="1" />
      <max value="1" />
      <fixedCanonical value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_PR_TA7_Rechnung_Composition|1.5" />
    </element>
    <element id="Composition.implicitRules">
      <path value="Composition.implicitRules" />
      <max value="0" />
    </element>
    <element id="Composition.language">
      <path value="Composition.language" />
      <max value="0" />
    </element>
    <element id="Composition.text">
      <path value="Composition.text" />
      <max value="0" />
    </element>
    <element id="Composition.contained">
      <path value="Composition.contained" />
      <max value="0" />
    </element>
    <element id="Composition.extension">
      <path value="Composition.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <min value="2" />
    </element>
    <element id="Composition.extension:empfaengerIK">
      <path value="Composition.extension" />
      <sliceName value="empfaengerIK" />
      <short value="Empfänger-IK" />
      <definition value="IK des Empfängers" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_EX_TA7_IK_Empfaenger" />
      </type>
    </element>
    <element id="Composition.extension:kostentraegerIK">
      <path value="Composition.extension" />
      <sliceName value="kostentraegerIK" />
      <short value="Kostenträger-IK" />
      <definition value="IK des Kostenträgers" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_EX_TA7_IK_Kostentraeger" />
      </type>
    </element>
    <element id="Composition.identifier">
      <path value="Composition.identifier" />
      <short value="Rechnungsnummer" />
      <min value="1" />
    </element>
    <element id="Composition.identifier.use">
      <path value="Composition.identifier.use" />
      <max value="0" />
    </element>
    <element id="Composition.identifier.type">
      <path value="Composition.identifier.type" />
      <max value="0" />
    </element>
    <element id="Composition.identifier.system">
      <path value="Composition.identifier.system" />
      <min value="1" />
      <fixedUri value="https://fhir.gkvsv.de/NamingSystem/GKVSV_NS_Rechnungsnummer" />
    </element>
    <element id="Composition.identifier.value">
      <path value="Composition.identifier.value" />
      <short value="Rechnungsnummer" />
      <min value="1" />
      <constraint>
        <key value="Rechnungsnummer-maxLength" />
        <severity value="error" />
        <human value="Die Rechnungsnummer darf maximal 20 Zeichen lang sein." />
        <expression value="length() &lt;= 20" />
        <source value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_PR_TA7_Rechnung_Composition" />
      </constraint>
      <constraint>
        <key value="char-1" />
        <severity value="error" />
        <human value="Die Rechnungsnummer darf nicht die Zeichen  &quot;/:?*\&quot;&lt;&gt;|&quot; enthalten." />
        <expression value="toString().matches('^\\S*[\/:?*\\\&quot;&lt;&gt;|]\\S*$').not()" />
        <source value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_PR_TA7_Rechnung_Composition" />
      </constraint>
      <constraint>
        <key value="char-2" />
        <severity value="error" />
        <human value="Die Rechnungsnummer darf nicht die Zeichenkette &quot;\\&quot; enthalten." />
        <expression value="toString().contains('\\').not()" />
        <source value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_PR_TA7_Rechnung_Composition" />
      </constraint>
    </element>
    <element id="Composition.identifier.period">
      <path value="Composition.identifier.period" />
      <max value="0" />
    </element>
    <element id="Composition.identifier.assigner">
      <path value="Composition.identifier.assigner" />
      <max value="0" />
    </element>
    <element id="Composition.status">
      <path value="Composition.status" />
      <fixedCode value="final" />
    </element>
    <element id="Composition.type">
      <path value="Composition.type" />
      <short value="Rechnungsart" />
    </element>
    <element id="Composition.type.coding">
      <path value="Composition.type.coding" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Composition.type.coding.system">
      <path value="Composition.type.coding.system" />
      <min value="1" />
      <fixedUri value="https://fhir.gkvsv.de/CodeSystem/GKVSV_CS_ERP_Rechnungsart" />
    </element>
    <element id="Composition.type.coding.version">
      <path value="Composition.type.coding.version" />
      <max value="0" />
    </element>
    <element id="Composition.type.coding.code">
      <path value="Composition.type.coding.code" />
      <min value="1" />
    </element>
    <element id="Composition.type.coding.userSelected">
      <path value="Composition.type.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="Composition.type.text">
      <path value="Composition.type.text" />
      <max value="0" />
    </element>
    <element id="Composition.category">
      <path value="Composition.category" />
      <max value="0" />
    </element>
    <element id="Composition.subject">
      <path value="Composition.subject" />
      <max value="0" />
    </element>
    <element id="Composition.encounter">
      <path value="Composition.encounter" />
      <max value="0" />
    </element>
    <element id="Composition.date">
      <path value="Composition.date" />
      <short value="Abrechnungszeitraum" />
      <definition value="Anzugeben ist der letzte Tag des Abrechnungszeitraums" />
      <constraint>
        <key value="form-1" />
        <severity value="error" />
        <human value="Wert muss ein Datum in der Form: YYYY-MM-DD sein." />
        <expression value="toString().matches('^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1]))?)?$')" />
        <source value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_PR_TA7_Rechnung_Composition" />
      </constraint>
    </element>
    <element id="Composition.date.extension">
      <path value="Composition.date.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Composition.date.extension:Rechnungsdatum">
      <path value="Composition.date.extension" />
      <sliceName value="Rechnungsdatum" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_EX_ERP_TA7_Rechnungsdatum" />
      </type>
    </element>
    <element id="Composition.author">
      <path value="Composition.author" />
      <short value="Absender-IK" />
      <definition value="IK des Absenders" />
      <max value="1" />
    </element>
    <element id="Composition.author.reference">
      <path value="Composition.author.reference" />
      <max value="0" />
    </element>
    <element id="Composition.author.type">
      <path value="Composition.author.type" />
      <max value="0" />
    </element>
    <element id="Composition.author.identifier">
      <path value="Composition.author.identifier" />
      <min value="1" />
    </element>
    <element id="Composition.author.identifier.use">
      <path value="Composition.author.identifier.use" />
      <max value="0" />
    </element>
    <element id="Composition.author.identifier.type">
      <path value="Composition.author.identifier.type" />
      <max value="0" />
    </element>
    <element id="Composition.author.identifier.system">
      <path value="Composition.author.identifier.system" />
      <min value="1" />
      <fixedUri value="http://fhir.de/sid/arge-ik/iknr" />
    </element>
    <element id="Composition.author.identifier.value">
      <path value="Composition.author.identifier.value" />
      <short value="Absender-IK" />
      <definition value="IK des Absenders" />
      <min value="1" />
      <constraint>
        <key value="AbsenderIK-length" />
        <severity value="error" />
        <human value="Die IK des Absenders muss 9 Zeichen lang und numerisch sein." />
        <expression value="toString().matches('^\\d{9}$')" />
        <source value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_PR_TA7_Rechnung_Composition" />
      </constraint>
    </element>
    <element id="Composition.author.identifier.period">
      <path value="Composition.author.identifier.period" />
      <max value="0" />
    </element>
    <element id="Composition.author.identifier.assigner">
      <path value="Composition.author.identifier.assigner" />
      <max value="0" />
    </element>
    <element id="Composition.author.display">
      <path value="Composition.author.display" />
      <max value="0" />
    </element>
    <element id="Composition.title">
      <path value="Composition.title" />
      <fixedString value="elektronische Rechnung" />
    </element>
    <element id="Composition.confidentiality">
      <path value="Composition.confidentiality" />
      <max value="0" />
    </element>
    <element id="Composition.attester">
      <path value="Composition.attester" />
      <max value="0" />
    </element>
    <element id="Composition.custodian">
      <path value="Composition.custodian" />
      <max value="0" />
    </element>
    <element id="Composition.relatesTo">
      <path value="Composition.relatesTo" />
      <max value="0" />
    </element>
    <element id="Composition.event">
      <path value="Composition.event" />
      <max value="0" />
    </element>
    <element id="Composition.section">
      <path value="Composition.section" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="code.coding.code" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <min value="2" />
    </element>
    <element id="Composition.section:Rechnung_List">
      <path value="Composition.section" />
      <sliceName value="Rechnung_List" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Composition.section:Rechnung_List.title">
      <path value="Composition.section.title" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.code">
      <path value="Composition.section.code" />
      <min value="1" />
    </element>
    <element id="Composition.section:Rechnung_List.code.coding">
      <path value="Composition.section.code.coding" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Composition.section:Rechnung_List.code.coding.system">
      <path value="Composition.section.code.coding.system" />
      <min value="1" />
      <fixedUri value="https://fhir.gkvsv.de/CodeSystem/GKVSV_CS_ERP_TA7" />
    </element>
    <element id="Composition.section:Rechnung_List.code.coding.version">
      <path value="Composition.section.code.coding.version" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.code.coding.code">
      <path value="Composition.section.code.coding.code" />
      <min value="1" />
      <fixedCode value="LR" />
    </element>
    <element id="Composition.section:Rechnung_List.code.coding.display">
      <path value="Composition.section.code.coding.display" />
      <fixedString value="Liste der Rechnungen" />
    </element>
    <element id="Composition.section:Rechnung_List.code.coding.userSelected">
      <path value="Composition.section.code.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.code.text">
      <path value="Composition.section.code.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.author">
      <path value="Composition.section.author" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.focus">
      <path value="Composition.section.focus" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.text">
      <path value="Composition.section.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.mode">
      <path value="Composition.section.mode" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.orderedBy">
      <path value="Composition.section.orderedBy" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.entry">
      <path value="Composition.section.entry" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_PR_TA7_Rechnung_List|1.5.1" />
      </type>
    </element>
    <element id="Composition.section:Rechnung_List.entry.reference">
      <path value="Composition.section.entry.reference" />
      <min value="1" />
    </element>
    <element id="Composition.section:Rechnung_List.entry.type">
      <path value="Composition.section.entry.type" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.entry.identifier">
      <path value="Composition.section.entry.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.entry.display">
      <path value="Composition.section.entry.display" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.emptyReason">
      <path value="Composition.section.emptyReason" />
      <max value="0" />
    </element>
    <element id="Composition.section:Rechnung_List.section">
      <path value="Composition.section.section" />
      <max value="0" />
      <contentReference value="http://hl7.org/fhir/StructureDefinition/Composition#Composition.section" />
    </element>
    <element id="Composition.section:RezeptBundle">
      <path value="Composition.section" />
      <sliceName value="RezeptBundle" />
      <min value="1" />
    </element>
    <element id="Composition.section:RezeptBundle.title">
      <path value="Composition.section.title" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.code">
      <path value="Composition.section.code" />
      <min value="1" />
    </element>
    <element id="Composition.section:RezeptBundle.code.coding">
      <path value="Composition.section.code.coding" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Composition.section:RezeptBundle.code.coding.system">
      <path value="Composition.section.code.coding.system" />
      <min value="1" />
      <fixedUri value="https://fhir.gkvsv.de/CodeSystem/GKVSV_CS_ERP_TA7" />
    </element>
    <element id="Composition.section:RezeptBundle.code.coding.version">
      <path value="Composition.section.code.coding.version" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.code.coding.code">
      <path value="Composition.section.code.coding.code" />
      <min value="1" />
      <fixedCode value="RB" />
    </element>
    <element id="Composition.section:RezeptBundle.code.coding.display">
      <path value="Composition.section.code.coding.display" />
      <fixedString value="Rezept-Bundle" />
    </element>
    <element id="Composition.section:RezeptBundle.code.coding.userSelected">
      <path value="Composition.section.code.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.code.text">
      <path value="Composition.section.code.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.author">
      <path value="Composition.section.author" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.focus">
      <path value="Composition.section.focus" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.text">
      <path value="Composition.section.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.mode">
      <path value="Composition.section.mode" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.orderedBy">
      <path value="Composition.section.orderedBy" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.entry">
      <path value="Composition.section.entry" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.gkvsv.de/StructureDefinition/GKVSV_PR_TA7_RezeptBundle" />
      </type>
    </element>
    <element id="Composition.section:RezeptBundle.entry.reference">
      <path value="Composition.section.entry.reference" />
      <min value="1" />
    </element>
    <element id="Composition.section:RezeptBundle.entry.type">
      <path value="Composition.section.entry.type" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.entry.identifier">
      <path value="Composition.section.entry.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.entry.display">
      <path value="Composition.section.entry.display" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.emptyReason">
      <path value="Composition.section.emptyReason" />
      <max value="0" />
    </element>
    <element id="Composition.section:RezeptBundle.section">
      <path value="Composition.section.section" />
      <max value="0" />
      <contentReference value="http://hl7.org/fhir/StructureDefinition/Composition#Composition.section" />
    </element>
  </differential>
</StructureDefinition>