<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="http://ehealth.bc.ca/fhir/StructureDefinition/bc-bcyimmunizationdistribution/RelatedPerson" />
  <name value="RelatedPerson" />
  <status value="draft" />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="RelatedPerson" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/RelatedPerson" />
  <derivation value="constraint" />
  <differential>
    <element id="RelatedPerson.id">
      <path value="RelatedPerson.id" />
      <comment value="See Mappings" />
      <min value="1" />
      <mapping>
        <identity value="source-PIR" />
        <map value="CONSENT.CONSENT_DIRECTIVE_ID" />
      </mapping>
    </element>
    <element id="RelatedPerson.meta">
      <path value="RelatedPerson.meta" />
    </element>
    <element id="RelatedPerson.meta.versionId">
      <path value="RelatedPerson.meta.versionId" />
      <comment value="Apply &quot;2025.01.1&quot;.  This indicates the FHIR specs as of year Jan 2025." />
    </element>
    <element id="RelatedPerson.meta.lastUpdated">
      <path value="RelatedPerson.meta.lastUpdated" />
      <comment value="Updated: Relax the previously crossed-out elements." />
    </element>
    <element id="RelatedPerson.meta.profile">
      <path value="RelatedPerson.meta.profile" />
      <comment value="Apply &quot;http://ehealth.bc.ca/fhir/StructureDefinition/bc-bcyimmunizationdistribution/RelatedPerson&quot;" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="RelatedPerson.meta.security">
      <path value="RelatedPerson.meta.security" />
      <max value="1" />
    </element>
    <element id="RelatedPerson.meta.tag">
      <path value="RelatedPerson.meta.tag" />
      <max value="1" />
    </element>
    <element id="RelatedPerson.identifier">
      <path value="RelatedPerson.identifier" />
      <max value="1" />
    </element>
    <element id="RelatedPerson.identifier.id">
      <path value="RelatedPerson.identifier.id" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.identifier.use">
      <path value="RelatedPerson.identifier.use" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.patient.reference">
      <path value="RelatedPerson.patient.reference" />
      <comment value="See Mappings" />
      <min value="1" />
      <mapping>
        <identity value="source-PIR" />
        <map value="fullURL + &quot;Patient/&quot; + (Patient ID)" />
        <comment value="e.g. http://ehealth.bc.ca/panorama/fhir/Patient/59900999&quot;" />
      </mapping>
    </element>
    <element id="RelatedPerson.relationship">
      <path value="RelatedPerson.relationship" />
      <max value="1" />
    </element>
    <element id="RelatedPerson.relationship.id">
      <path value="RelatedPerson.relationship.id" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.relationship.coding">
      <path value="RelatedPerson.relationship.coding" />
      <comment value="See Mappings" />
      <max value="1" />
      <mapping>
        <identity value="source-PIR-Other" />
        <map value="Code: CONSENT.CONSENT_DIRECTIVE.WHO_GAVE_RLTNSHP_CODE_CNCPT_ID" />
      </mapping>
      <mapping>
        <identity value="source-PIR-RelatedClient" />
        <map value="Text: CONSENT.CONSENT_DIRECTIVE.WHO_GAVE_RELATIONSHIP_ID" />
      </mapping>
    </element>
    <element id="RelatedPerson.relationship.coding.id">
      <path value="RelatedPerson.relationship.coding.id" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.relationship.coding.system">
      <path value="RelatedPerson.relationship.coding.system" />
      <code>
        <system value="https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-panorama-code" />
      </code>
      <min value="1" />
    </element>
    <element id="RelatedPerson.relationship.coding.version">
      <path value="RelatedPerson.relationship.coding.version" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.relationship.coding.code">
      <path value="RelatedPerson.relationship.coding.code" />
      <comment value="Refer to IMMS Codeset spreadsheet: Consent - ConsentGivenByRelationship.  See Mappings." />
      <min value="1" />
      <mapping>
        <identity value="source-PIR" />
        <map value="CONSENT.CONSENT_DIRECTIVE.WHO_GAVE_RLTNSHP_CODE_CNCPT_ID" />
      </mapping>
    </element>
    <element id="RelatedPerson.relationship.coding.display">
      <path value="RelatedPerson.relationship.coding.display" />
      <comment value="Refer to IMMS Codeset spreadsheet: Consent - ConsentGivenByRelationship" />
      <min value="1" />
    </element>
    <element id="RelatedPerson.relationship.coding.userSelected">
      <path value="RelatedPerson.relationship.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="RelatedPerson.relationship.text">
      <path value="RelatedPerson.relationship.text" />
      <comment value="See Mappings:  To be applied if PIR Consent Given By = Related Client. WHO_GAVE_RLTNSHP_CODE_CNCPT_ID = null and WHO_GAVE_RELATIONSHIP_ID has a value." />
      <mapping>
        <identity value="source-PIR-RelatedClient" />
        <map value="CONSENT.CONSENT_DIRECTIVE.WHO_GAVE_RELATIONSHIP_ID" />
      </mapping>
    </element>
    <element id="RelatedPerson.name">
      <path value="RelatedPerson.name" />
      <comment value="See Mappings. NOT SPECIFIED is applied when both WHO_GAVE_RLTNSHP_CODE_CNCPT_ID = null and WHO_GAVE_RELATIONSHIP_ID = null." />
      <min value="1" />
      <max value="1" />
      <mapping>
        <identity value="source-PIR-Other" />
        <map value="CONSENT.CONSENT_DIRECTIVE.WHO_GAVE_CONSENT" />
      </mapping>
      <mapping>
        <identity value="source-PIR-NotSpecified" />
        <map value="Not Specified" />
      </mapping>
      <mapping>
        <identity value="source-PIR-relatedClient" />
        <map value="CLIENT.SUBJECT_RELATIONSHIP.LEFT_SUBJECT_ID" />
      </mapping>
    </element>
    <element id="RelatedPerson.name.text">
      <path value="RelatedPerson.name.text" />
      <mapping>
        <identity value="source-PIR-name" />
        <map value="CONSENT.CONSENT_DIRECTIVE.WHO_GAVE_CONSENT" />
      </mapping>
    </element>
    <element id="RelatedPerson.name.family">
      <path value="RelatedPerson.name.family" />
      <mapping>
        <identity value="source-PIR-NotSpecified" />
        <map value="Not Specified" />
      </mapping>
    </element>
    <element id="RelatedPerson.name.given">
      <path value="RelatedPerson.name.given" />
      <comment value="FIRST Name sends in first place of Given Name, MIDDLE Name sneds in second place of Given Name" />
      <max value="1" />
      <mapping>
        <identity value="source-PIR-NotSpecified" />
        <map value="Not Specified" />
      </mapping>
    </element>
    <element id="RelatedPerson.name.prefix">
      <path value="RelatedPerson.name.prefix" />
      <max value="1" />
    </element>
    <element id="RelatedPerson.name.suffix">
      <path value="RelatedPerson.name.suffix" />
      <max value="1" />
    </element>
    <element id="RelatedPerson.telecom">
      <path value="RelatedPerson.telecom" />
      <max value="1" />
    </element>
    <element id="RelatedPerson.address">
      <path value="RelatedPerson.address" />
      <max value="1" />
    </element>
    <element id="RelatedPerson.photo">
      <path value="RelatedPerson.photo" />
      <max value="1" />
    </element>
    <element id="RelatedPerson.communication">
      <path value="RelatedPerson.communication" />
      <max value="1" />
    </element>
  </differential>
</StructureDefinition>