Social Care Interoperability Platform FHIR Implementation Guide
Version: 0.1.0, Status: draft

Social Care Interoperability Platform FHIR Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

: OccupationalHistoryToObservationOccupationalHistory - XML Representation

Draft as of 2026-06-10

Raw xml | Download


<StructureMap xmlns="http://hl7.org/fhir">
  <id value="OccupationalHistory-Observation-OccupationalHistory"/>
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureMap OccupationalHistory-Observation-OccupationalHistory</b></p><a name="OccupationalHistory-Observation-OccupationalHistory"> </a><a name="hcOccupationalHistory-Observation-OccupationalHistory"> </a><pre class="fml">
<b>map</b><span style="color: navy"> &quot;</span>https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureMap/OccupationalHistory-Observation-OccupationalHistory<span style="color: navy">&quot; = &quot;</span>OccupationalHistoryToObservationOccupationalHistory<span style="color: navy">&quot;

</span><b>uses</b><span style="color: navy"> &quot;</span><a href="StructureDefinition-MODS-OccupationalHistory.html" title="MODS Occupational History">https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-OccupationalHistory</a><span style="color: navy">&quot; </span><b>alias </b>OccupationalHistory <b>as </b><b>source</b>
<b>uses</b><span style="color: navy"> &quot;</span><a href="StructureDefinition-MODS-OccupationalHistoryObservation.html" title="MODS Occupational History Observation">https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-OccupationalHistoryObservation</a><span style="color: navy">&quot; </span><b>alias </b>OccupationalHistoryObservation <b>as </b><b>target</b>

