<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="Patient-PS-ABuli2" />
  <url value="http://fhir.alberta.ca/fhir/psab/StructureDefinition/Patient-PS-ABuli2" />
  <version value="0.1.4" />
  <name value="PatientPSABuli2" />
  <title value="Patient (PS-AB)uli2" />
  <status value="draft" />
  <date value="2023-01-27T16:05:07-07:00" />
  <publisher value="Alberta Health" />
  <contact>
    <name value="Alberta Health" />
    <telecom>
      <system value="url" />
      <value value="http://alberta.ca/hisca" />
    </telecom>
  </contact>
  <description value="A Patient profile derived from the PS-CA Patient Profile" />
  <jurisdiction>
    <coding>
      <system value="urn:iso:std:iso:3166" />
      <code value="CA" />
      <display value="Canada" />
    </coding>
  </jurisdiction>
  <fhirVersion value="4.0.1" />
  <mapping>
    <identity value="rim" />
    <uri value="http://hl7.org/v3" />
    <name value="RIM Mapping" />
  </mapping>
  <mapping>
    <identity value="cda" />
    <uri value="http://hl7.org/v3/cda" />
    <name value="CDA (R2)" />
  </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>
  <mapping>
    <identity value="loinc" />
    <uri value="http://loinc.org" />
    <name value="LOINC code for the element" />
  </mapping>
  <kind value="resource" />
  <abstract value="false" />
  <type value="Patient" />
  <baseDefinition value="http://fhir.infoway-inforoute.ca/io/psca/StructureDefinition/patient-ca-ps" />
  <derivation value="constraint" />
  <differential>
    <element id="Patient.identifier">
      <path value="Patient.identifier" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="type" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier.type">
      <path value="Patient.identifier.type" />
      <comment value="The slices provided below are examples of identifier types used by jurisdictions for patient summary. These are not required, and the slicing is open meaning that other types can be provided and used in an implementation." />
    </element>
    <element id="Patient.identifier.system">
      <path value="Patient.identifier.system" />
      <min value="1" />
    </element>
    <element id="Patient.identifier.value">
      <path value="Patient.identifier.value" />
      <short value="The value that is unique within the system." />
      <min value="1" />
    </element>
    <element id="Patient.identifier:JHN">
      <path value="Patient.identifier" />
      <sliceName value="JHN" />
      <sliceIsConstraining value="true" />
      <short value="Jurisdictional Health Number" />
      <definition value="Federal patient and person health numbers used by all jurisdictions across Canada" />
    </element>
    <element id="Patient.identifier:JHN.type.coding.code">
      <path value="Patient.identifier.type" />
      <min value="1" />
      <fixedCode value="JHN" />
    </element>
    <element id="Patient.identifier:JHN.system">
      <path value="Patient.identifier.system" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier:JHN.system:ULI">
      <path value="Patient.identifier.system" />
      <sliceName value="ULI" />
      <min value="1" />
      <fixedUri value="urn:oid:2.16.840.1.113883.4.20" />
    </element>
    <element id="Patient.name.text">
      <path value="Patient.name.text" />
      <min value="1" />
    </element>
    <element id="Patient.name.family">
      <path value="Patient.name.family" />
      <min value="1" />
    </element>
    <element id="Patient.name.given">
      <path value="Patient.name.given" />
      <comment value="the receiver should record the value when it is available" />
    </element>
  </differential>
</StructureDefinition>