<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="epa-related-person" />
  <url value="https://gematik.de/fhir/epa/StructureDefinition/epa-related-person" />
  <version value="1.1.0" />
  <name value="EPARelatedPerson" />
  <title value="EPA Related Person" />
  <status value="active" />
  <experimental value="false" />
  <date value="2024-08-14" />
  <publisher value="mio42 GmbH" />
  <description value="Hier wird eine Kontakt- oder Bezugsperson erfasst, die eine Beziehung zur behandelten Person hat. Sie kann an der Versorgung der behandelten Person beteiligt sein." />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="RelatedPerson" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/RelatedPerson" />
  <derivation value="constraint" />
  <differential>
    <element id="RelatedPerson">
      <path value="RelatedPerson" />
      <definition value="Hier wird eine Kontakt- oder Bezugsperson erfasst, die eine Beziehung zur behandelten Person hat. Sie kann an der Versorgung der behandelten Person beteiligt sein." />
    </element>
    <element id="RelatedPerson.meta">
      <path value="RelatedPerson.meta" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.meta.versionId">
      <path value="RelatedPerson.meta.versionId" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.meta.lastUpdated">
      <path value="RelatedPerson.meta.lastUpdated" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.text">
      <path value="RelatedPerson.text" />
      <definition value="In diesem Element können die in der Instanz enthaltenen Informationen in einer menschenlesbaren Form zusammengefasst werden. Dabei ist zu beachten, dass keine Informationen aufgenommen werden dürfen, die nicht in strukturierter Form an anderer Stelle in der Instanz enthalten sind." />
    </element>
    <element id="RelatedPerson.text.status">
      <path value="RelatedPerson.text.status" />
      <patternCode value="extensions" />
    </element>
    <element id="RelatedPerson.extension">
      <path value="RelatedPerson.extension" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.extension:additional-comment">
      <path value="RelatedPerson.extension" />
      <sliceName value="additional-comment" />
      <definition value="Hier können weitere Informationen, beispielsweise die Pflegebedürftigkeitssituation der Kontaktperson, dargestellt werden. Wenn die Kontaktperson auch gesetzlich betreuende Person ist, kann hier beschrieben werden, für welchen Bereich sie bevollmächtigt ist." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://gematik.de/fhir/epa/StructureDefinition/epa-additional-comment-extension" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.extension:additional-comment.value[x]">
      <path value="RelatedPerson.extension.value[x]" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.patient">
      <path value="RelatedPerson.patient" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.patient.identifier">
      <path value="RelatedPerson.patient.identifier" />
      <min value="1" />
      <type>
        <code value="Identifier" />
        <profile value="http://fhir.de/StructureDefinition/identifier-kvid-10" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship">
      <path value="RelatedPerson.relationship" />
      <definition value="Hier wird die Beziehung der Kontaktperson zur Patient:in anhand eines entsprechenden Codes oder mit einem Freitext angegeben." />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship.coding">
      <path value="RelatedPerson.relationship.coding" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <definition value="Hier werden Codes angegeben." />
      <comment value="Das MustSupport gilt nur für die vordefinierten Slices." />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship.coding:relationship-type">
      <path value="RelatedPerson.relationship.coding" />
      <sliceName value="relationship-type" />
      <definition value="Hier wird die Beziehung der Kontaktperson zur Patient:in anhand eines Codes aus einer vorgegebenen Werteliste angegeben." />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <valueSet value="http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype" />
      </binding>
    </element>
    <element id="RelatedPerson.relationship.coding:relationship-type.system">
      <path value="RelatedPerson.relationship.coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship.coding:relationship-type.version">
      <path value="RelatedPerson.relationship.coding.version" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship.coding:relationship-type.code">
      <path value="RelatedPerson.relationship.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship.coding:relationship-type.display">
      <path value="RelatedPerson.relationship.coding.display" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship.text">
      <path value="RelatedPerson.relationship.text" />
      <definition value="Hier wird ein Freitext eingetragen." />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name">
      <path value="RelatedPerson.name" />
      <definition value="Dieses Element beschreibt diverse Namensbestandteile einer Person." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="HumanName" />
        <profile value="http://fhir.de/StructureDefinition/humanname-de-basis" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.use">
      <path value="RelatedPerson.name.use" />
      <min value="1" />
      <fixedCode value="official" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.text">
      <path value="RelatedPerson.name.text" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family">
      <path value="RelatedPerson.name.family" />
      <definition value="Nachname einer Person." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension">
      <path value="RelatedPerson.name.family.extension" />
      <comment value="Das MustSupport gilt nur für die vordefinierten Slices." />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension:namenszusatz">
      <path value="RelatedPerson.name.family.extension" />
      <sliceName value="namenszusatz" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension:namenszusatz.value[x]">
      <path value="RelatedPerson.name.family.extension.value[x]" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension:nachname">
      <path value="RelatedPerson.name.family.extension" />
      <sliceName value="nachname" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension:nachname.value[x]">
      <path value="RelatedPerson.name.family.extension.value[x]" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension:vorsatzwort">
      <path value="RelatedPerson.name.family.extension" />
      <sliceName value="vorsatzwort" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension:vorsatzwort.value[x]">
      <path value="RelatedPerson.name.family.extension.value[x]" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.given">
      <path value="RelatedPerson.name.given" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.prefix">
      <path value="RelatedPerson.name.prefix" />
      <definition value="Titel als akademischer Grad. Beispiele: Dr.med., Dr.rer.nat., Prof." />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.prefix.extension">
      <path value="RelatedPerson.name.prefix.extension" />
      <comment value="Das MustSupport gilt nur für die vordefinierten Slices." />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.prefix.extension:prefix-qualifier">
      <path value="RelatedPerson.name.prefix.extension" />
      <sliceName value="prefix-qualifier" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.prefix.extension:prefix-qualifier.value[x]">
      <path value="RelatedPerson.name.prefix.extension.value[x]" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.telecom">
      <path value="RelatedPerson.telecom" />
      <definition value="Dieses Element beschreibt die vorhandenen Kontaktmöglichkeiten." />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.telecom.system">
      <path value="RelatedPerson.telecom.system" />
      <definition value="Definition der Art des Kontaktes, z. B. Telefon (phone), E-Mail, Fax." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.telecom.value">
      <path value="RelatedPerson.telecom.value" />
      <definition value="In diesem Element können Kontaktinformationen passend zum Kontaktkanal angegeben werden. Beispiele für mögliche Werte sind: &quot;m.mustermann@mio42.de&quot; (beim Kontaktkanal &quot;E-mail&quot;, oder &quot;030712345678&quot; (beim Kontaktkanal &quot;Telefon&quot;)." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.gender">
      <path value="RelatedPerson.gender" />
      <definition value="Geschlechtsdefinition nach den Versichertenstammdaten (VSD)" />
    </element>
    <element id="RelatedPerson.gender.extension:other-amtlich">
      <path value="RelatedPerson.gender.extension" />
      <sliceName value="other-amtlich" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://fhir.de/StructureDefinition/gender-amtlich-de" />
      </type>
    </element>
    <element id="RelatedPerson.address">
      <path value="RelatedPerson.address" />
      <definition value="Hier können Angaben zur Anschrift der Kontaktperson gemacht werden." />
      <comment value="Das MustSupport gilt nur für die vordefinierten Slices." />
      <type>
        <code value="Address" />
        <profile value="http://fhir.de/StructureDefinition/address-de-basis" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.extension">
      <path value="RelatedPerson.address.extension" />
      <comment value="Das MustSupport gilt nur für die vordefinierten Slices." />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.extension:Stadtteil">
      <path value="RelatedPerson.address.extension" />
      <sliceName value="Stadtteil" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.extension:Stadtteil.value[x]">
      <path value="RelatedPerson.address.extension.value[x]" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.type">
      <path value="RelatedPerson.address.type" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.line">
      <path value="RelatedPerson.address.line" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.line.extension">
      <path value="RelatedPerson.address.line.extension" />
      <comment value="Das MustSupport gilt nur für die vordefinierten Slices." />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.line.extension:Strasse">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Strasse" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.line.extension:Strasse.value[x]">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.line.extension:Hausnummer">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Hausnummer" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.line.extension:Hausnummer.value[x]">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.line.extension:Adresszusatz">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Adresszusatz" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.line.extension:Adresszusatz.value[x]">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.line.extension:Postfach">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Postfach" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.line.extension:Postfach.value[x]">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.city">
      <path value="RelatedPerson.address.city" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.postalCode">
      <path value="RelatedPerson.address.postalCode" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address.country">
      <path value="RelatedPerson.address.country" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>