<b>group </b>OccupationalHistoryObservation<span style="color: navy">(</span><b>source</b> <span style="color: maroon">src</span><span style="color: navy"> : </span>OccupationalHistory, <b>target</b> <span style="color: maroon">tgt</span><span style="color: navy"> : </span>OccupationalHistoryObservation<span style="color: navy">)</span><span style="color: navy"> {
</span>  src<span style="color: navy"><b> -&gt; </b></span>tgt.id = evaluate<span style="color: navy">(</span>src<span style="color: navy">, </span>id<span style="color: navy">)</span> <i>&quot;64705ee4-3423-43f2-aa4e-7d42fe3d8662&quot;</i><span style="color: navy">;</span>
  src<span style="color: navy"><b> -&gt; </b></span> tgt.meta<b> as </b><span style="color: maroon">meta</span><span style="color: navy">, </span> meta.tag<b> as </b><span style="color: maroon">tag</span><b> then</b><span style="color: navy"> {
</span>    src<span style="color: navy"><b> -&gt; </b></span>tag.system = <span style="color: blue">'https://metadata.phase2.scip.synanetics.cloud/fhir/r4/CodeSystem/MODS-FhirStructureMapCatalog-1'</span> <i>&quot;b56e769d-0b9a-4cfe-a252-3d14867ced7c&quot;</i><span style="color: navy">;</span>
    src<span style="color: navy"><b> -&gt; </b></span>tag.code = <span style="color: blue">'https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureMap/Observation-OccupationalHistory-OccupationalHistory'</span> <i>&quot;811aa069-5557-47fc-a67f-a649f46d858b&quot;</i><span style="color: navy">;</span>
  <span style="color: navy">}</span> <i>&quot;setMetaTag&quot;</i><span style="color: navy">;</span>
  src.careWorker<b> as </b><span style="color: maroon">careWorker</span><b> then</b><span style="color: navy"> {
</span>    src<span style="color: navy"><b> -&gt; </b></span> src.extension<b> as </b><span style="color: maroon">participantExt</span><span style="color: navy">, </span> participantExt.url = <span style="color: blue">'https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/Extension-MODS-ParticipantCareActor'</span><b> then</b><span style="color: navy"> {
</span>      careWorker<span style="color: navy"><b> -&gt; </b></span>participantExt.extension<b> as </b><span style="color: maroon">participantRoleExt</span><b> then</b><span style="color: navy"> {
</span>        careWorker<span style="color: navy"><b> -&gt; </b></span>participantRoleExt.url = <span style="color: blue">'participantRole'</span> <i>&quot;2d16af11-8bae-4289-88e1-0b4e88dd21cd&quot;</i><span style="color: navy">;</span>
        careWorker<span style="color: navy"><b> -&gt; </b></span>participantRoleExt.valueCode = <span style="color: blue">'performer'</span> <i>&quot;f93d92d3-97bd-48e0-9f1d-d07fa531f426&quot;</i><span style="color: navy">;</span>
      <span style="color: navy">}</span> <i>&quot;aad655a5-929f-4d29-a6fa-c68fe7f21a4a&quot;</i><span style="color: navy">;</span>
      careWorker<span style="color: navy"><b> -&gt; </b></span>participantExt.extension<b> as </b><span style="color: maroon">participantRefExt</span><b> then</b><span style="color: navy"> {
</span>        careWorker<span style="color: navy"><b> -&gt; </b></span>participantRefExt.url = <span style="color: blue">'participantReference'</span> <i>&quot;58defa4b-09d5-4251-b9ad-72c364f19712&quot;</i><span style="color: navy">;</span>
        careWorker<span style="color: navy"><b> -&gt; </b></span>participantRefExt.valueReference<b> as </b><span style="color: maroon">participantReference</span><b> then</b><span style="color: navy"> {
</span>          careWorker<span style="color: navy"><b> -&gt; </b></span>participantReference.reference = evaluate<span style="color: navy">(</span>careWorker<span style="color: navy">, </span>'Practitioner/'+id<span style="color: navy">)</span> <i>&quot;f8d0f2fd-dcc5-4765-93e3-bafb090a31cd&quot;</i><span style="color: navy">;</span>
          careWorker<span style="color: navy"><b> -&gt; </b></span>participantReference.display = evaluate<span style="color: navy">(</span>careWorker<span style="color: navy">, </span>display<span style="color: navy">)</span> <i>&quot;ca6f6819-cb97-4dae-ba3d-35139284fe18&quot;</i><span style="color: navy">;</span>
        <span style="color: navy">}</span> <i>&quot;67679b02-6429-405a-9984-aa970ae8574d&quot;</i><span style="color: navy">;</span>
      <span style="color: navy">}</span> <i>&quot;890fb1e0-1e68-4444-b8c3-c68a84084378&quot;</i><span style="color: navy">;</span>
      participantExt<span style="color: navy"><b> -&gt; </b></span>tgt.extension <i>&quot;81b1db57-9ab7-4c2b-9f7c-91ad31ef09cd&quot;</i><span style="color: navy">;</span>
    <span style="color: navy">}</span> <i>&quot;94ef095c-dff0-4d20-ab7c-cacbc946513e&quot;</i><span style="color: navy">;</span>
  <span style="color: navy">}</span> <i>&quot;setObservationPerformer&quot;</i><span style="color: navy">;</span>
  src.subjectOfCare<b> as </b><span style="color: maroon">subjectOfCare</span><b> then</b><span style="color: navy"> {
</span>    src<span style="color: navy"><b> -&gt; </b></span>tgt.subject<b> as </b><span style="color: maroon">subject</span><b> then</b><span style="color: navy"> {
</span>      src<span style="color: navy"><b> -&gt; </b></span>subject.reference = evaluate<span style="color: navy">(</span>subjectOfCare<span style="color: navy">, </span>'Patient/'+id<span style="color: navy">)</span> <i>&quot;20f7591b-0665-4a07-9304-ab72f79a0a60&quot;</i><span style="color: navy">;</span>
      src<span style="color: navy"><b> -&gt; </b></span>subject.display = evaluate<span style="color: navy">(</span>subjectOfCare<span style="color: navy">, </span>display<span style="color: navy">)</span> <i>&quot;14860ee8-ca1f-4f17-b908-75df97bb1f75&quot;</i><span style="color: navy">;</span>
    <span style="color: navy">}</span> <i>&quot;8808f301-0f39-4234-9c7c-ace2475c9852&quot;</i><span style="color: navy">;</span>
  <span style="color: navy">}</span> <i>&quot;setObservationSubject&quot;</i><span style="color: navy">;</span>
  src<span style="color: navy"><b> -&gt; </b></span>tgt.status = <span style="color: blue">'final'</span> <i>&quot;setObservationStatus&quot;</i><span style="color: navy">;</span>
  src<span style="color: navy"><b> -&gt; </b></span>tgt.category = <b>cc</b><span style="color: navy">(</span><span style="color: blue">'https://metadata.phase2.scip.synanetics.cloud/fhir/r4/CodeSystem/MODS-ObservationCategory-1'</span><span style="color: navy">, </span><span style="color: blue">'3'</span><span style="color: navy">, </span><span style="color: blue">'Observations'</span><span style="color: navy">)</span> <i>&quot;setObservationCategory&quot;</i><span style="color: navy">;</span>
  src<span style="color: navy"><b> -&gt; </b></span>tgt.code = <b>cc</b><span style="color: navy">(</span><span style="color: blue">'https://metadata.phase2.scip.synanetics.cloud/fhir/r4/CodeSystem/MODS-ObservationCode-1'</span><span style="color: navy">, </span><span style="color: blue">'12'</span><span style="color: navy">, </span><span style="color: blue">'Occupational History'</span><span style="color: navy">)</span> <i>&quot;setObservationCode&quot;</i><span style="color: navy">;</span>
  src<span style="color: navy"><b> -&gt; </b></span>tgt.effectiveDateTime = evaluate<span style="color: navy">(</span>src<span style="color: navy">, </span>datetime<span style="color: navy">)</span> <i>&quot;setObservationEffectDateTime&quot;</i><span style="color: navy">;</span>
  src.text<b> as </b><span style="color: maroon">text</span><b> then</b><span style="color: navy"> {
</span>    src<span style="color: navy"><b> -&gt; </b></span>tgt.component<b> as </b><span style="color: maroon">freeText</span><b> then</b><span style="color: navy"> {
</span>      src<span style="color: navy"><b> -&gt; </b></span>freeText.code = <b>cc</b><span style="color: navy">(</span><span style="color: blue">'https://metadata.phase2.scip.synanetics.cloud/fhir/r4/CodeSystem/MODS-ObservationComponentCode-1'</span><span style="color: navy">, </span><span style="color: blue">'text'</span><span style="color: navy">, </span><span style="color: blue">'Free-text'</span><span style="color: navy">)</span> <i>&quot;763586ec-1bb4-427f-b685-64219a10fe7c&quot;</i><span style="color: navy">;</span>
      src<span style="color: navy"><b> -&gt; </b></span>freeText.valueString = evaluate<span style="color: navy">(</span>src<span style="color: navy">, </span>text<span style="color: navy">)</span> <i>&quot;51a85b65-e40c-41bb-87c0-2db749434ca2&quot;</i><span style="color: navy">;</span>
    <span style="color: navy">}</span> <i>&quot;setObservationTextComponent&quot;</i><span style="color: navy">;</span>
  <span style="color: navy">}</span><span style="color: navy">;</span>
<span style="color: navy">}

