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 |
<StructureMap xmlns="http://hl7.org/fhir">
<id value="DiagnosticReportSGHI5"/>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureMap DiagnosticReportSGHI5</b></p><a name="DiagnosticReportSGHI5"> </a><a name="hcDiagnosticReportSGHI5"> </a><pre class="fml">
<span style="color: #cc00cc">/// <b>url</b> = </span><span style="color: blue">'https://fhir.slade360.co.ke/fhir/StructureMap/DiagnosticReportSGHI5'</span>
<span style="color: #cc00cc">/// <b>name</b> = </span><span style="color: blue">'DiagnosticReportSGHI5'</span>
<span style="color: #cc00cc">/// <b>title</b> = </span><span style="color: blue">'DiagnosticReport Transforms: R4 → SGHI R5'</span>
<span style="color: #cc00cc">/// <b>status</b> = </span><span style="color: blue">'active'</span>
<b>uses</b><span style="color: navy"> "</span>http://hl7.org/fhir/4.0/StructureDefinition/DiagnosticReport<span style="color: navy">" </span><b>alias </b>DiagnosticReportR4 <b>as </b><b>source</b>
<b>uses</b><span style="color: navy"> "</span><a href="StructureDefinition-sghi-diagnosticreport.html" title="SGHI DiagnosticReport">https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-diagnosticreport</a><span style="color: navy">" </span><b>alias </b>SGHIDiagnosticReport <b>as </b><b>target</b>
<b>imports</b><span style="color: navy"> "</span>http://hl7.org/fhir/StructureMap/*4to5<span style="color: navy">"
</span>
<b>group </b>SGHIDiagnosticReport<span style="color: navy">(</span><b>source</b> <span style="color: maroon">src</span><span style="color: navy"> : </span>DiagnosticReportR4, <b>target</b> <span style="color: maroon">tgt</span><span style="color: navy"> : </span>SGHIDiagnosticReport<span style="color: navy">)</span><b> <<type+>></b><span style="color: navy"> {
</span> src.id<b> as </b><span style="color: maroon">uuid</span><span style="color: navy"><b> -> </b></span>tgt.id = <span style="color: maroon">uuid</span><span style="color: navy">;</span>
src.active<span style="color: navy"><b> -> </b></span>tgt.active<span style="color: navy">;</span>
src.language<span style="color: navy"><b> -> </b></span>tgt.language<span style="color: navy">;</span>
src<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"> {
</span> src<span style="color: navy"><b> -> </b></span>t_meta.profile = <span style="color: blue">'https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-diagnosticreport'</span> <i>"addsghiprofile"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"addtometa"</i><span style="color: navy">;</span>
src<b> where </b>text.exists().not()<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">t_text</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>t_text.status = <span style="color: blue">'generated'</span> <i>"settextstatus"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>t_text.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>
<span style="color: navy">}</span> <i>"createhardcodedtext"</i><span style="color: navy">;</span>
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">ttt</span><b> then</b><span style="color: navy"> {
</span> src.text<b> as </b><span style="color: maroon">st</span><b> then</b><span style="color: navy"> {
</span> st.status<b> as </b><span style="color: maroon">s</span><span style="color: navy"><b> -> </b></span>ttt.status = <span style="color: maroon">s</span><span style="color: navy">;</span>
st.div<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>ttt.div = <span style="color: navy">(</span>'<div xmlns=\"http://www.w3.org/1999/xhtml\"><p>' + d + '</p></div>'<span style="color: navy">)</span> <i>"wraptextinhtml"</i><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"setting text"</i><span style="color: navy">;</span>
src.id<b> as </b><span style="color: maroon">s_id</span><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">t_ident</span><b> then</b><span style="color: navy"> {
</span> s_id<b> as </b><span style="color: maroon">uuid</span><span style="color: navy"><b> -> </b></span>t_ident.value = <span style="color: maroon">uuid</span> <i>"copyid"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>t_ident.use = <span style="color: blue">'official'</span> <i>"setuse"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>t_ident.system = <span style="color: blue">'https://fhir.slade360.co.ke/fhir/CodeSystem/sghi-identifier-codesystem'</span> <i>"setsystem"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>t_ident.type = <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">t_type</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>t_type.coding = <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">t_code</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>t_code.system = <span style="color: blue">'https://fhir.slade360.co.ke/fhir/CodeSystem/sghi-identifier-codesystem'</span> <i>"typesystem"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>t_code.code = <span style="color: blue">'fhir-id'</span> <i>"typecode"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>t_code.display = <span style="color: blue">'FHIR Id'</span> <i>"typedisplay"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"initcoding"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"inittype"</i><span style="color: navy">;</span>
src.meta<b> as </b><span style="color: maroon">sm</span><b> then</b><span style="color: navy"> {
</span> sm.tag last<b> as </b><span style="color: maroon">st</span><span style="color: navy"><b> -> </b></span>t_ident.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">ta</span><b> then </b>TransformAssigner<span style="color: navy">(</span><span style="color: maroon">st</span><span style="color: navy">, </span><span style="color: maroon">ta</span><span style="color: navy">)</span><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"setting owner"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"addfhirididentifier"</i><span style="color: navy">;</span>
src.code<b> as </b><span style="color: maroon">sc</span><span style="color: navy"><b> -> </b></span>tgt.code<b> as </b><span style="color: maroon">tc</span><b> then</b><span style="color: navy"> {
</span> sc.coding<b> as </b><span style="color: maroon">scc</span><span style="color: navy"><b> -> </b></span>tc.coding = <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">tcode</span><b> then</b><span style="color: navy"> {
</span> scc.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcode.code = <b>translate</b><span style="color: navy">(</span><span style="color: maroon">d</span><span style="color: navy">, </span><span style="color: blue">'https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCServiceRequestMap'</span><span style="color: navy">, </span><span style="color: blue">'code'</span><span style="color: navy">)</span><span style="color: navy">;</span>
scc.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcode.system = <b>translate</b><span style="color: navy">(</span><span style="color: maroon">d</span><span style="color: navy">, </span><span style="color: blue">'https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCServiceRequestMap'</span><span style="color: navy">, </span><span style="color: blue">'system'</span><span style="color: navy">)</span><span style="color: navy">;</span>
scc.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcode.display = <b>translate</b><span style="color: navy">(</span><span style="color: maroon">d</span><span style="color: navy">, </span><span style="color: blue">'https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCServiceRequestMap'</span><span style="color: navy">, </span><span style="color: blue">'display'</span><span style="color: navy">)</span><span style="color: navy">;</span>
scc.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tc.text = <b>translate</b><span style="color: navy">(</span><span style="color: maroon">d</span><span style="color: navy">, </span><span style="color: blue">'https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCServiceRequestMap'</span><span style="color: navy">, </span><span style="color: blue">'display'</span><span style="color: navy">)</span><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
src.category<b> as </b><span style="color: maroon">sg</span><span style="color: navy"><b> -> </b></span>tgt.category<b> as </b><span style="color: maroon">tg</span><b> then</b><span style="color: navy"> {
</span> sg.coding<b> as </b><span style="color: maroon">sc</span><span style="color: navy"><b> -> </b></span>tg.coding<b> as </b><span style="color: maroon">tc</span><b> then </b>TransformCoding<span style="color: navy">(</span><span style="color: maroon">sc</span><span style="color: navy">, </span><span style="color: maroon">tc</span><span style="color: navy">)</span><span style="color: navy">;</span>
sg.text<span style="color: navy"><b> -> </b></span>tg.text<span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
src.subject<b> as </b><span style="color: maroon">sb</span><span style="color: navy"><b> -> </b></span>tgt.subject<b> as </b><span style="color: maroon">tb</span><b> then </b>TransformReference<span style="color: navy">(</span><span style="color: maroon">sb</span><span style="color: navy">, </span><span style="color: maroon">tb</span><span style="color: navy">)</span><span style="color: navy">;</span>
src.encounter<b> as </b><span style="color: maroon">se</span><span style="color: navy"><b> -> </b></span>tgt.encounter<b> as </b><span style="color: maroon">te</span><b> then </b>TransformReference<span style="color: navy">(</span><span style="color: maroon">se</span><span style="color: navy">, </span><span style="color: maroon">te</span><span style="color: navy">)</span><span style="color: navy">;</span>
src.performer<b> as </b><span style="color: maroon">sp</span><span style="color: navy"><b> -> </b></span>tgt.performer<b> as </b><span style="color: maroon">tp</span><b> then </b>TransformReference<span style="color: navy">(</span><span style="color: maroon">sp</span><span style="color: navy">, </span><span style="color: maroon">tp</span><span style="color: navy">)</span><span style="color: navy">;</span>
src.results<b> as </b><span style="color: maroon">sr</span><span style="color: navy"><b> -> </b></span>tgt.results<b> as </b><span style="color: maroon">tr</span><b> then </b>TransformReference<span style="color: navy">(</span><span style="color: maroon">sr</span><span style="color: navy">, </span><span style="color: maroon">tr</span><span style="color: navy">)</span><span style="color: navy">;</span>
src.basedOn<b> as </b><span style="color: maroon">sb</span><span style="color: navy"><b> -> </b></span>tgt.basedOn<b> as </b><span style="color: maroon">tb</span><b> then </b>TransformReference<span style="color: navy">(</span><span style="color: maroon">sb</span><span style="color: navy">, </span><span style="color: maroon">tb</span><span style="color: navy">)</span><span style="color: navy">;</span>
src.issued<span style="color: navy"><b> -> </b></span>tgt.issued<span style="color: navy">;</span>
src.resultsInterpreter<b> as </b><span style="color: maroon">sip</span><span style="color: navy"><b> -> </b></span>tgt.resultsInterpreter<b> as </b><span style="color: maroon">tip</span><b> then </b>TransformReference<span style="color: navy">(</span><span style="color: maroon">sip</span><span style="color: navy">, </span><span style="color: maroon">tip</span><span style="color: navy">)</span><span style="color: navy">;</span>
src.status<span style="color: navy"><b> -> </b></span>tgt.status<span style="color: navy">;</span>
src.effectiveDateTime<span style="color: navy"><b> -> </b></span>tgt.effectiveDateTime<span style="color: navy">;</span>
src<b> where </b>effectiveDateTime.exists().not()<b> then</b><span style="color: navy"> {
</span> src.issued<b> as </b><span style="color: maroon">si</span><span style="color: navy"><b> -> </b></span>tgt.effectiveDateTime = <b>cast</b><span style="color: navy">(</span><span style="color: maroon">si</span><span style="color: navy">, </span><span style="color: blue">'dateTime'</span><span style="color: navy">)</span><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"setting a effective"</i><span style="color: navy">;</span>
src.note<b> as </b><span style="color: maroon">sn</span><span style="color: navy"><b> -> </b></span>tgt.note<b> as </b><span style="color: maroon">tn</span><b> then</b><span style="color: navy"> {
</span> sn.time<span style="color: navy"><b> -> </b></span>tn.time<span style="color: navy">;</span>
sn.text<span style="color: navy"><b> -> </b></span>tn.text<span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
<span style="color: navy">}
</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"> {
</span> src.code<b> as </b><span style="color: maroon">code</span><span style="color: navy"><b> -> </b></span>tgt.reference = <b>append</b><span style="color: navy">(</span><span style="color: blue">'Organization/'</span><span style="color: navy">, </span><span style="color: maroon">code</span><span style="color: navy">)</span><span style="color: navy">;</span>
src<b> where </b>display.exists().not()<span style="color: navy"><b> -> </b></span>tgt.display = <span style="color: blue">'Unknown display'</span> <i>"setting default display"</i><span style="color: navy">;</span>
src.display<span style="color: navy"><b> -> </b></span>tgt.display<span style="color: navy">;</span>
src.code<span style="color: navy"><b> -> </b></span>tgt.id<span style="color: navy">;</span>
<span style="color: navy">}
</span><b>group </b>TransformReference<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"> {
</span> src.id<span style="color: navy"><b> -> </b></span>tgt.id<span style="color: navy">;</span>
src.reference<span style="color: navy"><b> -> </b></span>tgt.reference<span style="color: navy">;</span>
src.display<span style="color: navy"><b> -> </b></span>tgt.display<span style="color: navy">;</span>
src.text<span style="color: navy"><b> -> </b></span>tgt.display<span style="color: navy">;</span>
src<b> where </b>display.exists().not()<span style="color: navy"><b> -> </b></span>tgt.display = <span style="color: blue">'Unknown display'</span> <i>"setting display"</i><span style="color: navy">;</span>
<span style="color: navy">}
</span><b>group </b>TransformCoding<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"> {
</span> src.code<span style="color: navy"><b> -> </b></span>tgt.code<span style="color: navy">;</span>
src.display<span style="color: navy"><b> -> </b></span>tgt.display<span style="color: navy">;</span>
src<b> where </b>display.exists().not()<span style="color: navy"><b> -> </b></span>tgt.display = <span style="color: blue">'Unknown display'</span> <i>"settingdefaultdisplay"</i><span style="color: navy">;</span>
src.system<span style="color: navy"><b> -> </b></span>tgt.system<span style="color: navy">;</span>
<span style="color: navy">}
</span></pre></div>
</text>
<url
value="https://fhir.slade360.co.ke/fhir/StructureMap/DiagnosticReportSGHI5"/>
<version value="0.1.0"/>
<name value="DiagnosticReportSGHI5"/>
<title value="DiagnosticReport Transforms: R4 → SGHI R5"/>
<status value="active"/>
<date value="2025-09-17T11:42:20+00:00"/>
<publisher value="Kathurima Kimathi"/>
<contact>
<name value="Kathurima Kimathi"/>
<telecom>
<system value="url"/>
<value value="https://www.linkedin.com/in/kathurima-kimathi/"/>
</telecom>
<telecom>
<system value="email"/>
<value value="kathurimakimathi415@gmail.com"/>
</telecom>
</contact>
<contact>
<name value="Oscar John"/>
<telecom>
<system value="email"/>
<value value="oscarjohnotieno@gmail.com"/>
<use value="work"/>
</telecom>
</contact>
<contact>
<name value="Kennedy Omondi"/>
<telecom>
<system value="email"/>
<value value="kennankole@gmail.com"/>
<use value="work"/>
</telecom>
</contact>
<description value="DiagnosticReportTransformsR4SGHIR5"/>
<structure>
<url
value="http://hl7.org/fhir/4.0/StructureDefinition/DiagnosticReport"/>
<mode value="source"/>
<alias value="DiagnosticReportR4"/>
</structure>
<structure>
<url
value="https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-diagnosticreport"/>
<mode value="target"/>
<alias value="SGHIDiagnosticReport"/>
</structure>
<import value="http://hl7.org/fhir/StructureMap/*4to5"/>
<group>
<name value="SGHIDiagnosticReport"/>
<typeMode value="type-and-types"/>
<input>
<name value="src"/>
<type value="DiagnosticReportR4"/>
<mode value="source"/>
</input>
<input>
<name value="tgt"/>
<type value="SGHIDiagnosticReport"/>
<mode value="target"/>
</input>
<rule>
<name value="id"/>
<source>
<context value="src"/>
<element value="id"/>
<variable value="uuid"/>
</source>
<target>
<context value="tgt"/>
<element value="id"/>
<transform value="copy"/>
<parameter>
<valueId value="uuid"/>
</parameter>
</target>
</rule>
<rule>
<name value="active"/>
<source>
<context value="src"/>
<element value="active"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="active"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="language"/>
<source>
<context value="src"/>
<element value="language"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="language"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="addtometa"/>
<source>
<context value="src"/>
</source>
<target>
<context value="tgt"/>
<element value="meta"/>
<variable value="t_meta"/>
</target>
<rule>
<name value="addsghiprofile"/>
<source>
<context value="src"/>
</source>
<target>
<context value="t_meta"/>
<element value="profile"/>
<transform value="copy"/>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-diagnosticreport"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="createhardcodedtext"/>
<source>
<context value="src"/>
<condition value="text.exists().not()"/>
</source>
<target>
<context value="tgt"/>
<element value="text"/>
<variable value="t_text"/>
<transform value="create"/>
<parameter>
<valueString value="Narrative"/>
</parameter>
</target>
<rule>
<name value="settextstatus"/>
<source>
<context value="src"/>
</source>
<target>
<context value="t_text"/>
<element value="status"/>
<transform value="copy"/>
<parameter>
<valueString value="generated"/>
</parameter>
</target>
</rule>
<rule>
<name value="settextdiv"/>
<source>
<context value="src"/>
</source>
<target>
<context value="t_text"/>
<element value="div"/>
<transform value="copy"/>
<parameter>
<valueString
value="<div xmlns="http://www.w3.org/1999/xhtml"><h1>Generated text</h1></div>"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="setting text"/>
<source>
<context value="src"/>
</source>
<target>
<context value="tgt"/>
<element value="text"/>
<variable value="ttt"/>
<transform value="create"/>
<parameter>
<valueString value="Narrative"/>
</parameter>
</target>
<rule>
<name value="text"/>
<source>
<context value="src"/>
<element value="text"/>
<variable value="st"/>
</source>
<rule>
<name value="status"/>
<source>
<context value="st"/>
<element value="status"/>
<variable value="s"/>
</source>
<target>
<context value="ttt"/>
<element value="status"/>
<transform value="copy"/>
<parameter>
<valueId value="s"/>
</parameter>
</target>
</rule>
<rule>
<name value="wraptextinhtml"/>
<source>
<context value="st"/>
<element value="div"/>
<variable value="d"/>
</source>
<target>
<context value="ttt"/>
<element value="div"/>
<transform value="evaluate"/>
<parameter>
<valueString
value="'<div xmlns=\"http://www.w3.org/1999/xhtml\"><p>' + d + '</p></div>'"/>
</parameter>
</target>
</rule>
</rule>
</rule>
<rule>
<name value="addfhirididentifier"/>
<source>
<context value="src"/>
<element value="id"/>
<variable value="s_id"/>
</source>
<target>
<context value="tgt"/>
<element value="identifier"/>
<variable value="t_ident"/>
<transform value="create"/>
<parameter>
<valueString value="Identifier"/>
</parameter>
</target>
<rule>
<name value="copyid"/>
<source>
<context value="s_id"/>
<variable value="uuid"/>
</source>
<target>
<context value="t_ident"/>
<element value="value"/>
<transform value="copy"/>
<parameter>
<valueId value="uuid"/>
</parameter>
</target>
</rule>
<rule>
<name value="setuse"/>
<source>
<context value="src"/>
</source>
<target>
<context value="t_ident"/>
<element value="use"/>
<transform value="copy"/>
<parameter>
<valueString value="official"/>
</parameter>
</target>
</rule>
<rule>
<name value="setsystem"/>
<source>
<context value="src"/>
</source>
<target>
<context value="t_ident"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/CodeSystem/sghi-identifier-codesystem"/>
</parameter>
</target>
</rule>
<rule>
<name value="inittype"/>
<source>
<context value="src"/>
</source>
<target>
<context value="t_ident"/>
<element value="type"/>
<variable value="t_type"/>
<transform value="create"/>
<parameter>
<valueString value="CodeableConcept"/>
</parameter>
</target>
<rule>
<name value="initcoding"/>
<source>
<context value="src"/>
</source>
<target>
<context value="t_type"/>
<element value="coding"/>
<variable value="t_code"/>
<transform value="create"/>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
<rule>
<name value="typesystem"/>
<source>
<context value="src"/>
</source>
<target>
<context value="t_code"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/CodeSystem/sghi-identifier-codesystem"/>
</parameter>
</target>
</rule>
<rule>
<name value="typecode"/>
<source>
<context value="src"/>
</source>
<target>
<context value="t_code"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="fhir-id"/>
</parameter>
</target>
</rule>
<rule>
<name value="typedisplay"/>
<source>
<context value="src"/>
</source>
<target>
<context value="t_code"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="FHIR Id"/>
</parameter>
</target>
</rule>
</rule>
</rule>
<rule>
<name value="setting owner"/>
<source>
<context value="src"/>
<element value="meta"/>
<variable value="sm"/>
</source>
<rule>
<name value="tag"/>
<source>
<context value="sm"/>
<element value="tag"/>
<listMode value="last"/>
<variable value="st"/>
</source>
<target>
<context value="t_ident"/>
<element value="assigner"/>
<variable value="ta"/>
<transform value="create"/>
<parameter>
<valueString value="Reference"/>
</parameter>
</target>
<dependent>
<name value="TransformAssigner"/>
<parameter>
<valueId value="st"/>
</parameter>
<parameter>
<valueId value="ta"/>
</parameter>
</dependent>
</rule>
</rule>
</rule>
<rule>
<name value="code"/>
<source>
<context value="src"/>
<element value="code"/>
<variable value="sc"/>
</source>
<target>
<context value="tgt"/>
<element value="code"/>
<variable value="tc"/>
</target>
<rule>
<name value="coding"/>
<source>
<context value="sc"/>
<element value="coding"/>
<variable value="scc"/>
</source>
<target>
<context value="tc"/>
<element value="coding"/>
<variable value="tcode"/>
<transform value="create"/>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
<rule>
<name value="code"/>
<source>
<context value="scc"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tcode"/>
<element value="code"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCServiceRequestMap"/>
</parameter>
<parameter>
<valueString value="code"/>
</parameter>
</target>
</rule>
<rule>
<name value="code"/>
<source>
<context value="scc"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tcode"/>
<element value="system"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCServiceRequestMap"/>
</parameter>
<parameter>
<valueString value="system"/>
</parameter>
</target>
</rule>
<rule>
<name value="code"/>
<source>
<context value="scc"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tcode"/>
<element value="display"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCServiceRequestMap"/>
</parameter>
<parameter>
<valueString value="display"/>
</parameter>
</target>
</rule>
<rule>
<name value="code"/>
<source>
<context value="scc"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tc"/>
<element value="text"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCServiceRequestMap"/>
</parameter>
<parameter>
<valueString value="display"/>
</parameter>
</target>
</rule>
</rule>
</rule>
<rule>
<name value="category"/>
<source>
<context value="src"/>
<element value="category"/>
<variable value="sg"/>
</source>
<target>
<context value="tgt"/>
<element value="category"/>
<variable value="tg"/>
</target>
<rule>
<name value="coding"/>
<source>
<context value="sg"/>
<element value="coding"/>
<variable value="sc"/>
</source>
<target>
<context value="tg"/>
<element value="coding"/>
<variable value="tc"/>
</target>
<dependent>
<name value="TransformCoding"/>
<parameter>
<valueId value="sc"/>
</parameter>
<parameter>
<valueId value="tc"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="text"/>
<source>
<context value="sg"/>
<element value="text"/>
<variable value="vvv"/>
</source>
<target>
<context value="tg"/>
<element value="text"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
</rule>
<rule>
<name value="subject"/>
<source>
<context value="src"/>
<element value="subject"/>
<variable value="sb"/>
</source>
<target>
<context value="tgt"/>
<element value="subject"/>
<variable value="tb"/>
</target>
<dependent>
<name value="TransformReference"/>
<parameter>
<valueId value="sb"/>
</parameter>
<parameter>
<valueId value="tb"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="encounter"/>
<source>
<context value="src"/>
<element value="encounter"/>
<variable value="se"/>
</source>
<target>
<context value="tgt"/>
<element value="encounter"/>
<variable value="te"/>
</target>
<dependent>
<name value="TransformReference"/>
<parameter>
<valueId value="se"/>
</parameter>
<parameter>
<valueId value="te"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="performer"/>
<source>
<context value="src"/>
<element value="performer"/>
<variable value="sp"/>
</source>
<target>
<context value="tgt"/>
<element value="performer"/>
<variable value="tp"/>
</target>
<dependent>
<name value="TransformReference"/>
<parameter>
<valueId value="sp"/>
</parameter>
<parameter>
<valueId value="tp"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="results"/>
<source>
<context value="src"/>
<element value="results"/>
<variable value="sr"/>
</source>
<target>
<context value="tgt"/>
<element value="results"/>
<variable value="tr"/>
</target>
<dependent>
<name value="TransformReference"/>
<parameter>
<valueId value="sr"/>
</parameter>
<parameter>
<valueId value="tr"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="basedOn"/>
<source>
<context value="src"/>
<element value="basedOn"/>
<variable value="sb"/>
</source>
<target>
<context value="tgt"/>
<element value="basedOn"/>
<variable value="tb"/>
</target>
<dependent>
<name value="TransformReference"/>
<parameter>
<valueId value="sb"/>
</parameter>
<parameter>
<valueId value="tb"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="issued"/>
<source>
<context value="src"/>
<element value="issued"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="issued"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="resultsInterpreter"/>
<source>
<context value="src"/>
<element value="resultsInterpreter"/>
<variable value="sip"/>
</source>
<target>
<context value="tgt"/>
<element value="resultsInterpreter"/>
<variable value="tip"/>
</target>
<dependent>
<name value="TransformReference"/>
<parameter>
<valueId value="sip"/>
</parameter>
<parameter>
<valueId value="tip"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="status"/>
<source>
<context value="src"/>
<element value="status"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="status"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="effectiveDateTime"/>
<source>
<context value="src"/>
<element value="effectiveDateTime"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="effectiveDateTime"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="setting a effective"/>
<source>
<context value="src"/>
<condition value="effectiveDateTime.exists().not()"/>
</source>
<rule>
<name value="issued"/>
<source>
<context value="src"/>
<element value="issued"/>
<variable value="si"/>
</source>
<target>
<context value="tgt"/>
<element value="effectiveDateTime"/>
<transform value="cast"/>
<parameter>
<valueId value="si"/>
</parameter>
<parameter>
<valueString value="dateTime"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="note"/>
<source>
<context value="src"/>
<element value="note"/>
<variable value="sn"/>
</source>
<target>
<context value="tgt"/>
<element value="note"/>
<variable value="tn"/>
</target>
<rule>
<name value="time"/>
<source>
<context value="sn"/>
<element value="time"/>
<variable value="vvv"/>
</source>
<target>
<context value="tn"/>
<element value="time"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="text"/>
<source>
<context value="sn"/>
<element value="text"/>
<variable value="vvv"/>
</source>
<target>
<context value="tn"/>
<element value="text"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
</rule>
</group>
<group>
<name value="TransformAssigner"/>
<typeMode value="types"/>
<input>
<name value="src"/>
<mode value="source"/>
</input>
<input>
<name value="tgt"/>
<mode value="target"/>
</input>
<rule>
<name value="code"/>
<source>
<context value="src"/>
<element value="code"/>
<variable value="code"/>
</source>
<target>
<context value="tgt"/>
<element value="reference"/>
<transform value="append"/>
<parameter>
<valueString value="Organization/"/>
</parameter>
<parameter>
<valueId value="code"/>
</parameter>
</target>
</rule>
<rule>
<name value="setting default display"/>
<source>
<context value="src"/>
<condition value="display.exists().not()"/>
</source>
<target>
<context value="tgt"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Unknown display"/>
</parameter>
</target>
</rule>
<rule>
<name value="display"/>
<source>
<context value="src"/>
<element value="display"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="display"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="code"/>
<source>
<context value="src"/>
<element value="code"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="id"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
</group>
<group>
<name value="TransformReference"/>
<typeMode value="types"/>
<input>
<name value="src"/>
<mode value="source"/>
</input>
<input>
<name value="tgt"/>
<mode value="target"/>
</input>
<rule>
<name value="id"/>
<source>
<context value="src"/>
<element value="id"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="id"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="reference"/>
<source>
<context value="src"/>
<element value="reference"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="reference"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="display"/>
<source>
<context value="src"/>
<element value="display"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="display"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="text"/>
<source>
<context value="src"/>
<element value="text"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="display"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="setting display"/>
<source>
<context value="src"/>
<condition value="display.exists().not()"/>
</source>
<target>
<context value="tgt"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Unknown display"/>
</parameter>
</target>
</rule>
</group>
<group>
<name value="TransformCoding"/>
<typeMode value="types"/>
<input>
<name value="src"/>
<mode value="source"/>
</input>
<input>
<name value="tgt"/>
<mode value="target"/>
</input>
<rule>
<name value="code"/>
<source>
<context value="src"/>
<element value="code"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="code"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="display"/>
<source>
<context value="src"/>
<element value="display"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="display"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="settingdefaultdisplay"/>
<source>
<context value="src"/>
<condition value="display.exists().not()"/>
</source>
<target>
<context value="tgt"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Unknown display"/>
</parameter>
</target>
</rule>
<rule>
<name value="system"/>
<source>
<context value="src"/>
<element value="system"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="system"/>
<variable value="vvv"/>
<transform value="create"/>
</target>
<dependent>
<name value="DefaultMappingGroupAnonymousAlias"/>
<parameter>
<valueId value="vvv"/>
</parameter>
<parameter>
<valueId value="vvv"/>
</parameter>
</dependent>
</rule>
</group>
</StructureMap>