<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="VerwandtePerson" />
  <url value="https://www.oegd.de/fhir/seu/StructureDefinition/VerwandtePerson" />
  <name value="VerwandtePerson" />
  <status value="draft" />
  <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.extension">
      <path value="RelatedPerson.extension" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.extension:DatEnde">
      <path value="RelatedPerson.extension" />
      <sliceName value="DatEnde" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.oegd.de/fhir/seu/StructureDefinition/VerwandtePersonDatEndeEX" />
      </type>
    </element>
    <element id="RelatedPerson.extension:AuskunftssperreGrund">
      <path value="RelatedPerson.extension" />
      <sliceName value="AuskunftssperreGrund" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.oegd.de/fhir/seu/StructureDefinition/VerwandtePersonAuskunftssperreGrundEX" />
      </type>
    </element>
    <element id="RelatedPerson.extension:AuskunftssperreFrist">
      <path value="RelatedPerson.extension" />
      <sliceName value="AuskunftssperreFrist" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.oegd.de/fhir/seu/StructureDefinition/VerwandtePersonAuskunftssperreFristEX" />
      </type>
    </element>
    <element id="RelatedPerson.patient">
      <path value="RelatedPerson.patient" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.patient.reference">
      <path value="RelatedPerson.patient.reference" />
      <min value="1" />
    </element>
    <element id="RelatedPerson.name">
      <path value="RelatedPerson.name" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Name">
      <path value="RelatedPerson.name" />
      <sliceName value="Name" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="HumanName" />
        <profile value="http://fhir.de/StructureDefinition/humanname-de-basis" />
      </type>
      <patternHumanName>
        <use value="official" />
      </patternHumanName>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Name.use">
      <path value="RelatedPerson.name.use" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Name.family">
      <path value="RelatedPerson.name.family" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Name.family.extension:namenszusatz">
      <path value="RelatedPerson.name.family.extension" />
      <sliceName value="namenszusatz" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Name.family.extension:nachname">
      <path value="RelatedPerson.name.family.extension" />
      <sliceName value="nachname" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Name.family.extension:vorsatzwort">
      <path value="RelatedPerson.name.family.extension" />
      <sliceName value="vorsatzwort" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Name.given">
      <path value="RelatedPerson.name.given" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Name.prefix">
      <path value="RelatedPerson.name.prefix" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Name.prefix.extension:prefix-qualifier">
      <path value="RelatedPerson.name.prefix.extension" />
      <sliceName value="prefix-qualifier" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Name.prefix.extension:prefix-qualifier.value[x]">
      <path value="RelatedPerson.name.prefix.extension.value[x]" />
      <fixedCode value="AC" />
    </element>
    <element id="RelatedPerson.name:Geburtsname">
      <path value="RelatedPerson.name" />
      <sliceName value="Geburtsname" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="HumanName" />
        <profile value="http://fhir.de/StructureDefinition/humanname-de-basis" />
      </type>
      <patternHumanName>
        <use value="maiden" />
      </patternHumanName>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Geburtsname.use">
      <path value="RelatedPerson.name.use" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Geburtsname.family">
      <path value="RelatedPerson.name.family" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Geburtsname.family.extension:namenszusatz">
      <path value="RelatedPerson.name.family.extension" />
      <sliceName value="namenszusatz" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Geburtsname.family.extension:nachname">
      <path value="RelatedPerson.name.family.extension" />
      <sliceName value="nachname" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Geburtsname.family.extension:vorsatzwort">
      <path value="RelatedPerson.name.family.extension" />
      <sliceName value="vorsatzwort" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.name:Geburtsname.given">
      <path value="RelatedPerson.name.given" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.name:Geburtsname.prefix">
      <path value="RelatedPerson.name.prefix" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.address">
      <path value="RelatedPerson.address" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift">
      <path value="RelatedPerson.address" />
      <sliceName value="Strassenanschrift" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Address" />
        <profile value="http://fhir.de/StructureDefinition/address-de-basis" />
      </type>
      <patternAddress>
        <type value="both" />
      </patternAddress>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.extension:wohnungsinhaber">
      <path value="RelatedPerson.address.extension" />
      <sliceName value="wohnungsinhaber" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.oegd.de/fhir/seu/StructureDefinition/WohnungsInhaberEX" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.type">
      <path value="RelatedPerson.address.type" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.line">
      <path value="RelatedPerson.address.line" />
      <min value="1" />
      <mustSupport value="true" />
    </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:Hausnummer">
      <path value="RelatedPerson.address.line.extension" />
      <sliceName value="Hausnummer" />
      <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: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" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.city.extension:gemeindeschluessel">
      <path value="RelatedPerson.address.city.extension" />
      <sliceName value="gemeindeschluessel" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://fhir.de/StructureDefinition/destatis/ags" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.city.extension:frueherergemeindename">
      <path value="RelatedPerson.address.city.extension" />
      <sliceName value="frueherergemeindename" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.oegd.de/fhir/seu/StructureDefinition/FruehererGemeindeNameEX" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.postalCode">
      <path value="RelatedPerson.address.postalCode" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Strassenanschrift.country">
      <path value="RelatedPerson.address.country" />
      <min value="1" />
      <constraint>
        <key value="address-cnt-2or3-char" />
        <severity value="warning" />
        <human value="The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2." />
        <expression value="country.empty() or (country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2') or country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3'))" />
        <source value="https://www.oegd.de/fhir/seu/StructureDefinition/VerwandtePerson" />
      </constraint>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach">
      <path value="RelatedPerson.address" />
      <sliceName value="Postfach" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Address" />
        <profile value="http://fhir.de/StructureDefinition/address-de-basis" />
      </type>
      <patternAddress>
        <type value="postal" />
      </patternAddress>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.type">
      <path value="RelatedPerson.address.type" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.line">
      <path value="RelatedPerson.address.line" />
      <min value="1" />
      <mustSupport value="true" />
    </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" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.city">
      <path value="RelatedPerson.address.city" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.postalCode">
      <path value="RelatedPerson.address.postalCode" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.address:Postfach.country">
      <path value="RelatedPerson.address.country" />
      <min value="1" />
      <constraint>
        <key value="address-cnt-2or3-char" />
        <severity value="warning" />
        <human value="The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2." />
        <expression value="country.empty() or (country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2') or country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3'))" />
        <source value="https://www.oegd.de/fhir/seu/StructureDefinition/VerwandtePerson" />
      </constraint>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.communication">
      <path value="RelatedPerson.communication" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.communication.language">
      <path value="RelatedPerson.communication.language" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.communication:deutsch">
      <path value="RelatedPerson.communication" />
      <sliceName value="deutsch" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.communication:deutsch.extension">
      <path value="RelatedPerson.communication.extension" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.communication:deutsch.extension:deutschkenntnis">
      <path value="RelatedPerson.communication.extension" />
      <sliceName value="deutschkenntnis" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.oegd.de/fhir/seu/StructureDefinition/VerwandtePersonDeutschkenntnisEX" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="RelatedPerson.communication:deutsch.language">
      <path value="RelatedPerson.communication.language" />
      <patternCodeableConcept>
        <coding>
          <system value="urn:ietf:bcp:47" />
          <code value="de" />
          <display value="German" />
        </coding>
      </patternCodeableConcept>
    </element>
  </differential>
</StructureDefinition>