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" : "AllergyIntelorance-Allergy",
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: StructureMap AllergyIntelorance-Allergy</b></p><a name=\"AllergyIntelorance-Allergy\"> </a><a name=\"hcAllergyIntelorance-Allergy\"> </a><pre class=\"fml\">\r\n<b>map</b><span style=\"color: navy\"> "</span>https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureMap/AllergyIntelorance-Allergy<span style=\"color: navy\">" = "</span>AllergyInteloranceToAllergy<span style=\"color: navy\">"\r\n\r\n</span><b>uses</b><span style=\"color: navy\"> "</span><a href=\"StructureDefinition-MODS-AllergyIntolerance.html\" title=\"MODS Allergy Intolerance\">https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-AllergyIntolerance</a><span style=\"color: navy\">" </span><b>alias </b>AllergyIntolerance <b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> "</span><a href=\"StructureDefinition-MODS-Allergy.html\" title=\"MODS Allergy\">https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-Allergy</a><span style=\"color: navy\">" </span><b>alias </b>Allergy <b>as </b><b>target</b>\r\n\r\n<b>group </b>Allergy<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>AllergyIntolerance, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>Allergy<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>"setAllergyId"</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\">'Allergy and adverse reaction'</span> <i>"2d903f9d-7d5a-4b72-8e1e-5d467238f65e"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setDataClassName"</i><span style=\"color: navy\">;</span>\r\n src.patient<b> as </b><span style=\"color: maroon\">patient</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>patient<span style=\"color: navy\">, </span>reference.replace('Patient/','')<span style=\"color: navy\">)</span> <i>"c3e15bd0-00a1-440f-99ab-3591c9972dc0"</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>"01c35046-6882-4e15-bd42-d6cce6be915e"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>subjectOfCare.display = evaluate<span style=\"color: navy\">(</span>patient<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"0257361e-c063-478b-be6b-1ea3e9630bd6"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"ac1ea56f-fd1f-43d4-9949-6e13ac640bae"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setAllergySubject"</i><span style=\"color: navy\">;</span>\r\n src.type<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>src.allergyCode = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Coding'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">allergyCode</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>allergyCode.system = <span style=\"color: blue\">'http://hl7.org/fhir/allergy-intolerance-type'</span> <i>"3a84cbc0-dce9-4dad-ab8f-b53871fd6f82"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>allergyCode.code = evaluate<span style=\"color: navy\">(</span>src<span style=\"color: navy\">, </span>type<span style=\"color: navy\">)</span> <i>"993ae500-53eb-46e3-ba3a-ca7b28072576"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tgt.type = <b>translate</b><span style=\"color: navy\">(</span><span style=\"color: maroon\">allergyCode</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ConceptMap/MODS-FHIRAllergyIntoleranceType-1'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Coding'</span><span style=\"color: navy\">)</span> <i>"de2194d2-b28b-4c49-9952-0c66783c1e15"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"3242e075-ca20-46dc-a454-4a0eab098612"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setAllergyType"</i><span style=\"color: navy\">;</span>\r\n src.code<b> as </b><span style=\"color: maroon\">code</span><span style=\"color: navy\">, </span>code.coding<b> as </b><span style=\"color: maroon\">coding</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.causativeAgent<b> as </b><span style=\"color: maroon\">cause</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>cause.code = evaluate<span style=\"color: navy\">(</span>coding<span style=\"color: navy\">, </span>code<span style=\"color: navy\">)</span> <i>"9a14847b-45a0-411e-b68e-4abdfe274860"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>cause.display = evaluate<span style=\"color: navy\">(</span>coding<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"53915bb7-094a-413b-9aa7-ec3a8a18a951"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"48903f4d-5a8a-4e8f-8aa6-63d04da6f856"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setAllergyCause"</i><span style=\"color: navy\">;</span>\r\n src.recorder<b> as </b><span style=\"color: maroon\">recorder</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.observer<b> as </b><span style=\"color: maroon\">observer</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>observer.id = evaluate<span style=\"color: navy\">(</span>recorder<span style=\"color: navy\">, </span>reference.replace('Practitioner/','')<span style=\"color: navy\">)</span> <i>"176d8761-34db-46e8-9e15-4b543168d617"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>observer.type = <span style=\"color: blue\">'CareWorker'</span> <i>"133e4b9a-4650-4e2c-8474-621a0aefcbc1"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>observer.display = evaluate<span style=\"color: navy\">(</span>recorder<span style=\"color: navy\">, </span>display<span style=\"color: navy\">)</span> <i>"6486be64-33b9-47c8-8cf7-c634e4dee77e"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"ed4e49d8-bdc1-443a-84c8-0f005aa61692"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setAllergyObserver"</i><span style=\"color: navy\">;</span>\r\n src.onsetPeriod<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.firstExperienced = evaluate<span style=\"color: navy\">(</span>period<span style=\"color: navy\">, </span>start<span style=\"color: navy\">)</span> <i>"89d4909c-2fb6-4ec1-8121-666127717419"</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>"05e8c5ab-9060-4561-ad0a-07a9cab316ea"</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>"setAllergyStartEndDates"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tgt.comment = evaluate<span style=\"color: navy\">(</span>src<span style=\"color: navy\">, </span>note[0].text<span style=\"color: navy\">)</span> <i>"setAllergComment"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tgt.evidence = evaluate<span style=\"color: navy\">(</span>src<span style=\"color: navy\">, </span>note[1].text<span style=\"color: navy\">)</span> <i>"setAllergyEvidence"</i><span style=\"color: navy\">;</span>\r\n src.reaction<b> as </b><span style=\"color: maroon\">reactionEvent</span><span style=\"color: navy\"><b> -> </b></span>tgt.reaction<b> as </b><span style=\"color: maroon\">reaction</span><b> then</b><span style=\"color: navy\"> {\r\n</span> reactionEvent.substance<b> as </b><span style=\"color: maroon\">reactionSubstance</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>reaction.substance<b> as </b><span style=\"color: maroon\">substance</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>substance.code = evaluate<span style=\"color: navy\">(</span>reactionSubstance<span style=\"color: navy\">, </span>coding[0].code<span style=\"color: navy\">)</span> <i>"d3000f08-7d90-4690-a887-8e373e38b626"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>substance.display = evaluate<span style=\"color: navy\">(</span>reactionSubstance<span style=\"color: navy\">, </span>coding[0].display<span style=\"color: navy\">)</span> <i>"0fdd4dad-1471-49fb-aa55-a77883187d41"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"25b2b5e2-f070-456c-8d80-381545be8a73"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n reactionEvent.manifestation<b> as </b><span style=\"color: maroon\">reactionManifestation</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>reaction.description<b> as </b><span style=\"color: maroon\">description</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>description.code = evaluate<span style=\"color: navy\">(</span>reactionManifestation<span style=\"color: navy\">, </span>coding[0].code<span style=\"color: navy\">)</span> <i>"4c7b8815-0f95-4a8c-a98e-b48dc969d266"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>description.display = evaluate<span style=\"color: navy\">(</span>reactionManifestation<span style=\"color: navy\">, </span>coding[0].display<span style=\"color: navy\">)</span> <i>"7a7d236a-7cb8-49f0-9fe9-77df996434a9"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"4f1cb1fe-2a8d-45ac-83c8-b1e4622190dd"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n reactionEvent.severity<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>src.severityCode = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Coding'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">severityCode</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>severityCode.system = <span style=\"color: blue\">'http://hl7.org/fhir/reaction-event-severity'</span> <i>"c33a4e02-3b2b-42d1-98d1-22e057d3b808"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>severityCode.code = evaluate<span style=\"color: navy\">(</span>reactionEvent<span style=\"color: navy\">, </span>severity<span style=\"color: navy\">)</span> <i>"12ddb720-06f3-4d1d-84d4-edfd49ee307b"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>reaction.severity = <b>translate</b><span style=\"color: navy\">(</span><span style=\"color: maroon\">severityCode</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ConceptMap/MODS-FHIRReactionEventSeverity-1'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Coding'</span><span style=\"color: navy\">)</span> <i>"050425f7-b0ce-4e97-bd15-7f1bf08e87f9"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"199cf89f-199b-4fa4-8c06-b5fc6fea0a8c"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n reactionEvent.exposureRoute<b> as </b><span style=\"color: maroon\">reactionRoute</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>reaction.route<b> as </b><span style=\"color: maroon\">route</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>route.code = evaluate<span style=\"color: navy\">(</span>reactionRoute<span style=\"color: navy\">, </span>coding[0].code<span style=\"color: navy\">)</span> <i>"471226b7-b3a6-453e-94ab-966ba5284524"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>route.display = evaluate<span style=\"color: navy\">(</span>reactionRoute<span style=\"color: navy\">, </span>coding[0].display<span style=\"color: navy\">)</span> <i>"47a2f647-3915-445e-a3c9-bcfc56bb36f7"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"6fa106bd-64cb-433e-ab7a-6d2a0352744f"</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>"setAllergyReaction"</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/AllergyIntelorance-Allergy",
"version" : "0.1.0",
"name" : "AllergyInteloranceToAllergy",
"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-AllergyIntolerance",
"mode" : "source",
"alias" : "AllergyIntolerance"
},
{
"url" : "https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-Allergy",
"mode" : "target",
"alias" : "Allergy"
}
],
"group" : [
{
"name" : "Allergy",
"typeMode" : "none",
"input" : [
{
"name" : "src",
"type" : "AllergyIntolerance",
"mode" : "source"
},
{
"name" : "tgt",
"type" : "Allergy",
"mode" : "target"
}
],
"rule" : [
{
"name" : "setAllergyId",
"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" : "2d903f9d-7d5a-4b72-8e1e-5d467238f65e",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "dataClass",
"contextType" : "variable",
"element" : "name",
"transform" : "copy",
"parameter" : [
{
"valueString" : "Allergy and adverse reaction"
}
]
}
]
}
]
},
{
"name" : "setAllergySubject",
"source" : [
{
"context" : "src",
"element" : "patient",
"variable" : "patient"
}
],
"rule" : [
{
"name" : "ac1ea56f-fd1f-43d4-9949-6e13ac640bae",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "subjectOfCare",
"variable" : "subjectOfCare"
}
],
"rule" : [
{
"name" : "c3e15bd0-00a1-440f-99ab-3591c9972dc0",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "subjectOfCare",
"contextType" : "variable",
"element" : "id",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "patient"
},
{
"valueString" : "reference.replace('Patient/','')"
}
]
}
]
},
{
"name" : "01c35046-6882-4e15-bd42-d6cce6be915e",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "subjectOfCare",
"contextType" : "variable",
"element" : "type",
"transform" : "copy",
"parameter" : [
{
"valueString" : "SubjectOfCare"
}
]
}
]
},
{
"name" : "0257361e-c063-478b-be6b-1ea3e9630bd6",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "subjectOfCare",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "patient"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
},
{
"name" : "setAllergyType",
"source" : [
{
"context" : "src",
"element" : "type"
}
],
"rule" : [
{
"name" : "3242e075-ca20-46dc-a454-4a0eab098612",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "src",
"contextType" : "variable",
"element" : "allergyCode",
"variable" : "allergyCode",
"transform" : "create",
"parameter" : [
{
"valueString" : "Coding"
}
]
}
],
"rule" : [
{
"name" : "3a84cbc0-dce9-4dad-ab8f-b53871fd6f82",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "allergyCode",
"contextType" : "variable",
"element" : "system",
"transform" : "copy",
"parameter" : [
{
"valueString" : "http://hl7.org/fhir/allergy-intolerance-type"
}
]
}
]
},
{
"name" : "993ae500-53eb-46e3-ba3a-ca7b28072576",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "allergyCode",
"contextType" : "variable",
"element" : "code",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "src"
},
{
"valueString" : "type"
}
]
}
]
},
{
"name" : "de2194d2-b28b-4c49-9952-0c66783c1e15",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "type",
"transform" : "translate",
"parameter" : [
{
"valueId" : "allergyCode"
},
{
"valueString" : "https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ConceptMap/MODS-FHIRAllergyIntoleranceType-1"
},
{
"valueString" : "Coding"
}
]
}
]
}
]
}
]
},
{
"name" : "setAllergyCause",
"source" : [
{
"context" : "src",
"element" : "code",
"variable" : "code"
},
{
"context" : "code",
"element" : "coding",
"variable" : "coding"
}
],
"rule" : [
{
"name" : "48903f4d-5a8a-4e8f-8aa6-63d04da6f856",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "causativeAgent",
"variable" : "cause"
}
],
"rule" : [
{
"name" : "9a14847b-45a0-411e-b68e-4abdfe274860",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "cause",
"contextType" : "variable",
"element" : "code",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "coding"
},
{
"valueString" : "code"
}
]
}
]
},
{
"name" : "53915bb7-094a-413b-9aa7-ec3a8a18a951",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "cause",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "coding"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
},
{
"name" : "setAllergyObserver",
"source" : [
{
"context" : "src",
"element" : "recorder",
"variable" : "recorder"
}
],
"rule" : [
{
"name" : "ed4e49d8-bdc1-443a-84c8-0f005aa61692",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "observer",
"variable" : "observer"
}
],
"rule" : [
{
"name" : "176d8761-34db-46e8-9e15-4b543168d617",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "observer",
"contextType" : "variable",
"element" : "id",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "recorder"
},
{
"valueString" : "reference.replace('Practitioner/','')"
}
]
}
]
},
{
"name" : "133e4b9a-4650-4e2c-8474-621a0aefcbc1",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "observer",
"contextType" : "variable",
"element" : "type",
"transform" : "copy",
"parameter" : [
{
"valueString" : "CareWorker"
}
]
}
]
},
{
"name" : "6486be64-33b9-47c8-8cf7-c634e4dee77e",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "observer",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "recorder"
},
{
"valueString" : "display"
}
]
}
]
}
]
}
]
},
{
"name" : "setAllergyStartEndDates",
"source" : [
{
"context" : "src",
"element" : "onsetPeriod",
"variable" : "period"
}
],
"rule" : [
{
"name" : "start",
"source" : [
{
"context" : "period",
"element" : "start",
"variable" : "start"
}
],
"rule" : [
{
"name" : "89d4909c-2fb6-4ec1-8121-666127717419",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "firstExperienced",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "period"
},
{
"valueString" : "start"
}
]
}
]
}
]
},
{
"name" : "end",
"source" : [
{
"context" : "period",
"element" : "end",
"variable" : "end"
}
],
"rule" : [
{
"name" : "05e8c5ab-9060-4561-ad0a-07a9cab316ea",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "endDate",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "period"
},
{
"valueString" : "end"
}
]
}
]
}
]
}
]
},
{
"name" : "setAllergComment",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "comment",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "src"
},
{
"valueString" : "note[0].text"
}
]
}
]
},
{
"name" : "setAllergyEvidence",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "evidence",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "src"
},
{
"valueString" : "note[1].text"
}
]
}
]
},
{
"name" : "setAllergyReaction",
"source" : [
{
"context" : "src",
"element" : "reaction",
"variable" : "reactionEvent"
}
],
"target" : [
{
"context" : "tgt",
"contextType" : "variable",
"element" : "reaction",
"variable" : "reaction"
}
],
"rule" : [
{
"name" : "substance",
"source" : [
{
"context" : "reactionEvent",
"element" : "substance",
"variable" : "reactionSubstance"
}
],
"rule" : [
{
"name" : "25b2b5e2-f070-456c-8d80-381545be8a73",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "reaction",
"contextType" : "variable",
"element" : "substance",
"variable" : "substance"
}
],
"rule" : [
{
"name" : "d3000f08-7d90-4690-a887-8e373e38b626",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "substance",
"contextType" : "variable",
"element" : "code",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "reactionSubstance"
},
{
"valueString" : "coding[0].code"
}
]
}
]
},
{
"name" : "0fdd4dad-1471-49fb-aa55-a77883187d41",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "substance",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "reactionSubstance"
},
{
"valueString" : "coding[0].display"
}
]
}
]
}
]
}
]
},
{
"name" : "manifestation",
"source" : [
{
"context" : "reactionEvent",
"min" : 1,
"max" : "1",
"element" : "manifestation",
"variable" : "reactionManifestation"
}
],
"rule" : [
{
"name" : "4f1cb1fe-2a8d-45ac-83c8-b1e4622190dd",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "reaction",
"contextType" : "variable",
"element" : "description",
"variable" : "description"
}
],
"rule" : [
{
"name" : "4c7b8815-0f95-4a8c-a98e-b48dc969d266",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "description",
"contextType" : "variable",
"element" : "code",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "reactionManifestation"
},
{
"valueString" : "coding[0].code"
}
]
}
]
},
{
"name" : "7a7d236a-7cb8-49f0-9fe9-77df996434a9",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "description",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "reactionManifestation"
},
{
"valueString" : "coding[0].display"
}
]
}
]
}
]
}
]
},
{
"name" : "severity",
"source" : [
{
"context" : "reactionEvent",
"element" : "severity"
}
],
"rule" : [
{
"name" : "199cf89f-199b-4fa4-8c06-b5fc6fea0a8c",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "src",
"contextType" : "variable",
"element" : "severityCode",
"variable" : "severityCode",
"transform" : "create",
"parameter" : [
{
"valueString" : "Coding"
}
]
}
],
"rule" : [
{
"name" : "c33a4e02-3b2b-42d1-98d1-22e057d3b808",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "severityCode",
"contextType" : "variable",
"element" : "system",
"transform" : "copy",
"parameter" : [
{
"valueString" : "http://hl7.org/fhir/reaction-event-severity"
}
]
}
]
},
{
"name" : "12ddb720-06f3-4d1d-84d4-edfd49ee307b",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "severityCode",
"contextType" : "variable",
"element" : "code",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "reactionEvent"
},
{
"valueString" : "severity"
}
]
}
]
},
{
"name" : "050425f7-b0ce-4e97-bd15-7f1bf08e87f9",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "reaction",
"contextType" : "variable",
"element" : "severity",
"transform" : "translate",
"parameter" : [
{
"valueId" : "severityCode"
},
{
"valueString" : "https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ConceptMap/MODS-FHIRReactionEventSeverity-1"
},
{
"valueString" : "Coding"
}
]
}
]
}
]
}
]
},
{
"name" : "exposureRoute",
"source" : [
{
"context" : "reactionEvent",
"element" : "exposureRoute",
"variable" : "reactionRoute"
}
],
"rule" : [
{
"name" : "6fa106bd-64cb-433e-ab7a-6d2a0352744f",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "reaction",
"contextType" : "variable",
"element" : "route",
"variable" : "route"
}
],
"rule" : [
{
"name" : "471226b7-b3a6-453e-94ab-966ba5284524",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "route",
"contextType" : "variable",
"element" : "code",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "reactionRoute"
},
{
"valueString" : "coding[0].code"
}
]
}
]
},
{
"name" : "47a2f647-3915-445e-a3c9-bcfc56bb36f7",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "route",
"contextType" : "variable",
"element" : "display",
"transform" : "evaluate",
"parameter" : [
{
"valueId" : "reactionRoute"
},
{
"valueString" : "coding[0].display"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}