<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="https://fhir.kbv.de/StructureDefinition/KBV_PR_MIO_PS_Related_Person_Contact_Person" />
  <version value="1.0.0" />
  <name value="KBV_PR_MIO_PS_Related_Person_Contact_Person" />
  <status value="draft" />
  <publisher value="Kassenärztliche Bundesvereinigung (KBV)" />
  <description value="Dieses Profil bildet einen weiteren Kontakt der Patientin bzw. des Patienten ab." />
  <fhirVersion value="4.0.1" />
  <mapping>
    <identity value="rim" />
    <uri value="http://hl7.org/v3" />
    <name value="RIM Mapping" />
  </mapping>
  <mapping>
    <identity value="w5" />
    <uri value="http://hl7.org/fhir/fivews" />
    <name value="FiveWs Pattern Mapping" />
  </mapping>
  <mapping>
    <identity value="v2" />
    <uri value="http://hl7.org/v2" />
    <name value="HL7 v2 Mapping" />
  </mapping>
  <kind value="resource" />
  <abstract value="false" />
  <type value="RelatedPerson" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/RelatedPerson" />
  <derivation value="constraint" />
  <differential>
    <element id="RelatedPerson.meta">
      <path value="RelatedPerson.meta" />
      <min value="1" />
    </element>
    <element id="RelatedPerson.meta.versionId">
      <path value="RelatedPerson.meta.versionId" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.meta.lastUpdated">
      <path value="RelatedPerson.meta.lastUpdated" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.meta.source">
      <path value="RelatedPerson.meta.source" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.meta.profile">
      <path value="RelatedPerson.meta.profile" />
      <min value="1" />
      <max value="1" />
      <fixedCanonical value="https://fhir.kbv.de/StructureDefinition/KBV_PR_MIO_PS_Related_Person_Contact_Person|1.0.0" />
    </element>
    <element id="RelatedPerson.meta.security">
      <path value="RelatedPerson.meta.security" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.meta.tag">
      <path value="RelatedPerson.meta.tag" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.implicitRules">
      <path value="RelatedPerson.implicitRules" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.language">
      <path value="RelatedPerson.language" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.contained">
      <path value="RelatedPerson.contained" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.identifier">
      <path value="RelatedPerson.identifier" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.active">
      <path value="RelatedPerson.active" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.patient">
      <path value="RelatedPerson.patient" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.kbv.de/StructureDefinition/KBV_PR_MIO_PS_Patient|1.0.0" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.patient.reference">
      <path value="RelatedPerson.patient.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.patient.type">
      <path value="RelatedPerson.patient.type" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.patient.identifier">
      <path value="RelatedPerson.patient.identifier" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.patient.display">
      <path value="RelatedPerson.patient.display" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.relationship">
      <path value="RelatedPerson.relationship" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship.coding">
      <path value="RelatedPerson.relationship.coding" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <valueSet value="https://fhir.kbv.de/ValueSet/KBV_VS_MIO_PS_Role_Class" />
      </binding>
    </element>
    <element id="RelatedPerson.relationship.coding.system">
      <path value="RelatedPerson.relationship.coding.system" />
      <min value="1" />
    </element>
    <element id="RelatedPerson.relationship.coding.version">
      <path value="RelatedPerson.relationship.coding.version" />
      <min value="1" />
    </element>
    <element id="RelatedPerson.relationship.coding.code">
      <path value="RelatedPerson.relationship.coding.code" />
      <min value="1" />
    </element>
    <element id="RelatedPerson.relationship.coding.display">
      <path value="RelatedPerson.relationship.coding.display" />
      <min value="1" />
    </element>
    <element id="RelatedPerson.relationship.coding.display.extension">
      <path value="RelatedPerson.relationship.coding.display.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="RelatedPerson.relationship.coding.display.extension:anzeigenameRelationship">
      <path value="RelatedPerson.relationship.coding.display.extension" />
      <sliceName value="anzeigenameRelationship" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.kbv.de/StructureDefinition/KBV_EX_Base_Terminology_German" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship.coding.display.extension:anzeigenameRelationship.extension">
      <path value="RelatedPerson.relationship.coding.display.extension.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="RelatedPerson.relationship.coding.display.extension:anzeigenameRelationship.extension:content">
      <path value="RelatedPerson.relationship.coding.display.extension.extension" />
      <sliceName value="content" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship.coding.display.extension:anzeigenameRelationship.extension:content.value[x]">
      <path value="RelatedPerson.relationship.coding.display.extension.extension.value[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship.coding.display.extension:anzeigenameRelationship.extension:content.value[x]:valueString">
      <path value="RelatedPerson.relationship.coding.display.extension.extension.valueString" />
      <sliceName value="valueString" />
      <definition value="In diesem Attribut sollen die entsprechende deutsche Bezeichnung des Loinc oder Snomed-Codes aus der Conceptmap eingetragen werden, also in diesem Fall den Displaynamen des Targetsystems aus https://fhir.kbv.de/ConceptMap/KBV_CM_MIO_PS_Role_Class_FHIR_German|1.0.0 bzw. https://fhir.kbv.de/ConceptMap/KBV_CM_MIO_PS_Role_Class_SNOMEDCT_German|1.0.0" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.relationship.coding.userSelected">
      <path value="RelatedPerson.relationship.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.relationship.text">
      <path value="RelatedPerson.relationship.text" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.name">
      <path value="RelatedPerson.name" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="HumanName" />
        <profile value="http://fhir.de/StructureDefinition/humanname-de-basis|0.9.3" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.use">
      <path value="RelatedPerson.name.use" />
      <max value="0" />
    </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" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension">
      <path value="RelatedPerson.name.family.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </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]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <min value="1" />
    </element>
    <element id="RelatedPerson.name.family.extension:namenszusatz.value[x]:valueString">
      <path value="RelatedPerson.name.family.extension.value[x]" />
      <sliceName value="valueString" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension:nachname">
      <path value="RelatedPerson.name.family.extension" />
      <sliceName value="nachname" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension:nachname.value[x]">
      <path value="RelatedPerson.name.family.extension.value[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension:nachname.value[x]:valueString">
      <path value="RelatedPerson.name.family.extension.value[x]" />
      <sliceName value="valueString" />
      <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]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.family.extension:vorsatzwort.value[x]:valueString">
      <path value="RelatedPerson.name.family.extension.value[x]" />
      <sliceName value="valueString" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.given">
      <path value="RelatedPerson.name.given" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.prefix">
      <path value="RelatedPerson.name.prefix" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name.suffix">
      <path value="RelatedPerson.name.suffix" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.name.period">
      <path value="RelatedPerson.name.period" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.telecom">
      <path value="RelatedPerson.telecom" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.telecom.system">
      <path value="RelatedPerson.telecom.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.telecom.value">
      <path value="RelatedPerson.telecom.value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.telecom.use">
      <path value="RelatedPerson.telecom.use" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.telecom.rank">
      <path value="RelatedPerson.telecom.rank" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.telecom.period">
      <path value="RelatedPerson.telecom.period" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.gender">
      <path value="RelatedPerson.gender" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.birthDate">
      <path value="RelatedPerson.birthDate" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.address">
      <path value="RelatedPerson.address" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="type" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <max value="1" />
    </element>
    <element id="RelatedPerson.address:Postfach">
      <path value="RelatedPerson.address" />
      <sliceName value="Postfach" />
      <max value="1" />
      <type>
        <code value="Address" />
        <profile value="http://fhir.de/StructureDefinition/address-de-basis|0.9.2" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.extension">
      <path value="RelatedPerson.address.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="RelatedPerson.address:Postfach.extension:Stadtteil">
      <path value="RelatedPerson.address.extension" />
      <sliceName value="Stadtteil" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.extension:Stadtteil.value[x]">
      <path value="RelatedPerson.address.extension.value[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.extension:Stadtteil.value[x]:valueString">
      <path value="RelatedPerson.address.extension.value[x]" />
      <sliceName value="valueString" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.use">
      <path value="RelatedPerson.address.use" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.address:Postfach.type">
      <path value="RelatedPerson.address.type" />
      <min value="1" />
      <fixedCode value="postal" />
    </element>
    <element id="RelatedPerson.address:Postfach.line">
      <path value="RelatedPerson.address.line" />
      <max value="2" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.line.extension">
      <path value="RelatedPerson.address.line.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="RelatedPerson.address:Postfach.line.extension:Strasse">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Strasse" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.address:Postfach.line.extension:Hausnummer">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Hausnummer" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.address:Postfach.line.extension:Adresszusatz">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Adresszusatz" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.address:Postfach.line.extension:Postfach">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Postfach" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.line.extension:Postfach.value[x]">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.line.extension:Postfach.value[x]:valueString">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <sliceName value="valueString" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.city">
      <path value="RelatedPerson.address.city" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.state">
      <path value="RelatedPerson.address.state" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.address:Postfach.postalCode">
      <path value="RelatedPerson.address.postalCode" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.country">
      <path value="RelatedPerson.address.country" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.period">
      <path value="RelatedPerson.address.period" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift">
      <path value="RelatedPerson.address" />
      <sliceName value="Strassenanschrift" />
      <max value="1" />
      <type>
        <code value="Address" />
        <profile value="http://fhir.de/StructureDefinition/address-de-basis|0.9.2" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.extension">
      <path value="RelatedPerson.address.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.extension:Stadtteil">
      <path value="RelatedPerson.address.extension" />
      <sliceName value="Stadtteil" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.extension:Stadtteil.value[x]">
      <path value="RelatedPerson.address.extension.value[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.extension:Stadtteil.value[x]:valueString">
      <path value="RelatedPerson.address.extension.value[x]" />
      <sliceName value="valueString" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.use">
      <path value="RelatedPerson.address.use" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.type">
      <path value="RelatedPerson.address.type" />
      <min value="1" />
      <fixedCode value="both" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line">
      <path value="RelatedPerson.address.line" />
      <max value="2" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line.extension">
      <path value="RelatedPerson.address.line.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line.extension:Strasse">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Strasse" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line.extension:Strasse.value[x]">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line.extension:Strasse.value[x]:valueString">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <sliceName value="valueString" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line.extension:Hausnummer">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Hausnummer" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line.extension:Hausnummer.value[x]">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line.extension:Hausnummer.value[x]:valueString">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <sliceName value="valueString" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line.extension:Adresszusatz">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Adresszusatz" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line.extension:Adresszusatz.value[x]">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line.extension:Adresszusatz.value[x]:valueString">
      <path value="RelatedPerson.address.line.extension.value[x]" />
      <sliceName value="valueString" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line.extension:Postfach">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Postfach" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.city">
      <path value="RelatedPerson.address.city" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.state">
      <path value="RelatedPerson.address.state" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.postalCode">
      <path value="RelatedPerson.address.postalCode" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.country">
      <path value="RelatedPerson.address.country" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.period">
      <path value="RelatedPerson.address.period" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.photo">
      <path value="RelatedPerson.photo" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.period">
      <path value="RelatedPerson.period" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.communication">
      <path value="RelatedPerson.communication" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>