<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="3d60daa6-9799-441e-8d52-2ada04360be2" />
  <meta>
    <lastUpdated value="2022-07-06T19:25:37.6493406+00:00" />
  </meta>
  <url value="http://telus.com/fhir/patientChart/StructureDefinition/profile-observation-social-history" />
  <name value="ObservationSocialHistory" />
  <status value="draft" />
  <date value="2022-05-31T20:00:20.7714514+00:00" />
  <fhirVersion value="4.0.1" />
  <mapping>
    <identity value="workflow" />
    <uri value="http://hl7.org/fhir/workflow" />
    <name value="Workflow Pattern" />
  </mapping>
  <mapping>
    <identity value="sct-concept" />
    <uri value="http://snomed.info/conceptdomain" />
    <name value="SNOMED CT Concept Domain Binding" />
  </mapping>
  <mapping>
    <identity value="v2" />
    <uri value="http://hl7.org/v2" />
    <name value="HL7 v2 Mapping" />
  </mapping>
  <mapping>
    <identity value="rim" />
    <uri value="http://hl7.org/v3" />
    <name value="RIM Mapping" />
  </mapping>
  <mapping>
    <identity value="w5" />
    <uri value="http://hl7.org/fhir/fivews" />
    <name value="FiveWs Pattern Mapping" />
  </mapping>
  <mapping>
    <identity value="sct-attr" />
    <uri value="http://snomed.org/attributebinding" />
    <name value="SNOMED CT Attribute Binding" />
  </mapping>
  <kind value="resource" />
  <abstract value="false" />
  <type value="Observation" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Observation" />
  <derivation value="constraint" />
  <differential>
    <element id="Observation">
      <path value="Observation" />
      <comment value="Usage Notes:   .   This profile may be used for other observations pertaining to social history excluding tobacco, alcohol and drug abuse.   This will be used to record diet, exercise, personal history such as occupation, education, etc.&#xD;&#xA;&#xD;&#xA;Note: There are profiles defined specifically for vital signs (height, weight, bp, etc)  tobacco use, alcohol use and drug use which should be used.&#xD;&#xA;&#xD;&#xA;Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc.  Other resources are used to provide context for observations such as laboratory reports, etc." />
    </element>
    <element id="Observation.id">
      <path value="Observation.id" />
      <comment value="Usage Note:   This will usually be a GUID that is assigned by the sending application.&#xD;&#xA;&#xD;&#xA;The only time that a resource does not have an id is when it is being submitted to the server using a create operation." />
      <mustSupport value="true" />
    </element>
    <element id="Observation.meta">
      <path value="Observation.meta" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.meta.id">
      <path value="Observation.meta.id" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.meta.lastUpdated">
      <path value="Observation.meta.lastUpdated" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.meta.source">
      <path value="Observation.meta.source" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.text">
      <path value="Observation.text" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.status">
      <path value="Observation.status" />
      <comment value="Usage Note - Historical load do not send the deleted entries. For delta send all updated resource including deleted&#xD;&#xA;PSS --&gt;FHIR&#xD;&#xA;Needs Review, unfinished --&gt; Final&#xD;&#xA;Updated --&gt; amended - only if delta is being send&#xD;&#xA;deleted --&gt; entered-in-error - only if delta is being send TBD question for Lloyd&#xD;&#xA;&#xD;&#xA;MA --&gt; FHIR&#xD;&#xA;Active --&gt; Final&#xD;&#xA;deleted --&gt; entered-in-error - only if delta is being send&#xD;&#xA;&#xD;&#xA;This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid." />
      <mustSupport value="true" />
    </element>
    <element id="Observation.category">
      <path value="Observation.category" />
      <comment value="Usage note : Lifestyle, social history and personal traits category in EMRs will map to social-history category in FHIR&#xD;&#xA;&#xD;&#xA;In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once.  The level of granularity is defined by the category concepts in the value set." />
      <mustSupport value="true" />
    </element>
    <element id="Observation.category.coding">
      <path value="Observation.category.coding" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.category.coding.system">
      <path value="Observation.category.coding.system" />
      <min value="1" />
      <fixedUri value="http://terminology.hl7.org/CodeSystem/observation-category" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.category.coding.code">
      <path value="Observation.category.coding.code" />
      <min value="1" />
      <fixedCode value="social-history" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.category.coding.display">
      <path value="Observation.category.coding.display" />
      <comment value="Usage:   Social History Narrartive&#xD;&#xA;Note that FHIR strings SHALL NOT exceed 1MB in size" />
    </element>
    <element id="Observation.code">
      <path value="Observation.code" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.code.text">
      <path value="Observation.code.text" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.encounter">
      <path value="Observation.encounter" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.effective[x]">
      <path value="Observation.effective[x]" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]">
      <path value="Observation.value[x]" />
      <comment value="Useage note: MA - TBD&#xD;&#xA;PSS - description (to fit in profile) text field &#xD;&#xA;&#xD;&#xA;An observation may have; 1)  a single value here, 2)  both a value and a set of related or component values,  or 3)  only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code.  A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value.  For additional guidance, see the [Notes section](observation.html#notes) below." />
      <mustSupport value="true" />
    </element>
    <element id="Observation.note">
      <path value="Observation.note" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.bodySite">
      <path value="Observation.bodySite" />
      <max value="0" />
    </element>
    <element id="Observation.specimen">
      <path value="Observation.specimen" />
      <max value="0" />
    </element>
    <element id="Observation.device">
      <path value="Observation.device" />
      <max value="0" />
    </element>
    <element id="Observation.referenceRange">
      <path value="Observation.referenceRange" />
      <max value="0" />
    </element>
    <element id="Observation.hasMember">
      <path value="Observation.hasMember" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.hasMember.reference">
      <path value="Observation.hasMember.reference" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.hasMember.display">
      <path value="Observation.hasMember.display" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.derivedFrom">
      <path value="Observation.derivedFrom" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>