<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="https://fohm.se/nvr/fhir/StructureDefinition/NVRPatient" />
  <name value="NVRPatient" />
  <status value="draft" />
  <description value="A patient that has been given a vaccination" />
  <fhirVersion value="5.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Patient" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Patient" />
  <derivation value="constraint" />
  <differential>
    <element id="Patient.identifier">
      <path value="Patient.identifier" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Patient.identifier:personalNumber">
      <path value="Patient.identifier" />
      <sliceName value="personalNumber" />
      <definition value="All identifiers that identifies as personalNumber SHALL comply with the specified regex: ^(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{4}$&#xD;&#xA;Example General: 191212121212" />
      <max value="1" />
    </element>
    <element id="Patient.identifier:personalNumber.use">
      <path value="Patient.identifier.use" />
      <max value="0" />
    </element>
    <element id="Patient.identifier:personalNumber.type">
      <path value="Patient.identifier.type" />
      <max value="0" />
    </element>
    <element id="Patient.identifier:personalNumber.system">
      <path value="Patient.identifier.system" />
      <min value="1" />
      <fixedUri value="http://electronichealth.se/identifier/personnummer" />
    </element>
    <element id="Patient.identifier:personalNumber.value">
      <path value="Patient.identifier.value" />
      <min value="1" />
    </element>
    <element id="Patient.identifier:personalNumber.period">
      <path value="Patient.identifier.period" />
      <max value="0" />
    </element>
    <element id="Patient.identifier:personalNumber.assigner">
      <path value="Patient.identifier.assigner" />
      <max value="0" />
    </element>
    <element id="Patient.identifier:coordinationNumber">
      <path value="Patient.identifier" />
      <sliceName value="coordinationNumber" />
      <definition value="All identifiers that identifies as samordningsnummer SHALL comply with the specified regex: ^(18|19|20)\d{2}(0[1-9]|1[0-2])(6[1-9]|[78]\d|9[0-1])\d{4}$&#xD;&#xA;Example General: 197010632391" />
      <max value="1" />
    </element>
    <element id="Patient.identifier:coordinationNumber.use">
      <path value="Patient.identifier.use" />
      <max value="0" />
    </element>
    <element id="Patient.identifier:coordinationNumber.type">
      <path value="Patient.identifier.type" />
      <max value="0" />
    </element>
    <element id="Patient.identifier:coordinationNumber.system">
      <path value="Patient.identifier.system" />
      <min value="1" />
      <fixedUri value="http://electronichealth.se/identifier/samordningsnummer" />
    </element>
    <element id="Patient.identifier:coordinationNumber.value">
      <path value="Patient.identifier.value" />
      <min value="1" />
    </element>
    <element id="Patient.identifier:coordinationNumber.period">
      <path value="Patient.identifier.period" />
      <max value="0" />
    </element>
    <element id="Patient.identifier:coordinationNumber.assigner">
      <path value="Patient.identifier.assigner" />
      <max value="0" />
    </element>
    <element id="Patient.identifier:otherNumber">
      <path value="Patient.identifier" />
      <sliceName value="otherNumber" />
      <max value="1" />
    </element>
    <element id="Patient.identifier:otherNumber.use">
      <path value="Patient.identifier.use" />
      <max value="0" />
    </element>
    <element id="Patient.identifier:otherNumber.type">
      <path value="Patient.identifier.type" />
      <max value="0" />
    </element>
    <element id="Patient.identifier:otherNumber.system">
      <path value="Patient.identifier.system" />
      <fixedUri value="http://fohm.se/fhir/identifier/otherNumber" />
    </element>
    <element id="Patient.identifier:otherNumber.period">
      <path value="Patient.identifier.period" />
      <max value="0" />
    </element>
    <element id="Patient.identifier:otherNumber.assigner">
      <path value="Patient.identifier.assigner" />
      <max value="0" />
    </element>
    <element id="Patient.active">
      <path value="Patient.active" />
      <max value="0" />
    </element>
    <element id="Patient.name">
      <path value="Patient.name" />
      <max value="0" />
    </element>
    <element id="Patient.telecom">
      <path value="Patient.telecom" />
      <max value="0" />
    </element>
    <element id="Patient.gender">
      <path value="Patient.gender" />
      <max value="0" />
    </element>
    <element id="Patient.birthDate">
      <path value="Patient.birthDate" />
      <max value="0" />
    </element>
    <element id="Patient.deceased[x]">
      <path value="Patient.deceased[x]" />
      <max value="0" />
    </element>
    <element id="Patient.address">
      <path value="Patient.address" />
      <max value="0" />
    </element>
    <element id="Patient.maritalStatus">
      <path value="Patient.maritalStatus" />
      <max value="0" />
    </element>
    <element id="Patient.multipleBirth[x]">
      <path value="Patient.multipleBirth[x]" />
      <max value="0" />
    </element>
    <element id="Patient.photo">
      <path value="Patient.photo" />
      <max value="0" />
    </element>
    <element id="Patient.contact">
      <path value="Patient.contact" />
      <max value="0" />
    </element>
    <element id="Patient.communication">
      <path value="Patient.communication" />
      <max value="0" />
    </element>
    <element id="Patient.generalPractitioner">
      <path value="Patient.generalPractitioner" />
      <max value="0" />
    </element>
    <element id="Patient.managingOrganization">
      <path value="Patient.managingOrganization" />
      <max value="0" />
    </element>
    <element id="Patient.link">
      <path value="Patient.link" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>