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
| Draft as of 2026-06-10 |
<StructureMap xmlns="http://hl7.org/fhir">
<id value="SocialCircumstance-Observation-SocialCircumstance"/>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureMap SocialCircumstance-Observation-SocialCircumstance</b></p><a name="SocialCircumstance-Observation-SocialCircumstance"> </a><a name="hcSocialCircumstance-Observation-SocialCircumstance"> </a><pre class="fml">
<b>map</b><span style="color: navy"> "</span>https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureMap/SocialCircumstance-Observation-SocialCircumstance<span style="color: navy">" = "</span>SocialCircumstanceToObservationSocialCircumstance<span style="color: navy">"
</span><b>uses</b><span style="color: navy"> "</span><a href="StructureDefinition-MODS-SocialCircumstance.html" title="MODS Social Circumstance">https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SocialCircumstance</a><span style="color: navy">" </span><b>alias </b>SocialCircumstance <b>as </b><b>source</b>
<b>uses</b><span style="color: navy"> "</span><a href="StructureDefinition-MODS-SocialCircumstanceObservation.html" title="MODS Social Circumstance Observation">https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SocialCircumstanceObservation</a><span style="color: navy">" </span><b>alias </b>SocialCircumstanceObservation <b>as </b><b>target</b>
<b>group </b>SocialCircumstanceObservation<span style="color: navy">(</span><b>source</b> <span style="color: maroon">src</span><span style="color: navy"> : </span>SocialCircumstance, <b>target</b> <span style="color: maroon">tgt</span><span style="color: navy"> : </span>SocialCircumstanceObservation<span style="color: navy">)</span><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>tgt.id = evaluate<span style="color: navy">(</span>src<span style="color: navy">, </span>id<span style="color: navy">)</span> <i>"6625409c-769e-4f59-85db-c92ade64ebdc"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </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> -> </b></span>tag.system = <span style="color: blue">'https://metadata.phase2.scip.synanetics.cloud/fhir/r4/CodeSystem/MODS-FhirStructureMapCatalog-1'</span> <i>"cacbaf9a-a089-4a95-9ea6-197e94e44ce5"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>tag.code = <span style="color: blue">'https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureMap/Observation-SocialCircumstance-SocialCircumstance'</span> <i>"579a12e9-441c-4565-b21e-77ddc8597f7c"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"setMetaTag"</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> -> </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> -> </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> -> </b></span>participantRoleExt.url = <span style="color: blue">'participantRole'</span> <i>"d7837d56-7d0d-4da1-9914-10b96b9f37af"</i><span style="color: navy">;</span>
careWorker<span style="color: navy"><b> -> </b></span>participantRoleExt.valueCode = <span style="color: blue">'performer'</span> <i>"3fe69928-269d-4235-a24d-435193eb0a6c"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"509a10db-cc87-44fc-a643-d3ea9c422173"</i><span style="color: navy">;</span>
careWorker<span style="color: navy"><b> -> </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> -> </b></span>participantRefExt.url = <span style="color: blue">'participantReference'</span> <i>"10b96bcf-159d-42a9-98b2-ccc07a869af2"</i><span style="color: navy">;</span>
careWorker<span style="color: navy"><b> -> </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> -> </b></span>participantReference.reference = evaluate<span style="color: navy">(</span>careWorker<span style="color: navy">, </span>'Practitioner/'+id<span style="color: navy">)</span> <i>"a6ea6d2a-4060-47f4-bd06-f383ac7a5d5b"</i><span style="color: navy">;</span>
careWorker<span style="color: navy"><b> -> </b></span>participantReference.display = evaluate<span style="color: navy">(</span>careWorker<span style="color: navy">, </span>display<span style="color: navy">)</span> <i>"5f938ad7-42be-44bf-a247-b37107b64151"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"670c7bb5-2e6a-4bf6-9da4-a78bcdc90f2f"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"1e96126a-aaee-4c48-b5bf-162d48024153"</i><span style="color: navy">;</span>
participantExt<span style="color: navy"><b> -> </b></span>tgt.extension <i>"7ae507b4-4edc-4b0c-adcb-de703a9b18a9"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"3e3c1cc4-d731-4d7b-bfec-962df35af05e"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"setObservationPerformer"</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> -> </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> -> </b></span>subject.reference = evaluate<span style="color: navy">(</span>subjectOfCare<span style="color: navy">, </span>'Patient/'+id<span style="color: navy">)</span> <i>"dff8e78e-da60-4060-93ef-560676bf3af4"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>subject.display = evaluate<span style="color: navy">(</span>subjectOfCare<span style="color: navy">, </span>display<span style="color: navy">)</span> <i>"9595a667-7b68-426c-b6ee-b1f8952a7176"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"faa8311a-245f-43ea-a2e3-71f0a8e4c63a"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"setObservationSubject"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>tgt.status = <span style="color: blue">'final'</span> <i>"setObservationStatus"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </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>"setObservationCategory"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </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">'11'</span><span style="color: navy">, </span><span style="color: blue">'Social Circumstance'</span><span style="color: navy">)</span> <i>"setObservationCode"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>tgt.effectiveDateTime = evaluate<span style="color: navy">(</span>src<span style="color: navy">, </span>datetime<span style="color: navy">)</span> <i>"setObservationEffectDateTime"</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> -> </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> -> </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>"ea3a4e59-ed79-4726-9f9c-593fcc6e1b45"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>freeText.valueString = evaluate<span style="color: navy">(</span>src<span style="color: navy">, </span>text<span style="color: navy">)</span> <i>"7a43f1fa-0281-4535-b2c1-6c466f3295df"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"setObservationTextComponent"</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/SocialCircumstance-Observation-SocialCircumstance"/>
<version value="0.1.0"/>
<name value="SocialCircumstanceToObservationSocialCircumstance"/>
<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-SocialCircumstance"/>
<mode value="source"/>
<alias value="SocialCircumstance"/>
</structure>
<structure>
<url
value="https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SocialCircumstanceObservation"/>
<mode value="target"/>
<alias value="SocialCircumstanceObservation"/>
</structure>
<group>
<name value="SocialCircumstanceObservation"/>
<typeMode value="none"/>
<input>
<name value="src"/>
<type value="SocialCircumstance"/>
<mode value="source"/>
</input>
<input>
<name value="tgt"/>
<type value="SocialCircumstanceObservation"/>
<mode value="target"/>
</input>
<rule>
<name value="6625409c-769e-4f59-85db-c92ade64ebdc"/>
<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="cacbaf9a-a089-4a95-9ea6-197e94e44ce5"/>
<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="579a12e9-441c-4565-b21e-77ddc8597f7c"/>
<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-SocialCircumstance-SocialCircumstance"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="setObservationPerformer"/>
<source>
<context value="src"/>
<element value="careWorker"/>
<variable value="careWorker"/>
</source>
<rule>
<name value="3e3c1cc4-d731-4d7b-bfec-962df35af05e"/>
<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="509a10db-cc87-44fc-a643-d3ea9c422173"/>
<source>
<context value="careWorker"/>
</source>
<target>
<context value="participantExt"/>
<contextType value="variable"/>
<element value="extension"/>
<variable value="participantRoleExt"/>
</target>
<rule>
<name value="d7837d56-7d0d-4da1-9914-10b96b9f37af"/>
<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="3fe69928-269d-4235-a24d-435193eb0a6c"/>
<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="1e96126a-aaee-4c48-b5bf-162d48024153"/>
<source>
<context value="careWorker"/>
</source>
<target>
<context value="participantExt"/>
<contextType value="variable"/>
<element value="extension"/>
<variable value="participantRefExt"/>
</target>
<rule>
<name value="10b96bcf-159d-42a9-98b2-ccc07a869af2"/>
<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="670c7bb5-2e6a-4bf6-9da4-a78bcdc90f2f"/>
<source>
<context value="careWorker"/>
</source>
<target>
<context value="participantRefExt"/>
<contextType value="variable"/>
<element value="valueReference"/>
<variable value="participantReference"/>
</target>
<rule>
<name value="a6ea6d2a-4060-47f4-bd06-f383ac7a5d5b"/>
<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="5f938ad7-42be-44bf-a247-b37107b64151"/>
<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="7ae507b4-4edc-4b0c-adcb-de703a9b18a9"/>
<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="faa8311a-245f-43ea-a2e3-71f0a8e4c63a"/>
<source>
<context value="src"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="subject"/>
<variable value="subject"/>
</target>
<rule>
<name value="dff8e78e-da60-4060-93ef-560676bf3af4"/>
<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="9595a667-7b68-426c-b6ee-b1f8952a7176"/>
<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="11"/>
</parameter>
<parameter>
<valueString value="Social Circumstance"/>
</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="ea3a4e59-ed79-4726-9f9c-593fcc6e1b45"/>
<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="7a43f1fa-0281-4535-b2c1-6c466f3295df"/>
<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>