</span></pre></div>
  </text>
  <url
       value="https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureMap/OccupationalHistory-Observation-OccupationalHistory"/>
  <version value="0.1.0"/>
  <name value="OccupationalHistoryToObservationOccupationalHistory"/>
  <status value="draft"/>
  <date value="2026-06-10T19:05:58+00:00"/>
  <publisher
             value="Synanetics Ltd on behalf of DHSC/Social Care Interoperability Platform"/>
  <contact>
    <name
          value="Synanetics Ltd on behalf of DHSC/Social Care Interoperability Platform"/>
    <telecom>
      <system value="url"/>
      <value value="https://synanetics.com"/>
    </telecom>
    <telecom>
      <system value="email"/>
      <value value="info@synanetics.com"/>
    </telecom>
  </contact>
  <jurisdiction>
    <coding>
      <system value="urn:iso:std:iso:3166"/>
      <code value="GB"/>
      <display value="United Kingdom of Great Britain and Northern Ireland"/>
    </coding>
  </jurisdiction>
  <structure>
    <url
         value="https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-OccupationalHistory"/>
    <mode value="source"/>
    <alias value="OccupationalHistory"/>
  </structure>
  <structure>
    <url
         value="https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-OccupationalHistoryObservation"/>
    <mode value="target"/>
    <alias value="OccupationalHistoryObservation"/>
  </structure>
  <group>
    <name value="OccupationalHistoryObservation"/>
    <typeMode value="none"/>
    <input>
      <name value="src"/>
      <type value="OccupationalHistory"/>
      <mode value="source"/>
    </input>
    <input>
      <name value="tgt"/>
      <type value="OccupationalHistoryObservation"/>
      <mode value="target"/>
    </input>
    <rule>
      <name value="64705ee4-3423-43f2-aa4e-7d42fe3d8662"/>
      <source>
        <context value="src"/>
      </source>
      <target>
        <context value="tgt"/>
        <contextType value="variable"/>
        <element value="id"/>
        <transform value="evaluate"/>
        <parameter>
          <valueId value="src"/>
        </parameter>
        <parameter>
          <valueString value="id"/>
        </parameter>
      </target>
    </rule>
    <rule>
      <name value="setMetaTag"/>
      <source>
        <context value="src"/>
      </source>
      <target>
        <context value="tgt"/>
        <contextType value="variable"/>
        <element value="meta"/>
        <variable value="meta"/>
      </target>
      <target>
        <context value="meta"/>
        <contextType value="variable"/>
        <element value="tag"/>
        <variable value="tag"/>
      </target>
      <rule>
        <name value="b56e769d-0b9a-4cfe-a252-3d14867ced7c"/>
        <source>
          <context value="src"/>
        </source>
        <target>
          <context value="tag"/>
          <contextType value="variable"/>
          <element value="system"/>
          <transform value="copy"/>
          <parameter>
            <valueString
                         value="https://metadata.phase2.scip.synanetics.cloud/fhir/r4/CodeSystem/MODS-FhirStructureMapCatalog-1"/>
          </parameter>
        </target>
      </rule>
      <rule>
        <name value="811aa069-5557-47fc-a67f-a649f46d858b"/>
        <source>
          <context value="src"/>
        </source>
        <target>
          <context value="tag"/>
          <contextType value="variable"/>
          <element value="code"/>
          <transform value="copy"/>
          <parameter>
            <valueString
                         value="https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureMap/Observation-OccupationalHistory-OccupationalHistory"/>
          </parameter>
        </target>
      </rule>
    </rule>
    <rule>
      <name value="setObservationPerformer"/>
      <source>
        <context value="src"/>
        <element value="careWorker"/>
        <variable value="careWorker"/>
      </source>
      <rule>
        <name value="94ef095c-dff0-4d20-ab7c-cacbc946513e"/>
        <source>
          <context value="src"/>
        </source>
        <target>
          <context value="src"/>
          <contextType value="variable"/>
          <element value="extension"/>
          <variable value="participantExt"/>
        </target>
        <target>
          <context value="participantExt"/>
          <contextType value="variable"/>
          <element value="url"/>
          <transform value="copy"/>
          <parameter>
            <valueString
                         value="https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/Extension-MODS-ParticipantCareActor"/>
          </parameter>
        </target>
        <rule>
          <name value="aad655a5-929f-4d29-a6fa-c68fe7f21a4a"/>
          <source>
            <context value="careWorker"/>
          </source>
          <target>
            <context value="participantExt"/>
            <contextType value="variable"/>
            <element value="extension"/>
            <variable value="participantRoleExt"/>
          </target>
          <rule>
            <name value="2d16af11-8bae-4289-88e1-0b4e88dd21cd"/>
            <source>
              <context value="careWorker"/>
            </source>
            <target>
              <context value="participantRoleExt"/>
              <contextType value="variable"/>
              <element value="url"/>
              <transform value="copy"/>
              <parameter>
                <valueString value="participantRole"/>
              </parameter>
            </target>
          </rule>
          <rule>
            <name value="f93d92d3-97bd-48e0-9f1d-d07fa531f426"/>
            <source>
              <context value="careWorker"/>
            </source>
            <target>
              <context value="participantRoleExt"/>
              <contextType value="variable"/>
              <element value="valueCode"/>
              <transform value="copy"/>
              <parameter>
                <valueString value="performer"/>
              </parameter>
            </target>
          </rule>
        </rule>
        <rule>
          <name value="890fb1e0-1e68-4444-b8c3-c68a84084378"/>
          <source>
            <context value="careWorker"/>
          </source>
          <target>
            <context value="participantExt"/>
            <contextType value="variable"/>
            <element value="extension"/>
            <variable value="participantRefExt"/>
          </target>
          <rule>
            <name value="58defa4b-09d5-4251-b9ad-72c364f19712"/>
            <source>
              <context value="careWorker"/>
            </source>
            <target>
              <context value="participantRefExt"/>
              <contextType value="variable"/>
              <element value="url"/>
              <transform value="copy"/>
              <parameter>
                <valueString value="participantReference"/>
              </parameter>
            </target>
          </rule>
          <rule>
            <name value="67679b02-6429-405a-9984-aa970ae8574d"/>
            <source>
              <context value="careWorker"/>
            </source>
            <target>
              <context value="participantRefExt"/>
              <contextType value="variable"/>
              <element value="valueReference"/>
              <variable value="participantReference"/>
            </target>
            <rule>
              <name value="f8d0f2fd-dcc5-4765-93e3-bafb090a31cd"/>
              <source>
                <context value="careWorker"/>
              </source>
              <target>
                <context value="participantReference"/>
                <contextType value="variable"/>
                <element value="reference"/>
                <transform value="evaluate"/>
                <parameter>
                  <valueId value="careWorker"/>
                </parameter>
                <parameter>
                  <valueString value="'Practitioner/'+id"/>
                </parameter>
              </target>
            </rule>
            <rule>
              <name value="ca6f6819-cb97-4dae-ba3d-35139284fe18"/>
              <source>
                <context value="careWorker"/>
              </source>
              <target>
                <context value="participantReference"/>
                <contextType value="variable"/>
                <element value="display"/>
                <transform value="evaluate"/>
                <parameter>
                  <valueId value="careWorker"/>
                </parameter>
                <parameter>
                  <valueString value="display"/>
                </parameter>
              </target>
            </rule>
          </rule>
        </rule>
        <rule>
          <name value="81b1db57-9ab7-4c2b-9f7c-91ad31ef09cd"/>
          <source>
            <context value="participantExt"/>
          </source>
          <target>
            <context value="tgt"/>
            <contextType value="variable"/>
            <element value="extension"/>
          </target>
        </rule>
      </rule>
    </rule>
    <rule>
      <name value="setObservationSubject"/>
      <source>
        <context value="src"/>
        <element value="subjectOfCare"/>
        <variable value="subjectOfCare"/>
      </source>
      <rule>
        <name value="8808f301-0f39-4234-9c7c-ace2475c9852"/>
        <source>
          <context value="src"/>
        </source>
        <target>
          <context value="tgt"/>
          <contextType value="variable"/>
          <element value="subject"/>
          <variable value="subject"/>
        </target>
        <rule>
          <name value="20f7591b-0665-4a07-9304-ab72f79a0a60"/>
          <source>
            <context value="src"/>
          </source>
          <target>
            <context value="subject"/>
            <contextType value="variable"/>
            <element value="reference"/>
            <transform value="evaluate"/>
            <parameter>
              <valueId value="subjectOfCare"/>
            </parameter>
            <parameter>
              <valueString value="'Patient/'+id"/>
            </parameter>
          </target>
        </rule>
        <rule>
          <name value="14860ee8-ca1f-4f17-b908-75df97bb1f75"/>
          <source>
            <context value="src"/>
          </source>
          <target>
            <context value="subject"/>
            <contextType value="variable"/>
            <element value="display"/>
            <transform value="evaluate"/>
            <parameter>
              <valueId value="subjectOfCare"/>
            </parameter>
            <parameter>
              <valueString value="display"/>
            </parameter>
          </target>
        </rule>
      </rule>
    </rule>
    <rule>
      <name value="setObservationStatus"/>
      <source>
        <context value="src"/>
      </source>
      <target>
        <context value="tgt"/>
        <contextType value="variable"/>
        <element value="status"/>
        <transform value="copy"/>
        <parameter>
          <valueString value="final"/>
        </parameter>
      </target>
    </rule>
    <rule>
      <name value="setObservationCategory"/>
      <source>
        <context value="src"/>
      </source>
      <target>
        <context value="tgt"/>
        <contextType value="variable"/>
        <element value="category"/>
        <transform value="cc"/>
        <parameter>
          <valueString
                       value="https://metadata.phase2.scip.synanetics.cloud/fhir/r4/CodeSystem/MODS-ObservationCategory-1"/>
        </parameter>
        <parameter>
          <valueString value="3"/>
        </parameter>
        <parameter>
          <valueString value="Observations"/>
        </parameter>
      </target>
    </rule>
    <rule>
      <name value="setObservationCode"/>
      <source>
        <context value="src"/>
      </source>
      <target>
        <context value="tgt"/>
        <contextType value="variable"/>
        <element value="code"/>
        <transform value="cc"/>
        <parameter>
          <valueString
                       value="https://metadata.phase2.scip.synanetics.cloud/fhir/r4/CodeSystem/MODS-ObservationCode-1"/>
        </parameter>
        <parameter>
          <valueString value="12"/>
        </parameter>
        <parameter>
          <valueString value="Occupational History"/>
        </parameter>
      </target>
    </rule>
    <rule>
      <name value="setObservationEffectDateTime"/>
      <source>
        <context value="src"/>
      </source>
      <target>
        <context value="tgt"/>
        <contextType value="variable"/>
        <element value="effectiveDateTime"/>
        <transform value="evaluate"/>
        <parameter>
          <valueId value="src"/>
        </parameter>
        <parameter>
          <valueString value="datetime"/>
        </parameter>
      </target>
    </rule>
    <rule>
      <name value="text"/>
      <source>
        <context value="src"/>
        <element value="text"/>
        <variable value="text"/>
      </source>
      <rule>
        <name value="setObservationTextComponent"/>
        <source>
          <context value="src"/>
        </source>
        <target>
          <context value="tgt"/>
          <contextType value="variable"/>
          <element value="component"/>
          <variable value="freeText"/>
        </target>
        <rule>
          <name value="763586ec-1bb4-427f-b685-64219a10fe7c"/>
          <source>
            <context value="src"/>
          </source>
          <target>
            <context value="freeText"/>
            <contextType value="variable"/>
            <element value="code"/>
            <transform value="cc"/>
            <parameter>
              <valueString
                           value="https://metadata.phase2.scip.synanetics.cloud/fhir/r4/CodeSystem/MODS-ObservationComponentCode-1"/>
            </parameter>
            <parameter>
              <valueString value="text"/>
            </parameter>
            <parameter>
              <valueString value="Free-text"/>
            </parameter>
          </target>
        </rule>
        <rule>
          <name value="51a85b65-e40c-41bb-87c0-2db749434ca2"/>
          <source>
            <context value="src"/>
          </source>
          <target>
            <context value="freeText"/>
            <contextType value="variable"/>
            <element value="valueString"/>
            <transform value="evaluate"/>
            <parameter>
              <valueId value="src"/>
            </parameter>
            <parameter>
              <valueString value="text"/>
            </parameter>
          </target>
        </rule>
      </rule>
    </rule>
  </group>
</StructureMap>