<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="http://mrdm.nl/fhir/StructureDefinition/mrdm-patient" />
  <name value="mrdm-patient" />
  <status value="draft" />
  <fhirVersion value="3.0.2" />
  <mapping>
    <identity value="hcim-patient-v2.0.1-2015EN" />
    <uri value="https://zibs.nl/wiki/Patient-v2.0.1(2015EN)" />
    <name value="HCIM Patient-v2.0.1(2015EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-maritalstatus-v1.2.1-2015EN" />
    <uri value="https://zibs.nl/wiki/MaritalStatus-v1.2.1(2015EN)" />
    <name value="HCIM MaritalStatus-v1.2.1(2015EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-contactperson-v1.2-2015EN" />
    <uri value="https://zibs.nl/wiki/ContactPerson-v1.2(2015EN)" />
    <name value="HCIM ContactPerson-v1.2(2015EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-healthcareprovider-v1.2-2015EN" />
    <uri value="https://zibs.nl/wiki/HealthcareProvider-v1.2(2015EN)" />
    <name value="HCIM HealthcareProvider-v1.2(2015EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-healthprofessional-v1.2.1-2015EN" />
    <uri value="https://zibs.nl/wiki/HealthProfessional-v1.2.1(2015EN)" />
    <name value="HCIM HealthProfessional-v1.2.1(2015EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-nationality-v2.0-2015EN" />
    <uri value="https://zibs.nl/wiki/Nationality-v2.0(2015EN)" />
    <name value="HCIM Nationality-v2.0(2015EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-payer-v1.2-2015EN" />
    <uri value="https://zibs.nl/wiki/Payer-v1.2(2015EN)" />
    <name value="HCIM Payer-v1.2(2015EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-patient-v3.0-2016EN" />
    <uri value="https://zibs.nl/wiki/Patient-v3.0(2016EN)" />
    <name value="HCIM Patient-v3.0(2016EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-maritalstatus-v3.0-2016EN" />
    <uri value="https://zibs.nl/wiki/MaritalStatus-v3.0(2016EN)" />
    <name value="HCIM MaritalStatus-v3.0(2016EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-contactperson-v3.0-2016EN" />
    <uri value="https://zibs.nl/wiki/ContactPerson-v3.0(2016EN)" />
    <name value="HCIM ContactPerson-v3.0(2016EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-healthcareprovider-v3.0-2016EN" />
    <uri value="https://zibs.nl/wiki/HealthcareProvider-v3.0(2016EN)" />
    <name value="HCIM HealthcareProvider-v3.0(2016EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-healthprofessional-v3.0-2016EN" />
    <uri value="https://zibs.nl/wiki/HealthProfessional-v3.0(2016EN)" />
    <name value="HCIM HealthProfessional-v3.0(2016EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-nationality-v3.0-2016EN" />
    <uri value="https://zibs.nl/wiki/Nationality-v3.0(2016EN)" />
    <name value="HCIM Nationality-v3.0(2016EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-payer-v3.0-2016EN" />
    <uri value="https://zibs.nl/wiki/Payer-v3.0(2016EN)" />
    <name value="HCIM Payer-v3.0(2016EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-patient-v3.1-2017EN" />
    <uri value="https://zibs.nl/wiki/Patient-v3.1(2017EN)" />
    <name value="HCIM Patient-v3.1(2017EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-maritalstatus-v3.0-2017EN" />
    <uri value="https://zibs.nl/wiki/MaritalStatus-v3.0(2017EN)" />
    <name value="HCIM MaritalStatus-v3.0(2017EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-contactperson-v3.1-2017EN" />
    <uri value="https://zibs.nl/wiki/ContactPerson-v3.1(2017EN)" />
    <name value="HCIM ContactPerson-v3.1(2017EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-healthcareprovider-v3.1-2017EN" />
    <uri value="https://zibs.nl/wiki/HealthcareProvider-v3.1(2017EN)" />
    <name value="HCIM HealthcareProvider-v3.1(2017EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-healthprofessional-v3.1-2017EN" />
    <uri value="https://zibs.nl/wiki/HealthProfessional-v3.1(2017EN)" />
    <name value="HCIM HealthProfessional-v3.1(2017EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-nationality-v3.0-2017EN" />
    <uri value="https://zibs.nl/wiki/Nationality-v3.0(2017EN)" />
    <name value="HCIM Nationality-v3.0(2017EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-payer-v3.1-2017EN" />
    <uri value="https://zibs.nl/wiki/Payer-v3.1(2017EN)" />
    <name value="HCIM Payer-v3.1(2017EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-contactinformation-v1.0-2017EN" />
    <uri value="https://zibs.nl/wiki/ContactInformation-v1.0(2017EN)" />
    <name value="HCIM ContactInformation-v1.0(2017EN)" />
    <comment value="ContactInformation has become an independent information model as of release 2017 of the HCIMs." />
  </mapping>
  <mapping>
    <identity value="hcim-languageproficiency-v3.1-2017EN" />
    <uri value="https://zibs.nl/wiki/LanguageProficiency-v3.1(2017EN)" />
    <name value="HCIM LanguageProficiency-v3.1(2017EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-freedomrestrictingmeasures-v3.1-2017EN" />
    <uri value="https://zibs.nl/wiki/FreedomRestrictingMeasures-v3.1(2017EN)" />
    <name value="HCIM FreedomRestrictingMeasures-v3.1(2017EN)" />
    <comment value="Concerns only LegalStatus concept. This will become an independent information model as of release 2018 of the HCIMs." />
  </mapping>
  <mapping>
    <identity value="hcim-basicelements-v1.0-2017EN" />
    <uri value="https://zibs.nl/wiki/BasicElements-v1.0(2017EN)" />
    <name value="HCIM BasicElements-v1.0(2017EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-familysituation-v1.0-2015EN" />
    <uri value="https://zibs.nl/wiki/FamilySituation-v1.0(2015EN)" />
    <name value="HCIM FamilySituation-v1.0(2015EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-familysituation-v3.0-2016EN" />
    <uri value="https://zibs.nl/wiki/FamilySituation-v3.0(2016EN)" />
    <name value="HCIM FamilySituation-v3.0(2016EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-familysituation-v3.0-2017EN" />
    <uri value="https://zibs.nl/wiki/FamilySituation-v3.0(2017EN)" />
    <name value="HCIM FamilySituation-v3.0(2017EN)" />
  </mapping>
  <mapping>
    <identity value="hcim-LifeStance-v3.1-2017EN" />
    <uri value="https://zibs.nl/wiki/LifeStance-v3.1(2017EN)" />
    <name value="HCIM LifeStance-v3.1(2017EN)" />
  </mapping>
  <kind value="resource" />
  <abstract value="false" />
  <type value="Patient" />
  <baseDefinition value="http://fhir.nl/fhir/StructureDefinition/nl-core-patient" />
  <derivation value="constraint" />
  <differential>
    <element id="Patient">
      <path value="Patient" />
      <constraint>
        <key value="upn-missing" />
        <severity value="error" />
        <human value="A single type=MR Identifier is required." />
        <expression value="identifier.where(system != 'http://fhir.nl/fhir/NamingSystem/bsn' and  type.coding.system = 'http://hl7.org/fhir/v2/0203' and type.coding.code = 'MR').exists()" />
      </constraint>
    </element>
    <element id="Patient.identifier">
      <path value="Patient.identifier" />
      <min value="1" />
    </element>
    <element id="Patient.identifier:BSN">
      <path value="Patient.identifier" />
      <sliceName value="BSN" />
      <alias value="idcode" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name">
      <path value="Patient.name" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Patient.name.family">
      <path value="Patient.name.family" />
      <min value="1" />
    </element>
    <element id="Patient.name.family.extension:humannameOwnPrefix">
      <path value="Patient.name.family.extension" />
      <sliceName value="humannameOwnPrefix" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name.family.extension:humannameOwnName">
      <path value="Patient.name.family.extension" />
      <sliceName value="humannameOwnName" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name.family.extension:humannamePartnerPrefix">
      <path value="Patient.name.family.extension" />
      <sliceName value="humannamePartnerPrefix" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name.family.extension:humannamePartnerName">
      <path value="Patient.name.family.extension" />
      <sliceName value="humannamePartnerName" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name.given">
      <path value="Patient.name.given" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Patient.gender">
      <path value="Patient.gender" />
      <min value="1" />
    </element>
    <element id="Patient.gender.extension">
      <path value="Patient.gender.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <max value="1" />
    </element>
    <element id="Patient.gender.extension:GeslachtCodelijst">
      <path value="Patient.gender.extension" />
      <sliceName value="MRDM GeslachtCodelijst" />
      <max value="1" />
    </element>
    <element id="Patient.gender.extension:GeslachtCodelijst.valueCodeableConcept:valueCodeableConcept">
      <path value="Patient.gender.extension.valueCodeableConcept" />
      <sliceName value="GeslachtCodelijst_waarde" />
      <binding>
        <strength value="required" />
        <valueSetReference>
          <reference value="http://mrdm.nl/fhir/ValueSet/administrative-gender" />
          <display value="MRDM GeslachtCodelijst" />
        </valueSetReference>
      </binding>
    </element>
    <element id="Patient.birthDate">
      <path value="Patient.birthDate" />
      <min value="1" />
    </element>
    <element id="Patient.deceased[x]">
      <path value="Patient.deceased" />
      <max value="1" />
    </element>
    <element id="Patient.deceased[x].extension">
      <path value="Patient.deceased.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <max value="1" />
    </element>
    <element id="Patient.deceased[x].extension:DeceasedStatusCodes">
      <path value="Patient.deceased.extension" />
      <sliceName value="DeceasedStatusCodes" />
      <max value="1" />
    </element>
    <element id="Patient.deceased[x].extension:DeceasedStatusCodes.valueCodeableConcept:valueCodeableConcept">
      <path value="Patient.deceased.extension.valueCodeableConcept" />
      <sliceName value="DeceasedStatusCodes_waarde" />
      <binding>
        <strength value="required" />
        <valueSetReference>
          <reference value="http://mrdm.nl/fhir/ValueSet/dhfa-deceased-status" />
          <display value="dhfa-deceased-status" />
        </valueSetReference>
      </binding>
    </element>
    <element id="Patient.deceased[x]:deceasedDateTime">
      <path value="Patient.deceasedDateTime" />
      <sliceName value="deceasedDateTime" />
      <definition value="Indicates if the individual is deceased or not, and when. MRDM will only use the date part of the dateTime." />
      <type>
        <code value="dateTime" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.managingOrganization">
      <path value="Patient.managingOrganization" />
      <min value="1" />
    </element>
    <element id="Patient.managingOrganization.identifier">
      <path value="Patient.managingOrganization.identifier" />
      <min value="1" />
    </element>
    <element id="Patient.managingOrganization.identifier.system">
      <path value="Patient.managingOrganization.identifier.system" />
      <min value="1" />
      <fixedUri value="http://mrdm.nl/fhir/CodeSystem/mrdm-HealthcareProvidersNL" />
    </element>
    <element id="Patient.managingOrganization.identifier.value">
      <path value="Patient.managingOrganization.identifier.value" />
      <min value="1" />
    </element>
  </differential>
</StructureDefinition>