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