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-03-24 |
{
"resourceType" : "StructureMap",
"id" : "TransferParameters-Transfer",
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: StructureMap TransferParameters-Transfer</b></p><a name=\"TransferParameters-Transfer\"> </a><a name=\"hcTransferParameters-Transfer\"> </a><pre class=\"fml\">\r\n<b>map</b><span style=\"color: navy\"> "</span>https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureMap/TransferParameters-Transfer<span style=\"color: navy\">" = "</span>TransferParametersToTransfer<span style=\"color: navy\">"\r\n\r\n</span><b>uses</b><span style=\"color: navy\"> "</span><a href=\"StructureDefinition-MODS-DSCRTransferParametersIn-1.html\" title=\"MODS DSCR $transfer — Input Parameters\">https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-DSCRTransferParametersIn-1</a><span style=\"color: navy\">" </span><b>alias </b>Parameters <b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> "</span><a href=\"StructureDefinition-MODS-Transfer.html\" title=\"MODS Transfer\">https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-Transfer</a><span style=\"color: navy\">" </span><b>alias </b>Transfer <b>as </b><b>target</b>\r\n\r\n<b>group </b>Transfer<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>Parameters, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>Transfer<span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.requestor<b> as </b><span style=\"color: maroon\">requestor</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>requestor.organisation<b> as </b><span style=\"color: maroon\">organisation</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src.parameter<b> as </b><span style=\"color: maroon\">parametersParameter</span><b> where </b>$this.name='requestor'<span style=\"color: navy\">, </span>parametersParameter.valueReference<b> as </b><span style=\"color: maroon\">requestorReference</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>organisation.id = evaluate<span style=\"color: navy\">(</span>requestorReference<span style=\"color: navy\">, </span>identifier.value<span style=\"color: navy\">)</span> <i>"839bbb91-9d99-4dbf-b6e6-02db56945e69"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>organisation.type = <span style=\"color: blue\">'CareOrganisation'</span> <i>"26438cc8-78d8-4674-86d0-71204369daea"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>organisation.display = evaluate<span style=\"color: navy\">(</span>requestorReference<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"44dc874f-6df5-4219-be1d-70c016d4caa5"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"parameter"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"ab9ea402-cbb2-4af8-ad83-7867c7d7d663"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>requestor.contact<b> as </b><span style=\"color: maroon\">requestedBy</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src.parameter<b> as </b><span style=\"color: maroon\">parametersParameter</span><b> where </b>$this.name='requestedBy'<span style=\"color: navy\">, </span>parametersParameter.valueReference<b> as </b><span style=\"color: maroon\">requestedByReference</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>requestedBy.id = evaluate<span style=\"color: navy\">(</span>requestedByReference<span style=\"color: navy\">, </span>identifier.value<span style=\"color: navy\">)</span> <i>"832efc78-6e3f-46e6-ab5c-0970df0c3923"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>requestedBy.type = <span style=\"color: blue\">'CareWorker'</span> <i>"1d77da5c-8272-4990-819f-d59ad8234efd"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>requestedBy.display = evaluate<span style=\"color: navy\">(</span>requestedByReference<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"e2e0e40c-e6b5-4076-af2a-ca83fa76f238"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"parameter"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"4cde108d-7bf2-47b5-90c0-e974065b0b4c"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setRequestor"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tgt.fulfiller<b> as </b><span style=\"color: maroon\">fulfiller</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>fulfiller.organisation<b> as </b><span style=\"color: maroon\">organisation</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src.parameter<b> as </b><span style=\"color: maroon\">parametersParameter</span><b> where </b>$this.name='fulfiller'<span style=\"color: navy\">, </span>parametersParameter.valueReference<b> as </b><span style=\"color: maroon\">fulfillerReference</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>organisation.id = evaluate<span style=\"color: navy\">(</span>fulfillerReference<span style=\"color: navy\">, </span>identifier.value<span style=\"color: navy\">)</span> <i>"ee15766f-bf93-4255-b8a6-5757cb4c2e31"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>organisation.type = <span style=\"color: blue\">'CareOrganisation'</span> <i>"b2cec525-1633-4bf9-98b3-5df93d9ae644"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>organisation.display = evaluate<span style=\"color: navy\">(</span>fulfillerReference<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"30ba28fd-dc46-49e7-9b95-490c012b048e"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"parameter"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"6d10ceec-87a8-45a7-a57f-6a668ad89979"</i><span style=\"color: navy\">;</span>\r\n src.parameter<b> as </b><span style=\"color: maroon\">parametersParameter</span><b> where </b>$this.name='fulfilledBy'<span style=\"color: navy\">, </span>parametersParameter.valueReference<b> as </b><span style=\"color: maroon\">fulfilledByReference</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>fulfiller.contact<b> as </b><span style=\"color: maroon\">fulfilledBy</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>fulfilledBy.id = evaluate<span style=\"color: navy\">(</span>fulfilledByReference<span style=\"color: navy\">, </span>identifier.value<span style=\"color: navy\">)</span> <i>"2776e50c-8831-41ef-9dab-ff8d86c972e8"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>fulfilledBy.type = <span style=\"color: blue\">'CareWorker'</span> <i>"5804896b-0927-41df-8598-485f42e5a08d"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>fulfilledBy.display = evaluate<span style=\"color: navy\">(</span>fulfilledByReference<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"ed48eff7-8ab7-4fb9-b14c-df52d72bb847"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"133ed1ee-2e68-4633-b912-3f32518915f9"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"parameter"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setFulfiller"</i><span style=\"color: navy\">;</span>\r\n src.parameter<b> as </b><span style=\"color: maroon\">parametersParameter</span><b> where </b>$this.name='subject'<b> then</b><span style=\"color: navy\"> {\r\n</span> parametersParameter.valueReference<b> as </b><span style=\"color: maroon\">subjectReference</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.name<b> as </b><span style=\"color: maroon\">subjectName</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>subjectName.given = evaluate<span style=\"color: navy\">(</span>subjectReference<span style=\"color: navy\">, </span>display.split(' ')[0]<span style=\"color: navy\">)</span> <i>"af761d9b-55ad-4218-aa23-b2996d998abb"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>subjectName.family = evaluate<span style=\"color: navy\">(</span>subjectReference<span style=\"color: navy\">, </span>display.split(' ')[1]<span style=\"color: navy\">)</span> <i>"dc2cfe3e-c0d2-45c3-ac2a-0e9e61bca29e"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"a25be25b-a1cb-4ad9-a126-9c8e187cd36c"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>subject.nhsNumber<b> as </b><span style=\"color: maroon\">nhsNumber</span><b> then</b><span style=\"color: navy\"> {\r\n</span> subjectReference.identifier<b> as </b><span style=\"color: maroon\">identifier</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>nhsNumber.value = evaluate<span style=\"color: navy\">(</span>identifier<span style=\"color: navy\">, </span>value<span style=\"color: navy\">)</span> <i>"638f0180-d015-41c5-bcee-84a05428ccac"</i><span style=\"color: navy\">;</span>\r\n identifier.extension<b> as </b><span style=\"color: maroon\">traceStatusIndicatorExt</span><b> where </b>$this.url='https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus'<span style=\"color: navy\">, </span>traceStatusIndicatorExt.valueCodeableConcept<b> as </b><span style=\"color: maroon\">traceStatusIndicatorCodeableConcept</span><span style=\"color: navy\">, </span>traceStatusIndicatorCodeableConcept.coding<b> as </b><span style=\"color: maroon\">traceStatusIndicatorCoding</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>nhsNumber.statusIndicator<b> as </b><span style=\"color: maroon\">statusIndicator</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>statusIndicator.code = evaluate<span style=\"color: navy\">(</span>traceStatusIndicatorCoding<span style=\"color: navy\">, </span>code<span style=\"color: navy\">)</span> <i>"1a91e1f1-4674-4a2c-a4fa-6bfb6752a7ba"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>statusIndicator.display = evaluate<span style=\"color: navy\">(</span>traceStatusIndicatorCoding<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"8e07431b-0e8b-40b8-a633-3809a4d711dc"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"f00e8770-03b2-40ef-bbc6-e6556bf7b785"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"extension"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"a907666c-1327-4032-97b3-4cd0be5b208c"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"e5c5b468-0f12-4c79-9f5f-0c6a05f9ec04"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setSubject"</i><span style=\"color: navy\">;</span>\r\n src.parameter<b> as </b><span style=\"color: maroon\">parametersParameter</span><b> where </b>$this.name='targetCompletion'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.targetCompletion = evaluate<span style=\"color: navy\">(</span>parametersParameter<span style=\"color: navy\">, </span>valueDate<span style=\"color: navy\">)</span> <i>"d2abdbea-81b2-4a05-b17a-6aa5eda6b947"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setTargetCompletionDate"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tgt.tracking<b> as </b><span style=\"color: maroon\">tracking</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src.parameter<b> as </b><span style=\"color: maroon\">parametersParameter</span><b> where </b>$this.name='requestorTrackingId'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tracking.requestorTrackingId = evaluate<span style=\"color: navy\">(</span>parametersParameter<span style=\"color: navy\">, </span>valueString<span style=\"color: navy\">)</span> <i>"31f4e231-ed73-4a8b-9d84-35bbc1336a44"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setRequestorTrackingId"</i><span style=\"color: navy\">;</span>\r\n src.parameter<b> as </b><span style=\"color: maroon\">parametersParameter</span><b> where </b>$this.name='fulfillerTrackingId'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tracking.fulfillerTrackingId = evaluate<span style=\"color: navy\">(</span>parametersParameter<span style=\"color: navy\">, </span>valueString<span style=\"color: navy\">)</span> <i>"6431551c-aaeb-4d63-8f24-dabd8edc589f"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setFulfillerTrackingId"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tracking.progress<b> as </b><span style=\"color: maroon\">progress</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src.parameter<b> as </b><span style=\"color: maroon\">parametersParameter</span><b> where </b>$this.name='status'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>progress.status = evaluate<span style=\"color: navy\">(</span>parametersParameter<span style=\"color: navy\">, </span>valueCode<span style=\"color: navy\">)</span> <i>"5179430f-1f23-4a49-87aa-1296326430cb"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n src.parameter<b> as </b><span style=\"color: maroon\">parametersParameter</span><b> where </b>$this.name='statusLastUpdated'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>progress.date = evaluate<span style=\"color: navy\">(</span>parametersParameter<span style=\"color: navy\">, </span>valueDateTime<span style=\"color: navy\">)</span> <i>"81c9b703-14b1-4fb7-8ade-3fdcc4bdda73"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setTrackingProgress"</i><span style=\"color: navy\">;</span>\r\n src.parameter<b> as </b><span style=\"color: maroon\">parametersParameter</span><b> where </b>$this.name='note'<span style=\"color: navy\"><b> -> </b></span>tracking.notes<b> as </b><span style=\"color: maroon\">notes</span><b> then</b><span style=\"color: navy\"> {\r\n</span> parametersParameter.part<b> as </b><span style=\"color: maroon\">datePart</span><b> where </b>$this.name='date'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>notes.date = evaluate<span style=\"color: navy\">(</span>datePart<span style=\"color: navy\">, </span>valueDateTime<span style=\"color: navy\">)</span> <i>"df1d4e1c-bd72-4dda-b609-2f0c714990ea"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n parametersParameter.part<b> as </b><span style=\"color: maroon\">textPart</span><b> where </b>$this.name='text'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>notes.text = evaluate<span style=\"color: navy\">(</span>textPart<span style=\"color: navy\">, </span>valueString<span style=\"color: navy\">)</span> <i>"2a7dfcce-0d3a-4e4d-b217-aa4c77a4e28d"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setNotes"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setTracking"</i><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/TransferParameters-Transfer",
"version" : "0.1.0",
"name" : "TransferParametersToTransfer",
"status" : "draft",
"date" : "2026-03-24T16:18:08+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-DSCRTransferParametersIn-1",
"mode" : "source",
"alias" : "Parameters"
},
{
"url" : "https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-Transfer",
"mode" : "target",
"alias" : "Transfer"
}
],
"group" : [
{
"name" : "Transfer",
"typeMode" : "none",
"input" : [
{
"name" : "src",
"type" : "Parameters",
"mode" : "source"
},
{
"name" : "tgt",
"type" : "Transfer",
"mode" : "target"
}
],
"rule" : [
{
"name" : "setRequestor",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "requestor",
"variable" : "requestor"
}
],
"rule" : [
{
"name" : "ab9ea402-cbb2-4af8-ad83-7867c7d7d663",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "requestor",
"contextType" : "variable",
"element" : "organisation",
"variable" : "organisation"
}
],
"rule" : [
{
"name" : "parameter",
"source" : [
{
"context" : "src",
"element" : "parameter",
"variable" : "parametersParameter",
"condition" : "$this.name='requestor'"
},
{
"context" : "parametersParameter",
"element" : "valueReference",
"variable" : "requestorReference"
}
],
"rule" : [
{
"name" : "839bbb91-9d99-4dbf-b6e6-02db56945e69",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "organisation",
"contextType" : "variable",
"element" : "id",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "requestorReference"
},
{
"valueString" : "identifier.value"
}
]
}
]
},
{
"name" : "26438cc8-78d8-4674-86d0-71204369daea",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "organisation",
"contextType" : "variable",
"element" : "type",
"transform" : "copy",
"parameter" : [
{
"valueString" : "CareOrganisation"
}
]
}
]
},
{
"name" : "44dc874f-6df5-4219-be1d-70c016d4caa5",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "organisation",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "requestorReference"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
},
{
"name" : "4cde108d-7bf2-47b5-90c0-e974065b0b4c",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "requestor",
"contextType" : "variable",
"element" : "contact",
"variable" : "requestedBy"
}
],
"rule" : [
{
"name" : "parameter",
"source" : [
{
"context" : "src",
"element" : "parameter",
"variable" : "parametersParameter",
"condition" : "$this.name='requestedBy'"
},
{
"context" : "parametersParameter",
"element" : "valueReference",
"variable" : "requestedByReference"
}
],
"rule" : [
{
"name" : "832efc78-6e3f-46e6-ab5c-0970df0c3923",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "requestedBy",
"contextType" : "variable",
"element" : "id",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "requestedByReference"
},
{
"valueString" : "identifier.value"
}
]
}
]
},
{
"name" : "1d77da5c-8272-4990-819f-d59ad8234efd",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "requestedBy",
"contextType" : "variable",
"element" : "type",
"transform" : "copy",
"parameter" : [
{
"valueString" : "CareWorker"
}
]
}
]
},
{
"name" : "e2e0e40c-e6b5-4076-af2a-ca83fa76f238",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "requestedBy",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "requestedByReference"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "setFulfiller",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "fulfiller",
"variable" : "fulfiller"
}
],
"rule" : [
{
"name" : "6d10ceec-87a8-45a7-a57f-6a668ad89979",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "fulfiller",
"contextType" : "variable",
"element" : "organisation",
"variable" : "organisation"
}
],
"rule" : [
{
"name" : "parameter",
"source" : [
{
"context" : "src",
"element" : "parameter",
"variable" : "parametersParameter",
"condition" : "$this.name='fulfiller'"
},
{
"context" : "parametersParameter",
"element" : "valueReference",
"variable" : "fulfillerReference"
}
],
"rule" : [
{
"name" : "ee15766f-bf93-4255-b8a6-5757cb4c2e31",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "organisation",
"contextType" : "variable",
"element" : "id",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "fulfillerReference"
},
{
"valueString" : "identifier.value"
}
]
}
]
},
{
"name" : "b2cec525-1633-4bf9-98b3-5df93d9ae644",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "organisation",
"contextType" : "variable",
"element" : "type",
"transform" : "copy",
"parameter" : [
{
"valueString" : "CareOrganisation"
}
]
}
]
},
{
"name" : "30ba28fd-dc46-49e7-9b95-490c012b048e",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "organisation",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "fulfillerReference"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
},
{
"name" : "parameter",
"source" : [
{
"context" : "src",
"element" : "parameter",
"variable" : "parametersParameter",
"condition" : "$this.name='fulfilledBy'"
},
{
"context" : "parametersParameter",
"element" : "valueReference",
"variable" : "fulfilledByReference"
}
],
"rule" : [
{
"name" : "133ed1ee-2e68-4633-b912-3f32518915f9",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "fulfiller",
"contextType" : "variable",
"element" : "contact",
"variable" : "fulfilledBy"
}
],
"rule" : [
{
"name" : "2776e50c-8831-41ef-9dab-ff8d86c972e8",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "fulfilledBy",
"contextType" : "variable",
"element" : "id",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "fulfilledByReference"
},
{
"valueString" : "identifier.value"
}
]
}
]
},
{
"name" : "5804896b-0927-41df-8598-485f42e5a08d",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "fulfilledBy",
"contextType" : "variable",
"element" : "type",
"transform" : "copy",
"parameter" : [
{
"valueString" : "CareWorker"
}
]
}
]
},
{
"name" : "ed48eff7-8ab7-4fb9-b14c-df52d72bb847",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "fulfilledBy",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "fulfilledByReference"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "setSubject",
"source" : [
{
"context" : "src",
"element" : "parameter",
"variable" : "parametersParameter",
"condition" : "$this.name='subject'"
}
],
"rule" : [
{
"name" : "valueReference",
"source" : [
{
"context" : "parametersParameter",
"element" : "valueReference",
"variable" : "subjectReference"
}
],
"rule" : [
{
"name" : "e5c5b468-0f12-4c79-9f5f-0c6a05f9ec04",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "subject",
"variable" : "subject"
}
],
"rule" : [
{
"name" : "a25be25b-a1cb-4ad9-a126-9c8e187cd36c",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "subject",
"contextType" : "variable",
"element" : "name",
"variable" : "subjectName"
}
],
"rule" : [
{
"name" : "af761d9b-55ad-4218-aa23-b2996d998abb",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "subjectName",
"contextType" : "variable",
"element" : "given",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "subjectReference"
},
{
"valueString" : "display.split(' ')[0]"
}
]
}
]
},
{
"name" : "dc2cfe3e-c0d2-45c3-ac2a-0e9e61bca29e",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "subjectName",
"contextType" : "variable",
"element" : "family",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "subjectReference"
},
{
"valueString" : "display.split(' ')[1]"
}
]
}
]
}
]
},
{
"name" : "a907666c-1327-4032-97b3-4cd0be5b208c",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "subject",
"contextType" : "variable",
"element" : "nhsNumber",
"variable" : "nhsNumber"
}
],
"rule" : [
{
"name" : "identifier",
"source" : [
{
"context" : "subjectReference",
"element" : "identifier",
"variable" : "identifier"
}
],
"rule" : [
{
"name" : "638f0180-d015-41c5-bcee-84a05428ccac",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "nhsNumber",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "identifier"
},
{
"valueString" : "value"
}
]
}
]
},
{
"name" : "extension",
"source" : [
{
"context" : "identifier",
"element" : "extension",
"variable" : "traceStatusIndicatorExt",
"condition" : "$this.url='https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus'"
},
{
"context" : "traceStatusIndicatorExt",
"element" : "valueCodeableConcept",
"variable" : "traceStatusIndicatorCodeableConcept"
},
{
"context" : "traceStatusIndicatorCodeableConcept",
"min" : 1,
"max" : "1",
"element" : "coding",
"variable" : "traceStatusIndicatorCoding"
}
],
"rule" : [
{
"name" : "f00e8770-03b2-40ef-bbc6-e6556bf7b785",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "nhsNumber",
"contextType" : "variable",
"element" : "statusIndicator",
"variable" : "statusIndicator"
}
],
"rule" : [
{
"name" : "1a91e1f1-4674-4a2c-a4fa-6bfb6752a7ba",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "statusIndicator",
"contextType" : "variable",
"element" : "code",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "traceStatusIndicatorCoding"
},
{
"valueString" : "code"
}
]
}
]
},
{
"name" : "8e07431b-0e8b-40b8-a633-3809a4d711dc",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "statusIndicator",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "traceStatusIndicatorCoding"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "setTargetCompletionDate",
"source" : [
{
"context" : "src",
"element" : "parameter",
"variable" : "parametersParameter",
"condition" : "$this.name='targetCompletion'"
}
],
"rule" : [
{
"name" : "d2abdbea-81b2-4a05-b17a-6aa5eda6b947",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "targetCompletion",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "parametersParameter"
},
{
"valueString" : "valueDate"
}
]
}
]
}
]
},
{
"name" : "setTracking",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "tracking",
"variable" : "tracking"
}
],
"rule" : [
{
"name" : "setRequestorTrackingId",
"source" : [
{
"context" : "src",
"element" : "parameter",
"variable" : "parametersParameter",
"condition" : "$this.name='requestorTrackingId'"
}
],
"rule" : [
{
"name" : "31f4e231-ed73-4a8b-9d84-35bbc1336a44",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tracking",
"contextType" : "variable",
"element" : "requestorTrackingId",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "parametersParameter"
},
{
"valueString" : "valueString"
}
]
}
]
}
]
},
{
"name" : "setFulfillerTrackingId",
"source" : [
{
"context" : "src",
"element" : "parameter",
"variable" : "parametersParameter",
"condition" : "$this.name='fulfillerTrackingId'"
}
],
"rule" : [
{
"name" : "6431551c-aaeb-4d63-8f24-dabd8edc589f",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tracking",
"contextType" : "variable",
"element" : "fulfillerTrackingId",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "parametersParameter"
},
{
"valueString" : "valueString"
}
]
}
]
}
]
},
{
"name" : "setTrackingProgress",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tracking",
"contextType" : "variable",
"element" : "progress",
"variable" : "progress"
}
],
"rule" : [
{
"name" : "parameter",
"source" : [
{
"context" : "src",
"element" : "parameter",
"variable" : "parametersParameter",
"condition" : "$this.name='status'"
}
],
"rule" : [
{
"name" : "5179430f-1f23-4a49-87aa-1296326430cb",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "progress",
"contextType" : "variable",
"element" : "status",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "parametersParameter"
},
{
"valueString" : "valueCode"
}
]
}
]
}
]
},
{
"name" : "parameter",
"source" : [
{
"context" : "src",
"element" : "parameter",
"variable" : "parametersParameter",
"condition" : "$this.name='statusLastUpdated'"
}
],
"rule" : [
{
"name" : "81c9b703-14b1-4fb7-8ade-3fdcc4bdda73",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "progress",
"contextType" : "variable",
"element" : "date",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "parametersParameter"
},
{
"valueString" : "valueDateTime"
}
]
}
]
}
]
}
]
},
{
"name" : "setNotes",
"source" : [
{
"context" : "src",
"element" : "parameter",
"variable" : "parametersParameter",
"condition" : "$this.name='note'"
}
],
"target" : [
{
"context" : "tracking",
"contextType" : "variable",
"element" : "notes",
"variable" : "notes"
}
],
"rule" : [
{
"name" : "part",
"source" : [
{
"context" : "parametersParameter",
"element" : "part",
"variable" : "datePart",
"condition" : "$this.name='date'"
}
],
"rule" : [
{
"name" : "df1d4e1c-bd72-4dda-b609-2f0c714990ea",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "notes",
"contextType" : "variable",
"element" : "date",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "datePart"
},
{
"valueString" : "valueDateTime"
}
]
}
]
}
]
},
{
"name" : "part",
"source" : [
{
"context" : "parametersParameter",
"element" : "part",
"variable" : "textPart",
"condition" : "$this.name='text'"
}
],
"rule" : [
{
"name" : "2a7dfcce-0d3a-4e4d-b217-aa4c77a4e28d",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "notes",
"contextType" : "variable",
"element" : "text",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "textPart"
},
{
"valueString" : "valueString"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}