SGHI FHIR Profile Implementation Guide
0.1.0 - ci-build
SGHI FHIR Profile Implementation Guide, published by Kathurima Kimathi. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/savannahghi/sil_fhir_profile_ig/ and changes regularly. See the Directory of published versions
Active as of 2025-09-17 |
{
"resourceType" : "StructureMap",
"id" : "Encounter4toSGHI5",
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: StructureMap Encounter4toSGHI5</b></p><a name=\"Encounter4toSGHI5\"> </a><a name=\"hcEncounter4toSGHI5\"> </a><pre class=\"fml\">\r\n<span style=\"color: #cc00cc\">/// <b>url</b> = </span><span style=\"color: blue\">'https://fhir.slade360.co.ke/fhir/StructureMap/Encounter4toSGHI5'</span>\r\n<span style=\"color: #cc00cc\">/// <b>name</b> = </span><span style=\"color: blue\">'Encounter4toSGHI5'</span>\r\n<span style=\"color: #cc00cc\">/// <b>title</b> = </span><span style=\"color: blue\">'Encounter Transforms: R4 → SGHI R5'</span>\r\n<span style=\"color: #cc00cc\">/// <b>status</b> = </span><span style=\"color: blue\">'active'</span>\r\n\r\n<b>uses</b><span style=\"color: navy\"> "</span>http://hl7.org/fhir/4.0/StructureDefinition/Encounter<span style=\"color: navy\">" </span><b>alias </b>EncounterR4 <b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> "</span><a href=\"StructureDefinition-sghi-encounter.html\" title=\"SGHI Encounter\">https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-encounter</a><span style=\"color: navy\">" </span><b>alias </b>SGHIEncounter <b>as </b><b>target</b>\r\n\r\n<b>imports</b><span style=\"color: navy\"> "</span>http://hl7.org/fhir/StructureMap/*4to5<span style=\"color: navy\">"\r\n</span>\r\n<b>group </b>SGHIEncounter<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>EncounterR4, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>SGHIEncounter<span style=\"color: navy\">)</span><b> extends </b>DomainResource<b> <<type+>></b><span style=\"color: navy\"> {\r\n</span> src.id<span style=\"color: navy\"><b> -> </b></span>tgt.id<span style=\"color: navy\">;</span>\r\n src.active<span style=\"color: navy\"><b> -> </b></span>tgt.active = <span style=\"color: blue\">'true'</span><span style=\"color: navy\">;</span>\r\n src.language<span style=\"color: navy\"><b> -> </b></span>tgt.language<span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tgt.text = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Narrative'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">tgt_n</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt_n.status = <span style=\"color: blue\">'generated'</span> <i>"settextstatus"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tgt_n.div = <span style=\"color: blue\">'<div xmlns=\\"http://www.w3.org/1999/xhtml\\"><h1>Generated text</h1></div>'</span> <i>"settextdiv"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"createhardcodedtext"</i><span style=\"color: navy\">;</span>\r\n src<b> as </b><span style=\"color: maroon\">sc</span><b> where </b>identifier.exists().not()<span style=\"color: navy\"><b> -> </b></span>tgt.identifier = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Identifier'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">tt_id</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src.id<b> as </b><span style=\"color: maroon\">uuid</span><span style=\"color: navy\"><b> -> </b></span>tt_id.value = <span style=\"color: maroon\">uuid</span> <i>"creating id"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tt_id.use = <span style=\"color: blue\">'official'</span> <i>"creating use"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tt_id.type<b> as </b><span style=\"color: maroon\">ty</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>ty.coding = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'CodeableConcept'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">ty_c</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>ty_c.system = <span style=\"color: blue\">'https://fhir.slade360.co.ke/fhir/CodeSystem/sghi-identifier-codesystem'</span> <i>"creating coding"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>ty_c.code = <span style=\"color: blue\">'fhir-id'</span> <i>"creating code"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>ty_c.display = <span style=\"color: blue\">'FHIR Id'</span> <i>"creating display"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"creating identifier type"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tt_id.system = <span style=\"color: blue\">'https://fhir.slade360.co.ke/fhir/CodeSystem/sghi-identifier-codesystem'</span> <i>"creating system"</i><span style=\"color: navy\">;</span>\r\n src.serviceProvider<b> as </b><span style=\"color: maroon\">sp</span><span style=\"color: navy\"><b> -> </b></span>tt_id.assigner = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Reference'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">t_assigner</span><b> then</b><span style=\"color: navy\"> {\r\n</span> sp.reference<span style=\"color: navy\"><b> -> </b></span>t_assigner.reference<span style=\"color: navy\">;</span>\r\n sp.display<span style=\"color: navy\"><b> -> </b></span>t_assigner.display<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>"creating identifier type"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"creating identifier"</i><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">Create identifier</span>\r\n src.episodeOfCare<b> as </b><span style=\"color: maroon\">se</span><span style=\"color: navy\"><b> -> </b></span>tgt.episodeOfCare = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Reference'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">te</span><b> then</b><span style=\"color: navy\"> {\r\n</span> se.reference<span style=\"color: navy\"><b> -> </b></span>te.reference<span style=\"color: navy\">;</span>\r\n se.id<span style=\"color: navy\"><b> -> </b></span>te.id<span style=\"color: navy\">;</span>\r\n se.display<b> where </b>display.exists()<span style=\"color: navy\"><b> -> </b></span>te.display<span style=\"color: navy\">;</span>\r\n src.episodeOfCare<b> where </b>display.exists().not()<span style=\"color: navy\"><b> -> </b></span>te.display = <span style=\"color: blue\">'Encounter'</span><span style=\"color: navy\">;</span>\r\n se.display<span style=\"color: navy\"><b> -> </b></span>te.display<span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n src.status<span style=\"color: navy\"><b> -> </b></span>tgt.status<span style=\"color: navy\">;</span>\r\n src<b> where </b>status = 'finished'<b> then</b><span style=\"color: navy\"> {\r\n</span> src<span style=\"color: navy\"><b> -> </b></span>tgt.status = <span style=\"color: blue\">'completed'</span> <i>"setting R5 status"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"setting R5 status in target"</i><span style=\"color: navy\">;</span>\r\n src<span style=\"color: navy\"><b> -> </b></span>tgt.class<b> as </b><span style=\"color: maroon\">t_c</span><b> then</b><span style=\"color: navy\"> {\r\n</span> src.class<b> as </b><span style=\"color: maroon\">sc</span><span style=\"color: navy\"><b> -> </b></span>t_c.coding = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'CodeableConcept'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">tt</span><b> then </b>TransformEncounterClass<span style=\"color: navy\">(</span><span style=\"color: maroon\">sc</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">tt</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"translate coding to codeableconcept"</i><span style=\"color: navy\">;</span>\r\n src.serviceProvider<span style=\"color: navy\"><b> -> </b></span>tgt.serviceProvider<span style=\"color: navy\">;</span>\r\n src.meta<b> as </b><span style=\"color: maroon\">s_meta</span><span style=\"color: navy\"><b> -> </b></span>tgt.meta<b> as </b><span style=\"color: maroon\">t_meta</span><b> then</b><span style=\"color: navy\"> {\r\n</span> s_meta.lastUpdated<span style=\"color: navy\"><b> -> </b></span>t_meta.lastUpdated<span style=\"color: navy\">;</span>\r\n s_meta.language<span style=\"color: navy\"><b> -> </b></span>t_meta.language<span style=\"color: navy\">;</span>\r\n s_meta.tags<span style=\"color: navy\"><b> -> </b></span>t_meta.tags<span style=\"color: navy\">;</span>\r\n src.meta<b> where </b>profile.exists().not()<span style=\"color: navy\"><b> -> </b></span>t_meta.profile = <span style=\"color: blue\">'https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-encounter'</span> <i>"setprofileinmeta"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"set profile in meta"</i><span style=\"color: navy\">;</span>\r\n src.period<span style=\"color: navy\"><b> -> </b></span>tgt.actualPeriod<span style=\"color: navy\">;</span>\r\n src.subject<span style=\"color: navy\"><b> -> </b></span>tgt.subject<span style=\"color: navy\">;</span>\r\n src.episodeOfcare<span style=\"color: navy\"><b> -> </b></span>tgt.episodeOfcare<span style=\"color: navy\">;</span>\r\n src.subject<b> as </b><span style=\"color: maroon\">sb</span><span style=\"color: navy\"><b> -> </b></span>tgt.participant<b> as </b><span style=\"color: maroon\">tb</span><b> then</b><span style=\"color: navy\"> {\r\n</span> sb<span style=\"color: navy\"><b> -> </b></span>tb.actor = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Reference'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">ar</span><b> then</b><span style=\"color: navy\"> {\r\n</span> sb.reference<span style=\"color: navy\"><b> -> </b></span>ar.reference<span style=\"color: navy\">;</span>\r\n sb.display<span style=\"color: navy\"><b> -> </b></span>ar.display<span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"set actor from subject"</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><b>group </b>TransformAssigner<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span>, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\">)</span><b> <<types>></b><span style=\"color: navy\"> {\r\n</span> src.reference<span style=\"color: navy\"><b> -> </b></span>tgt.reference<span style=\"color: navy\">;</span>\r\n src.display<span style=\"color: navy\"><b> -> </b></span>tgt.display<span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>TransformEncounterClass<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span>, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\">)</span><b> <<types>></b><span style=\"color: navy\"> {\r\n</span> src.code<span style=\"color: navy\"><b> -> </b></span>tgt.code<span style=\"color: navy\">;</span>\r\n src.display<span style=\"color: navy\"><b> -> </b></span>tgt.display<span style=\"color: navy\">;</span>\r\n src.system<span style=\"color: navy\"><b> -> </b></span>tgt.system<span style=\"color: navy\">;</span>\r\n src.userSelected<span style=\"color: navy\"><b> -> </b></span>tgt.userSelected<span style=\"color: navy\">;</span>\r\n src.version<span style=\"color: navy\"><b> -> </b></span>tgt.version<span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span></pre></div>"
},
"url" : "https://fhir.slade360.co.ke/fhir/StructureMap/Encounter4toSGHI5",
"version" : "0.1.0",
"name" : "Encounter4toSGHI5",
"title" : "Encounter Transforms: R4 → SGHI R5",
"status" : "active",
"date" : "2025-09-17T11:42:20+00:00",
"publisher" : "Kathurima Kimathi",
"contact" : [
{
"name" : "Kathurima Kimathi",
"telecom" : [
{
"system" : "url",
"value" : "https://www.linkedin.com/in/kathurima-kimathi/"
},
{
"system" : "email",
"value" : "kathurimakimathi415@gmail.com"
}
]
},
{
"name" : "Oscar John",
"telecom" : [
{
"system" : "email",
"value" : "oscarjohnotieno@gmail.com",
"use" : "work"
}
]
},
{
"name" : "Kennedy Omondi",
"telecom" : [
{
"system" : "email",
"value" : "kennankole@gmail.com",
"use" : "work"
}
]
}
],
"description" : "EncounterTransformsR4SGHIR5",
"structure" : [
{
"url" : "http://hl7.org/fhir/4.0/StructureDefinition/Encounter",
"mode" : "source",
"alias" : "EncounterR4"
},
{
"url" : "https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-encounter",
"mode" : "target",
"alias" : "SGHIEncounter"
}
],
"import" : [
"http://hl7.org/fhir/StructureMap/*4to5"
],
"group" : [
{
"name" : "SGHIEncounter",
"extends" : "DomainResource",
"typeMode" : "type-and-types",
"input" : [
{
"name" : "src",
"type" : "EncounterR4",
"mode" : "source"
},
{
"name" : "tgt",
"type" : "SGHIEncounter",
"mode" : "target"
}
],
"rule" : [
{
"name" : "id",
"source" : [
{
"context" : "src",
"element" : "id",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "id",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "active",
"source" : [
{
"context" : "src",
"element" : "active"
}
],
"target" : [
{
"context" : "tgt",
"element" : "active",
"transform" : "copy",
"parameter" : [
{
"valueString" : "true"
}
]
}
]
},
{
"name" : "language",
"source" : [
{
"context" : "src",
"element" : "language",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "language",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "createhardcodedtext",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"element" : "text",
"variable" : "tgt_n",
"transform" : "create",
"parameter" : [
{
"valueString" : "Narrative"
}
]
}
],
"rule" : [
{
"name" : "settextstatus",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt_n",
"element" : "status",
"transform" : "copy",
"parameter" : [
{
"valueString" : "generated"
}
]
}
]
},
{
"name" : "settextdiv",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt_n",
"element" : "div",
"transform" : "copy",
"parameter" : [
{
"valueString" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><h1>Generated text</h1></div>"
}
]
}
]
}
]
},
{
"name" : "creating identifier",
"source" : [
{
"context" : "src",
"variable" : "sc",
"condition" : "identifier.exists().not()"
}
],
"target" : [
{
"context" : "tgt",
"element" : "identifier",
"variable" : "tt_id",
"transform" : "create",
"parameter" : [
{
"valueString" : "Identifier"
}
]
}
],
"rule" : [
{
"name" : "creating id",
"source" : [
{
"context" : "src",
"element" : "id",
"variable" : "uuid"
}
],
"target" : [
{
"context" : "tt_id",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "uuid"
}
]
}
]
},
{
"name" : "creating use",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tt_id",
"element" : "use",
"transform" : "copy",
"parameter" : [
{
"valueString" : "official"
}
]
}
]
},
{
"name" : "creating identifier type",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tt_id",
"element" : "type",
"variable" : "ty"
}
],
"rule" : [
{
"name" : "creating identifier type",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "ty",
"element" : "coding",
"variable" : "ty_c",
"transform" : "create",
"parameter" : [
{
"valueString" : "CodeableConcept"
}
]
}
],
"rule" : [
{
"name" : "creating coding",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "ty_c",
"element" : "system",
"transform" : "copy",
"parameter" : [
{
"valueString" : "https://fhir.slade360.co.ke/fhir/CodeSystem/sghi-identifier-codesystem"
}
]
}
]
},
{
"name" : "creating code",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "ty_c",
"element" : "code",
"transform" : "copy",
"parameter" : [
{
"valueString" : "fhir-id"
}
]
}
]
},
{
"name" : "creating display",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "ty_c",
"element" : "display",
"transform" : "copy",
"parameter" : [
{
"valueString" : "FHIR Id"
}
]
}
]
}
]
},
{
"name" : "creating system",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tt_id",
"element" : "system",
"transform" : "copy",
"parameter" : [
{
"valueString" : "https://fhir.slade360.co.ke/fhir/CodeSystem/sghi-identifier-codesystem"
}
]
}
]
},
{
"name" : "serviceProvider",
"source" : [
{
"context" : "src",
"element" : "serviceProvider",
"variable" : "sp"
}
],
"target" : [
{
"context" : "tt_id",
"element" : "assigner",
"variable" : "t_assigner",
"transform" : "create",
"parameter" : [
{
"valueString" : "Reference"
}
]
}
],
"rule" : [
{
"name" : "reference",
"source" : [
{
"context" : "sp",
"element" : "reference",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "t_assigner",
"element" : "reference",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "display",
"source" : [
{
"context" : "sp",
"element" : "display",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "t_assigner",
"element" : "display",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
}
]
}
]
}
],
"documentation" : "Create identifier"
},
{
"name" : "episodeOfCare",
"source" : [
{
"context" : "src",
"element" : "episodeOfCare",
"variable" : "se"
}
],
"target" : [
{
"context" : "tgt",
"element" : "episodeOfCare",
"variable" : "te",
"transform" : "create",
"parameter" : [
{
"valueString" : "Reference"
}
]
}
],
"rule" : [
{
"name" : "reference",
"source" : [
{
"context" : "se",
"element" : "reference",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "te",
"element" : "reference",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "id",
"source" : [
{
"context" : "se",
"element" : "id",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "te",
"element" : "id",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "display",
"source" : [
{
"context" : "se",
"element" : "display",
"variable" : "vvv",
"condition" : "display.exists()"
}
],
"target" : [
{
"context" : "te",
"element" : "display",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "episodeOfCare",
"source" : [
{
"context" : "src",
"element" : "episodeOfCare",
"condition" : "display.exists().not()"
}
],
"target" : [
{
"context" : "te",
"element" : "display",
"transform" : "copy",
"parameter" : [
{
"valueString" : "Encounter"
}
]
}
]
},
{
"name" : "display",
"source" : [
{
"context" : "se",
"element" : "display",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "te",
"element" : "display",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
}
]
},
{
"name" : "status",
"source" : [
{
"context" : "src",
"element" : "status",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "status",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "setting R5 status in target",
"source" : [
{
"context" : "src",
"condition" : "status = 'finished'"
}
],
"rule" : [
{
"name" : "setting R5 status",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"element" : "status",
"transform" : "copy",
"parameter" : [
{
"valueString" : "completed"
}
]
}
]
}
]
},
{
"name" : "translate coding to codeableconcept",
"source" : [
{
"context" : "src"
}
],
"target" : [
{
"context" : "tgt",
"element" : "class",
"variable" : "t_c"
}
],
"rule" : [
{
"name" : "class",
"source" : [
{
"context" : "src",
"element" : "class",
"variable" : "sc"
}
],
"target" : [
{
"context" : "t_c",
"element" : "coding",
"variable" : "tt",
"transform" : "create",
"parameter" : [
{
"valueString" : "CodeableConcept"
}
]
}
],
"dependent" : [
{
"name" : "TransformEncounterClass",
"parameter" : [
{
"valueId" : "sc"
},
{
"valueId" : "tt"
}
]
}
]
}
]
},
{
"name" : "serviceProvider",
"source" : [
{
"context" : "src",
"element" : "serviceProvider",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "serviceProvider",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "set profile in meta",
"source" : [
{
"context" : "src",
"element" : "meta",
"variable" : "s_meta"
}
],
"target" : [
{
"context" : "tgt",
"element" : "meta",
"variable" : "t_meta"
}
],
"rule" : [
{
"name" : "lastUpdated",
"source" : [
{
"context" : "s_meta",
"element" : "lastUpdated",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "t_meta",
"element" : "lastUpdated",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "language",
"source" : [
{
"context" : "s_meta",
"element" : "language",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "t_meta",
"element" : "language",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "tags",
"source" : [
{
"context" : "s_meta",
"element" : "tags",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "t_meta",
"element" : "tags",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "setprofileinmeta",
"source" : [
{
"context" : "src",
"element" : "meta",
"condition" : "profile.exists().not()"
}
],
"target" : [
{
"context" : "t_meta",
"element" : "profile",
"transform" : "copy",
"parameter" : [
{
"valueString" : "https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-encounter"
}
]
}
]
}
]
},
{
"name" : "period",
"source" : [
{
"context" : "src",
"element" : "period",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "actualPeriod",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "subject",
"source" : [
{
"context" : "src",
"element" : "subject",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "subject",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "episodeOfcare",
"source" : [
{
"context" : "src",
"element" : "episodeOfcare",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "episodeOfcare",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "subject",
"source" : [
{
"context" : "src",
"element" : "subject",
"variable" : "sb"
}
],
"target" : [
{
"context" : "tgt",
"element" : "participant",
"variable" : "tb"
}
],
"rule" : [
{
"name" : "set actor from subject",
"source" : [
{
"context" : "sb"
}
],
"target" : [
{
"context" : "tb",
"element" : "actor",
"variable" : "ar",
"transform" : "create",
"parameter" : [
{
"valueString" : "Reference"
}
]
}
],
"rule" : [
{
"name" : "reference",
"source" : [
{
"context" : "sb",
"element" : "reference",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "ar",
"element" : "reference",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "display",
"source" : [
{
"context" : "sb",
"element" : "display",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "ar",
"element" : "display",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "TransformAssigner",
"typeMode" : "types",
"input" : [
{
"name" : "src",
"mode" : "source"
},
{
"name" : "tgt",
"mode" : "target"
}
],
"rule" : [
{
"name" : "reference",
"source" : [
{
"context" : "src",
"element" : "reference",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "reference",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "display",
"source" : [
{
"context" : "src",
"element" : "display",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "display",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
}
]
},
{
"name" : "TransformEncounterClass",
"typeMode" : "types",
"input" : [
{
"name" : "src",
"mode" : "source"
},
{
"name" : "tgt",
"mode" : "target"
}
],
"rule" : [
{
"name" : "code",
"source" : [
{
"context" : "src",
"element" : "code",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "code",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "display",
"source" : [
{
"context" : "src",
"element" : "display",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "display",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "system",
"source" : [
{
"context" : "src",
"element" : "system",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "system",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "userSelected",
"source" : [
{
"context" : "src",
"element" : "userSelected",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "userSelected",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "version",
"source" : [
{
"context" : "src",
"element" : "version",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "version",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
}
]
}
]
}