<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="http://nictiz.nl/fhir/StructureDefinition/Test/medmij-bgz-patient-ts-01" />
  <name value="Mynl-core-patient" />
  <status value="draft" />
  <fhirVersion value="3.0.2" />
  <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.identifier">
      <path value="Patient.identifier" />
      <min value="1" />
    </element>
    <element id="Patient.identifier:requiredIdentifier">
      <path value="Patient.identifier" />
      <sliceName value="requiredIdentifier" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Patient.active">
      <path value="Patient.active" />
      <min value="1" />
      <fixedBoolean value="true" />
    </element>
    <element id="Patient.name">
      <path value="Patient.name" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="text" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Patient.name:requiredName">
      <path value="Patient.name" />
      <sliceName value="requiredName" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Patient.name:requiredName.extension">
      <path value="Patient.name.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Patient.name:requiredName.extension:humannameAssemblyOrder">
      <path value="Patient.name.extension" />
      <sliceName value="humannameAssemblyOrder" />
      <min value="1" />
    </element>
    <element id="Patient.name:requiredName.extension:humannameAssemblyOrder.valueCode:valueCode">
      <path value="Patient.name.extension.valueCode" />
      <sliceName value="valueCode" />
      <min value="1" />
      <fixedCode value="NL1" />
    </element>
    <element id="Patient.name:requiredName.text">
      <path value="Patient.name.text" />
      <min value="1" />
      <fixedString value="Johan XXX_Helleman" />
    </element>
    <element id="Patient.name:requiredName.family">
      <path value="Patient.name.family" />
      <min value="1" />
      <constraint>
        <key value="gen-2" />
        <severity value="warning" />
        <human value="Test123" />
        <expression value="$this ~ 'XXX_Helleman'" />
      </constraint>
    </element>
    <element id="Patient.name:requiredName.family.extension">
      <path value="Patient.name.family.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Patient.name:requiredName.family.extension:humannameOwnName">
      <path value="Patient.name.family.extension" />
      <sliceName value="humannameOwnName" />
      <min value="1" />
    </element>
    <element id="Patient.name:requiredName.family.extension:humannameOwnName.valueString:valueString">
      <path value="Patient.name.family.extension.valueString" />
      <sliceName value="valueString" />
      <min value="1" />
      <constraint>
        <key value="gen-3" />
        <severity value="warning" />
        <human value="Test456" />
        <expression value="$this ~ 'XXX_Helleman'" />
      </constraint>
    </element>
    <element id="Patient.name:requiredName.given">
      <path value="Patient.name.given" />
      <constraint>
        <key value="gen-x" />
        <severity value="warning" />
        <human value="This one should fail!" />
        <expression value="$this ~ 'Test123'" />
      </constraint>
    </element>
    <element id="Patient.telecom">
      <path value="Patient.telecom" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <discriminator>
          <type value="value" />
          <path value="use" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="2" />
    </element>
    <element id="Patient.telecom:requiredTelecom1">
      <path value="Patient.telecom" />
      <sliceName value="requiredTelecom1" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Patient.telecom:requiredTelecom1.extension">
      <path value="Patient.telecom.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Patient.telecom:requiredTelecom1.extension:TelecomType">
      <path value="Patient.telecom.extension" />
      <sliceName value="TelecomType" />
      <min value="1" />
    </element>
    <element id="Patient.telecom:requiredTelecom1.system">
      <path value="Patient.telecom.system" />
      <fixedCode value="phone" />
    </element>
    <element id="Patient.telecom:requiredTelecom1.value">
      <path value="Patient.telecom.value" />
      <min value="1" />
    </element>
    <element id="Patient.telecom:requiredTelecom1.use">
      <path value="Patient.telecom.use" />
      <min value="1" />
      <fixedCode value="mobile" />
    </element>
    <element id="Patient.telecom:requiredTelecom2">
      <path value="Patient.telecom" />
      <sliceName value="requiredTelecom2" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Patient.telecom:requiredTelecom2.system">
      <path value="Patient.telecom.system" />
      <fixedCode value="email" />
    </element>
    <element id="Patient.telecom:requiredTelecom2.value">
      <path value="Patient.telecom.value" />
      <min value="1" />
    </element>
    <element id="Patient.telecom:requiredTelecom2.use">
      <path value="Patient.telecom.use" />
      <min value="1" />
      <fixedCode value="home" />
    </element>
  </differential>
</StructureDefinition>