<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="profile-DwPatient" />
  <meta>
    <lastUpdated value="2024-05-03T21:24:24.5432219+00:00" />
  </meta>
  <url value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/DwPatient" />
  <version value="2.0.0" />
  <name value="DwPatient" />
  <status value="active" />
  <date value="2026-05-29" />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Patient" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Patient" />
  <derivation value="constraint" />
  <differential>
    <element id="Patient.id">
      <path value="Patient.id" />
      <min value="1" />
    </element>
    <element id="Patient.meta.lastUpdated">
      <path value="Patient.meta.lastUpdated" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.meta.source">
      <path value="Patient.meta.source" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.meta.security">
      <path value="Patient.meta.security" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.text">
      <path value="Patient.text" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension">
      <path value="Patient.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
    </element>
    <element id="Patient.extension:genderIdentity">
      <path value="Patient.extension" />
      <sliceName value="genderIdentity" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="http://hl7.org/fhir/StructureDefinition/patient-genderIdentity" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:genderIdentity.value[x].coding">
      <path value="Patient.extension.value[x].coding" />
      <binding>
        <strength value="preferred" />
        <valueSet value="http://hl7.org/fhir/ValueSet/gender-identity" />
      </binding>
    </element>
    <element id="Patient.extension:individualPronouns">
      <path value="Patient.extension" />
      <sliceName value="individualPronouns" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="http://hl7.org/fhir/StructureDefinition/individual-pronouns" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:individualPronouns.extension:value">
      <path value="Patient.extension.extension" />
      <sliceName value="value" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:individualPronouns.extension:value.value[x].text">
      <path value="Patient.extension.extension.value[x].text" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:patientReligion">
      <path value="Patient.extension" />
      <sliceName value="patientReligion" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="http://hl7.org/fhir/StructureDefinition/patient-religion" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:patientReligion.value[x].coding">
      <path value="Patient.extension.value[x].coding" />
      <binding>
        <strength value="preferred" />
        <valueSet value="http://terminology.hl7.org/ValueSet/v3-ReligiousAffiliation" />
      </binding>
    </element>
    <element id="Patient.extension:patientReligion.value[x].coding.system">
      <path value="Patient.extension.value[x].coding.system" />
      <min value="1" />
      <mustSupport value="true" />
      <binding>
        <strength value="preferred" />
        <valueSet value="http://terminology.hl7.org/ValueSet/v3-ReligiousAffiliation" />
      </binding>
    </element>
    <element id="Patient.extension:patientReligion.value[x].coding.code">
      <path value="Patient.extension.value[x].coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:patientReligion.value[x].coding.display">
      <path value="Patient.extension.value[x].coding.display" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:patientReligion.value[x].coding.userSelected">
      <path value="Patient.extension.value[x].coding.userSelected" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:patientReligion.value[x].text">
      <path value="Patient.extension.value[x].text" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:ethnicity">
      <path value="Patient.extension" />
      <sliceName value="ethnicity" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/ext-Ethnicity" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:ethnicity.value[x].text">
      <path value="Patient.extension.value[x].text" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:rosterStatus">
      <path value="Patient.extension" />
      <sliceName value="rosterStatus" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/ext-RosterStatus" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:rosterPeriod">
      <path value="Patient.extension" />
      <sliceName value="rosterPeriod" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/ext-RosterPeriod" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:rosterTerminationReason">
      <path value="Patient.extension" />
      <sliceName value="rosterTerminationReason" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/ext-RosterTerminationReason" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:patientStatus">
      <path value="Patient.extension" />
      <sliceName value="patientStatus" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/ext-PatientStatus" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.extension:patientStatusDate">
      <path value="Patient.extension" />
      <sliceName value="patientStatusDate" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/ext-PatientStatusDate" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier">
      <path value="Patient.identifier" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="type.coding" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <definition value="A patient resource may have multiple identifier namely Patient number assigned by the EMR and Health Card number  &#xD;&#xA;Use slicing here" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier:MRN">
      <path value="Patient.identifier" />
      <sliceName value="MRN" />
      <short value="Medical record number in sender system" />
      <comment value="Patient id in the EMR" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier:MRN.type">
      <path value="Patient.identifier.type" />
      <min value="1" />
    </element>
    <element id="Patient.identifier:MRN.type.coding">
      <path value="Patient.identifier.type.coding" />
      <min value="1" />
      <patternCoding>
        <system value="http://terminology.hl7.org/CodeSystem/v2-0203" />
        <code value="MR" />
        <display value="Medical Record Number" />
      </patternCoding>
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier:MRN.type.text">
      <path value="Patient.identifier.type.text" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier:MRN.system">
      <path value="Patient.identifier.system" />
      <comment value="urn:telus:emr:pss:9988:patientId&#xD;&#xA;Identifier.system is always case sensitive.&#xA;&#xA;Follow the pattern urn:telus:emr:{emrType}:{emrInstanceId}:patientid or urn:telus:emr:{emrType}:{region}:{emrInstanceId}:patientid" />
      <min value="1" />
    </element>
    <element id="Patient.identifier:MRN.value">
      <path value="Patient.identifier.value" />
      <min value="1" />
      <mustSupport value="false" />
    </element>
    <element id="Patient.identifier:JHN">
      <path value="Patient.identifier" />
      <sliceName value="JHN" />
      <short value="Jursidictional Health Number" />
      <comment value="Federal or provincial Health number" />
      <min value="0" />
      <max value="*" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier:JHN.extension:versionCode">
      <path value="Patient.identifier.extension" />
      <sliceName value="versionCode" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://hl7.org/fhir/ca/baseline/StructureDefinition/ext-identifierversion" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier:JHN.type">
      <path value="Patient.identifier.type" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier:JHN.type.coding">
      <path value="Patient.identifier.type.coding" />
      <min value="1" />
      <patternCoding>
        <system value="http://terminology.hl7.org/CodeSystem/v2-0203" />
        <code value="JHN" />
        <display value="Jurisdictional health number" />
      </patternCoding>
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier:JHN.type.text">
      <path value="Patient.identifier.type.text" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier:JHN.system">
      <path value="Patient.identifier.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.identifier:JHN.value">
      <path value="Patient.identifier.value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.active">
      <path value="Patient.active" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name">
      <path value="Patient.name" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name.use">
      <path value="Patient.name.use" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name.text">
      <path value="Patient.name.text" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name.family">
      <path value="Patient.name.family" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name.given">
      <path value="Patient.name.given" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name.prefix">
      <path value="Patient.name.prefix" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.name.suffix">
      <path value="Patient.name.suffix" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.telecom">
      <path value="Patient.telecom" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.gender">
      <path value="Patient.gender" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.birthDate">
      <path value="Patient.birthDate" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.deceased[x]">
      <path value="Patient.deceased[x]" />
      <comment value="Deceased date will be provided where it approrpiately documented in the EMR. &#xD;&#xA;PSS - Only deceased status will be provided as PSS does not capture deceased date discreetly, it is documented in the status date field which is not always reliable. &#xD;&#xA;MA - Deceased status and date can be provided. Date will only be included for the patient whose status is deceased." />
      <mustSupport value="true" />
    </element>
    <element id="Patient.address">
      <path value="Patient.address" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.maritalStatus">
      <path value="Patient.maritalStatus" />
      <comment value="Provide as text if available&#xA;&#xA;CHR - Marital status can be entered from Social History by selecting Living Environment and choosing the Marital Status." />
      <mustSupport value="true" />
    </element>
    <element id="Patient.contact">
      <path value="Patient.contact" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.contact.relationship">
      <path value="Patient.contact.relationship" />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <valueSet value="https://www.telus.com/health/fhir/dwemrextract/ValueSet/combined-relationship-codes" />
      </binding>
    </element>
    <element id="Patient.contact.relationship.coding">
      <path value="Patient.contact.relationship.coding" />
      <code>
        <system value="http://terminology.hl7.org/CodeSystem/v3-RoleCode" />
      </code>
      <code>
        <system value="http://terminology.hl7.org/CodeSystem/v2-0131" />
      </code>
    </element>
    <element id="Patient.contact.relationship.text">
      <path value="Patient.contact.relationship.text" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.contact.name">
      <path value="Patient.contact.name" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.contact.name.use">
      <path value="Patient.contact.name.use" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.contact.name.text">
      <path value="Patient.contact.name.text" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.contact.name.family">
      <path value="Patient.contact.name.family" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.contact.name.given">
      <path value="Patient.contact.name.given" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.contact.telecom">
      <path value="Patient.contact.telecom" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.contact.period">
      <path value="Patient.contact.period" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.communication">
      <path value="Patient.communication" />
      <comment value="Language(s) which may be used to communicate with the patient about their health. Use the 'preferred' flag to indicate the patient's preferred language." />
      <mustSupport value="true" />
    </element>
    <element id="Patient.communication.language">
      <path value="Patient.communication.language" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.communication.language.text">
      <path value="Patient.communication.language.text" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.communication.preferred">
      <path value="Patient.communication.preferred" />
      <comment value="Set to true for the patient's preferred language for communication" />
      <mustSupport value="true" />
    </element>
    <element id="Patient.generalPractitioner">
      <path value="Patient.generalPractitioner" />
      <comment value="Usage note - Provider reference to the organization and the practitioner resource &#xD;&#xA;If a patient has not been assigned a doctor at the clinic only provide reference to the organization resources (parent organization if there are more than 1)&#xD;&#xA;When a Primary MD/NP for that provider at that clinic is assigned provide reference to the sub-organization and the practitioner &#xD;&#xA;&#xD;&#xA;Discuss further how/where to provide the referring and family providers outside of the clinic." />
      <type>
        <code value="Reference" />
        <targetProfile value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/DwOrganization" />
        <targetProfile value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/DwPractitioner" />
        <targetProfile value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/DwPractitionerRole" />
        <aggregation value="referenced" />
        <versioning value="independent" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.managingOrganization">
      <path value="Patient.managingOrganization" />
      <comment value="CHR - RBAC must be enabled" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/DwOrganization" />
      </type>
    </element>
    <element id="Patient.link">
      <path value="Patient.link" />
      <comment value="Used to represent patient merge relationships. CHR sets link.type to 'replaced-by' on the source (archived/merged-away) patient to point to the surviving target patient." />
      <mustSupport value="true" />
    </element>
    <element id="Patient.link.other">
      <path value="Patient.link.other" />
      <comment value="Reference to the surviving Patient resource." />
      <type>
        <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-hierarchy">
          <valueBoolean value="false" />
        </extension>
        <code value="Reference" />
        <targetProfile value="https://www.telus.com/health/fhir/dwemrextract/StructureDefinition/DwPatient" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Patient.link.type">
      <path value="Patient.link.type" />
      <comment value="Uses `replaced-by` on the source (merged-away) patient." />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>