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" : "Observation-Risk-Risk",
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: StructureMap Observation-Risk-Risk</b></p><a name=\"Observation-Risk-Risk\"> </a><a name=\"hcObservation-Risk-Risk\"> </a><pre class=\"fml\">\r\n<b>map</b><span style=\"color: navy\"> "</span>https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureMap/Observation-Risk-Risk<span style=\"color: navy\">" = "</span>ObservationRiskToRisk<span style=\"color: navy\">"\r\n\r\n</span><b>uses</b><span style=\"color: navy\"> "</span><a href=\"StructureDefinition-MODS-RiskObservation.html\" title=\"MODS Risk Observation\">https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-RiskObservation</a><span style=\"color: navy\">" </span><b>alias </b>RiskObservation <b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> "</span><a href=\"StructureDefinition-MODS-Risk.html\" title=\"MODS Risk\">https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-Risk</a><span style=\"color: navy\">" </span><b>alias </b>Risk <b>as </b><b>target</b>\r\n\r\n<b>group </b>Risk<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>RiskObservation, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>Risk<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>"d0e20776-22e2-411b-ab0f-ba0ae5420cd1"</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.dataClass<b> as </b><span style=\"color: maroon\">dataClass</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>dataClass.name = <span style=\"color: blue\">'Risk'</span> <i>"6ed098e3-a806-4586-b059-6b212708fb25"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setDataClassName"</i><span style=\"color: navy\">;</span>\r\n src.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>tgt.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>subjectOfCare.id = evaluate<span style=\"color: navy\">(</span>subject<span style=\"color: navy\">, </span>reference.replace('Patient/','')<span style=\"color: navy\">)</span> <i>"7a289f08-b9e4-48b5-acd1-bdf7a43af2d7"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>subjectOfCare.type = <span style=\"color: blue\">'SubjectOfCare'</span> <i>"3903cf49-17d0-4904-a964-f8e84f0473b2"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>subjectOfCare.display = evaluate<span style=\"color: navy\">(</span>subject<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"d82ef971-9441-4e59-80e3-f627547cf630"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"f261cd58-55e7-4dd8-a3de-68f29c2572d6"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setRiskSubject"</i><span style=\"color: navy\">;</span>\r\n src.performer<b> as </b><span style=\"color: maroon\">performer</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.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>careWorker.id = evaluate<span style=\"color: navy\">(</span>performer<span style=\"color: navy\">, </span>reference.replace('Practitioner/','')<span style=\"color: navy\">)</span> <i>"b162e766-dcf8-4dee-bda9-7cdb761955b8"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>careWorker.type = <span style=\"color: blue\">'CareWorker'</span> <i>"af285b09-e2e6-4f1a-9f18-ac047d19d2a6"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>careWorker.display = evaluate<span style=\"color: navy\">(</span>performer<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"c886bf26-6835-4acf-ae18-36bce9521285"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"3c2e075c-e0fc-4b26-a214-92da6ac22679"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setRiskCareWorker"</i><span style=\"color: navy\">;</span>\r\n src.extension<b> as </b><span style=\"color: maroon\">participantsExt</span><b> where </b>$this.url='https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/Extension-MODS-ParticipantCareActor'<span style=\"color: navy\"><b> -> </b></span>tgt.informed<b> as </b><span style=\"color: maroon\">informed</span><b> then</b><span style=\"color: navy\"> {\r\n</span> participantsExt.extension<b> as </b><span style=\"color: maroon\">informedParticipants</span><b> where </b>$this.url='participantRole'and$this.valueCode='informed'<b> then</b><span style=\"color: navy\"> {\r\n</span> participantsExt.extension<b> as </b><span style=\"color: maroon\">informedParticipantReferences</span><b> where </b>$this.url='participantReference'<b> then</b><span style=\"color: navy\"> {\r\n</span> informedParticipantReferences.valueReference<b> as </b><span style=\"color: maroon\">informedParticipantRef</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>informed.id = evaluate<span style=\"color: navy\">(</span>informedParticipantRef<span style=\"color: navy\">, </span>reference.replace('Practitioner/','')<span style=\"color: navy\">)</span> <i>"b7b1dc7b-80ff-4de8-9b24-5448c1458f2e"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>informed.type = <span style=\"color: blue\">'CareWorker'</span> <i>"6a1c54f4-03b6-47a5-a1e7-03030abfcf48"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>informed.display = evaluate<span style=\"color: navy\">(</span>informedParticipantRef<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"5d131e91-2838-44b5-a295-e32bc00e1203"</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><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>"setRiskInformed"</i><span style=\"color: navy\">;</span>\r\n src.extension<b> as </b><span style=\"color: maroon\">participantsExt</span><b> where </b>$this.url='https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/Extension-MODS-ParticipantCareActor'<span style=\"color: navy\"><b> -> </b></span>tgt.involved<b> as </b><span style=\"color: maroon\">involved</span><b> then</b><span style=\"color: navy\"> {\r\n</span> participantsExt.extension<b> as </b><span style=\"color: maroon\">involvedParticipants</span><b> where </b>$this.url='participantRole'and$this.valueCode='involved'<b> then</b><span style=\"color: navy\"> {\r\n</span> participantsExt.extension<b> as </b><span style=\"color: maroon\">involvedParticipantReferences</span><b> where </b>$this.url='participantReference'<b> then</b><span style=\"color: navy\"> {\r\n</span> involvedParticipantReferences.valueReference<b> as </b><span style=\"color: maroon\">involvedParticipantRef</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>involved.id = evaluate<span style=\"color: navy\">(</span>involvedParticipantRef<span style=\"color: navy\">, </span>reference.replace('Practitioner/','')<span style=\"color: navy\">)</span> <i>"d37e1582-fde7-422c-9b7c-70d4fea02837"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>involved.type = <span style=\"color: blue\">'CareWorker'</span> <i>"e861ffa9-80ce-48d9-95cc-011419c202d1"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>involved.display = evaluate<span style=\"color: navy\">(</span>involvedParticipantRef<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"d0a2674f-963b-400b-b138-67a73b17c4ce"</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><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>"setRiskInvolved"</i><span style=\"color: navy\">;</span>\r\n src.component<b> as </b><span style=\"color: maroon\">component</span><b> where </b>$this.valueCodeableConcept.coding.system='https://metadata.phase2.scip.synanetics.cloud/fhir/r4/CodeSystem/MODS-RiskCategory-1'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.category<b> as </b><span style=\"color: maroon\">category</span><b> then</b><span style=\"color: navy\"> {\r\n</span> component.valueCodeableConcept<b> as </b><span style=\"color: maroon\">vcc</span><span style=\"color: navy\">, </span>vcc.coding<b> as </b><span style=\"color: maroon\">vc</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>category.code = evaluate<span style=\"color: navy\">(</span>vc<span style=\"color: navy\">, </span>code<span style=\"color: navy\">)</span> <i>"9b2335a6-3be4-4563-b8e1-bfa092177bb8"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>category.display = evaluate<span style=\"color: navy\">(</span>vc<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"73d40e25-5a93-421d-89bb-34aed5b1d920"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"valueCodeableConcept"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"6f98a68b-6aa7-4d48-b2fa-10ea6413b454"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setRiskCategory"</i><span style=\"color: navy\">;</span>\r\n src.effectivePeriod<b> as </b><span style=\"color: maroon\">period</span><b> then</b><span style=\"color: navy\"> {\r\n</span> period.start<b> as </b><span style=\"color: maroon\">start</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.startDate = evaluate<span style=\"color: navy\">(</span>period<span style=\"color: navy\">, </span>start<span style=\"color: navy\">)</span> <i>"40ae4160-451d-4744-923a-d0863153ea74"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n period.end<b> as </b><span style=\"color: maroon\">end</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.endDate = evaluate<span style=\"color: navy\">(</span>period<span style=\"color: navy\">, </span>end<span style=\"color: navy\">)</span> <i>"a2022f14-4ca7-403e-823a-cb988e6167bf"</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>"setRiskStartEndDates"</i><span style=\"color: navy\">;</span>\r\n src.component<b> as </b><span style=\"color: maroon\">component</span><b> where </b>$this.code.coding.code='text'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.text = evaluate<span style=\"color: navy\">(</span>component<span style=\"color: navy\">, </span>valueString<span style=\"color: navy\">)</span> <i>"b343d3b9-faf8-47cf-b4e5-8e6a90cf553f"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setRiskText"</i><span style=\"color: navy\">;</span>\r\n src.component<b> as </b><span style=\"color: maroon\">component</span><b> where </b>$this.code.coding.code='triggers'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.trigger = evaluate<span style=\"color: navy\">(</span>component<span style=\"color: navy\">, </span>valueString<span style=\"color: navy\">)</span> <i>"8f0bed5b-4cf3-4274-8507-792e8265f42e"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setRiskTrigger"</i><span style=\"color: navy\">;</span>\r\n src.component<b> as </b><span style=\"color: maroon\">component</span><b> where </b>$this.code.coding.code='relapse-indicators'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.relapseIndicators = evaluate<span style=\"color: navy\">(</span>component<span style=\"color: navy\">, </span>valueString<span style=\"color: navy\">)</span> <i>"4b5d6e72-673c-42ee-8f4f-81f7ddf04a6e"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setRiskRelapseIndicators"</i><span style=\"color: navy\">;</span>\r\n src.component<b> as </b><span style=\"color: maroon\">component</span><b> where </b>$this.code.coding.code='comment'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.comment = evaluate<span style=\"color: navy\">(</span>component<span style=\"color: navy\">, </span>valueString<span style=\"color: navy\">)</span> <i>"869c06cb-21fa-4754-a9b4-e71de82961da"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setRiskComment"</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/Observation-Risk-Risk",
"version" : "0.1.0",
"name" : "ObservationRiskToRisk",
"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-RiskObservation",
"mode" : "source",
"alias" : "RiskObservation"
},
{
"url" : "https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-Risk",
"mode" : "target",
"alias" : "Risk"
}
],
"group" : [
{
"name" : "Risk",
"typeMode" : "none",
"input" : [
{
"name" : "src",
"type" : "RiskObservation",
"mode" : "source"
},
{
"name" : "tgt",
"type" : "Risk",
"mode" : "target"
}
],
"rule" : [
{
"name" : "d0e20776-22e2-411b-ab0f-ba0ae5420cd1",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "id",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "src"
},
{
"valueString" : "id"
}
]
}
]
},
{
"name" : "setDataClassName",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "meta",
"variable" : "meta"
},
{
"context" : "meta",
"contextType" : "variable",
"element" : "dataClass",
"variable" : "dataClass"
}
],
"rule" : [
{
"name" : "6ed098e3-a806-4586-b059-6b212708fb25",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "dataClass",
"contextType" : "variable",
"element" : "name",
"transform" : "copy",
"parameter" : [
{
"valueString" : "Risk"
}
]
}
]
}
]
},
{
"name" : "setRiskSubject",
"source" : [
{
"context" : "src",
"element" : "subject",
"variable" : "subject"
}
],
"rule" : [
{
"name" : "f261cd58-55e7-4dd8-a3de-68f29c2572d6",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "subjectOfCare",
"variable" : "subjectOfCare"
}
],
"rule" : [
{
"name" : "7a289f08-b9e4-48b5-acd1-bdf7a43af2d7",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "subjectOfCare",
"contextType" : "variable",
"element" : "id",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "subject"
},
{
"valueString" : "reference.replace('Patient/','')"
}
]
}
]
},
{
"name" : "3903cf49-17d0-4904-a964-f8e84f0473b2",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "subjectOfCare",
"contextType" : "variable",
"element" : "type",
"transform" : "copy",
"parameter" : [
{
"valueString" : "SubjectOfCare"
}
]
}
]
},
{
"name" : "d82ef971-9441-4e59-80e3-f627547cf630",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "subjectOfCare",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "subject"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
},
{
"name" : "setRiskCareWorker",
"source" : [
{
"context" : "src",
"min" : 1,
"max" : "1",
"element" : "performer",
"variable" : "performer"
}
],
"rule" : [
{
"name" : "3c2e075c-e0fc-4b26-a214-92da6ac22679",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "careWorker",
"variable" : "careWorker"
}
],
"rule" : [
{
"name" : "b162e766-dcf8-4dee-bda9-7cdb761955b8",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "careWorker",
"contextType" : "variable",
"element" : "id",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "performer"
},
{
"valueString" : "reference.replace('Practitioner/','')"
}
]
}
]
},
{
"name" : "af285b09-e2e6-4f1a-9f18-ac047d19d2a6",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "careWorker",
"contextType" : "variable",
"element" : "type",
"transform" : "copy",
"parameter" : [
{
"valueString" : "CareWorker"
}
]
}
]
},
{
"name" : "c886bf26-6835-4acf-ae18-36bce9521285",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "careWorker",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "performer"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
},
{
"name" : "setRiskInformed",
"source" : [
{
"context" : "src",
"element" : "extension",
"variable" : "participantsExt",
"condition" : "$this.url='https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/Extension-MODS-ParticipantCareActor'"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "informed",
"variable" : "informed"
}
],
"rule" : [
{
"name" : "extension",
"source" : [
{
"context" : "participantsExt",
"element" : "extension",
"variable" : "informedParticipants",
"condition" : "$this.url='participantRole'and$this.valueCode='informed'"
}
],
"rule" : [
{
"name" : "extension",
"source" : [
{
"context" : "participantsExt",
"element" : "extension",
"variable" : "informedParticipantReferences",
"condition" : "$this.url='participantReference'"
}
],
"rule" : [
{
"name" : "valueReference",
"source" : [
{
"context" : "informedParticipantReferences",
"element" : "valueReference",
"variable" : "informedParticipantRef"
}
],
"rule" : [
{
"name" : "b7b1dc7b-80ff-4de8-9b24-5448c1458f2e",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "informed",
"contextType" : "variable",
"element" : "id",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "informedParticipantRef"
},
{
"valueString" : "reference.replace('Practitioner/','')"
}
]
}
]
},
{
"name" : "6a1c54f4-03b6-47a5-a1e7-03030abfcf48",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "informed",
"contextType" : "variable",
"element" : "type",
"transform" : "copy",
"parameter" : [
{
"valueString" : "CareWorker"
}
]
}
]
},
{
"name" : "5d131e91-2838-44b5-a295-e32bc00e1203",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "informed",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "informedParticipantRef"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "setRiskInvolved",
"source" : [
{
"context" : "src",
"element" : "extension",
"variable" : "participantsExt",
"condition" : "$this.url='https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/Extension-MODS-ParticipantCareActor'"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "involved",
"variable" : "involved"
}
],
"rule" : [
{
"name" : "extension",
"source" : [
{
"context" : "participantsExt",
"element" : "extension",
"variable" : "involvedParticipants",
"condition" : "$this.url='participantRole'and$this.valueCode='involved'"
}
],
"rule" : [
{
"name" : "extension",
"source" : [
{
"context" : "participantsExt",
"element" : "extension",
"variable" : "involvedParticipantReferences",
"condition" : "$this.url='participantReference'"
}
],
"rule" : [
{
"name" : "valueReference",
"source" : [
{
"context" : "involvedParticipantReferences",
"element" : "valueReference",
"variable" : "involvedParticipantRef"
}
],
"rule" : [
{
"name" : "d37e1582-fde7-422c-9b7c-70d4fea02837",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "involved",
"contextType" : "variable",
"element" : "id",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "involvedParticipantRef"
},
{
"valueString" : "reference.replace('Practitioner/','')"
}
]
}
]
},
{
"name" : "e861ffa9-80ce-48d9-95cc-011419c202d1",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "involved",
"contextType" : "variable",
"element" : "type",
"transform" : "copy",
"parameter" : [
{
"valueString" : "CareWorker"
}
]
}
]
},
{
"name" : "d0a2674f-963b-400b-b138-67a73b17c4ce",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "involved",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "involvedParticipantRef"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "setRiskCategory",
"source" : [
{
"context" : "src",
"element" : "component",
"variable" : "component",
"condition" : "$this.valueCodeableConcept.coding.system='https://metadata.phase2.scip.synanetics.cloud/fhir/r4/CodeSystem/MODS-RiskCategory-1'"
}
],
"rule" : [
{
"name" : "6f98a68b-6aa7-4d48-b2fa-10ea6413b454",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "category",
"variable" : "category"
}
],
"rule" : [
{
"name" : "valueCodeableConcept",
"source" : [
{
"context" : "component",
"element" : "valueCodeableConcept",
"variable" : "vcc"
},
{
"context" : "vcc",
"element" : "coding",
"variable" : "vc"
}
],
"rule" : [
{
"name" : "9b2335a6-3be4-4563-b8e1-bfa092177bb8",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "category",
"contextType" : "variable",
"element" : "code",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "vc"
},
{
"valueString" : "code"
}
]
}
]
},
{
"name" : "73d40e25-5a93-421d-89bb-34aed5b1d920",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "category",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "vc"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "setRiskStartEndDates",
"source" : [
{
"context" : "src",
"element" : "effectivePeriod",
"variable" : "period"
}
],
"rule" : [
{
"name" : "start",
"source" : [
{
"context" : "period",
"element" : "start",
"variable" : "start"
}
],
"rule" : [
{
"name" : "40ae4160-451d-4744-923a-d0863153ea74",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "startDate",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "period"
},
{
"valueString" : "start"
}
]
}
]
}
]
},
{
"name" : "end",
"source" : [
{
"context" : "period",
"element" : "end",
"variable" : "end"
}
],
"rule" : [
{
"name" : "a2022f14-4ca7-403e-823a-cb988e6167bf",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "endDate",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "period"
},
{
"valueString" : "end"
}
]
}
]
}
]
}
]
},
{
"name" : "setRiskText",
"source" : [
{
"context" : "src",
"element" : "component",
"variable" : "component",
"condition" : "$this.code.coding.code='text'"
}
],
"rule" : [
{
"name" : "b343d3b9-faf8-47cf-b4e5-8e6a90cf553f",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "text",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "component"
},
{
"valueString" : "valueString"
}
]
}
]
}
]
},
{
"name" : "setRiskTrigger",
"source" : [
{
"context" : "src",
"element" : "component",
"variable" : "component",
"condition" : "$this.code.coding.code='triggers'"
}
],
"rule" : [
{
"name" : "8f0bed5b-4cf3-4274-8507-792e8265f42e",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "trigger",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "component"
},
{
"valueString" : "valueString"
}
]
}
]
}
]
},
{
"name" : "setRiskRelapseIndicators",
"source" : [
{
"context" : "src",
"element" : "component",
"variable" : "component",
"condition" : "$this.code.coding.code='relapse-indicators'"
}
],
"rule" : [
{
"name" : "4b5d6e72-673c-42ee-8f4f-81f7ddf04a6e",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "relapseIndicators",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "component"
},
{
"valueString" : "valueString"
}
]
}
]
}
]
},
{
"name" : "setRiskComment",
"source" : [
{
"context" : "src",
"element" : "component",
"variable" : "component",
"condition" : "$this.code.coding.code='comment'"
}
],
"rule" : [
{
"name" : "869c06cb-21fa-4754-a9b4-e71de82961da",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "comment",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "component"
},
{
"valueString" : "valueString"
}
]
}
]
}
]
}
]
}
]
}