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="ServiceRequestSGHI5"/>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureMap ServiceRequestSGHI5</b></p><a name="ServiceRequestSGHI5"> </a><a name="hcServiceRequestSGHI5"> </a><pre class="fml">
<span style="color: #cc00cc">/// <b>url</b> = </span><span style="color: blue">'https://fhir.slade360.co.ke/fhir/StructureMap/ServiceRequestSGHI5'</span>
<span style="color: #cc00cc">/// <b>name</b> = </span><span style="color: blue">'ServiceRequestSGHI5'</span>
<span style="color: #cc00cc">/// <b>title</b> = </span><span style="color: blue">'ServiceRequest 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/ServiceRequest<span style="color: navy">" </span><b>alias </b>ServiceRequestR4 <b>as </b><b>source</b>
<b>uses</b><span style="color: navy"> "</span><a href="StructureDefinition-sghi-servicerequest.html" title="SGHI ServiceRequest">https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-servicerequest</a><span style="color: navy">" </span><b>alias </b>SGHIServiceRequest <b>as </b><b>target</b>
<b>group </b>SGHIServiceRequest<span style="color: navy">(</span><b>source</b> <span style="color: maroon">src</span><span style="color: navy"> : </span>ServiceRequestR4, <b>target</b> <span style="color: maroon">tgt</span><span style="color: navy"> : </span>SGHIServiceRequest<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: blue">'true'</span><span style="color: navy">;</span>
src.language<b> as </b><span style="color: maroon">sl</span><span style="color: navy"><b> -> </b></span>tgt.language = <span style="color: maroon">sl</span><span style="color: navy">;</span>
src.authoredOn<b> as </b><span style="color: maroon">sa</span><span style="color: navy"><b> -> </b></span>tgt.authoredOn = <span style="color: maroon">sa</span><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">tgt_n</span><b> then</b><span style="color: navy"> {
</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>
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>
<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> <span style="color: navy">// </span><span style="color: green">Create identifier</span>
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"> {
</span> s_meta.lastUpdated<b> as </b><span style="color: maroon">sl</span><span style="color: navy"><b> -> </b></span>t_meta.lastUpdated = <span style="color: maroon">sl</span><span style="color: navy">;</span>
s_meta.language<b> as </b><span style="color: maroon">sl</span><span style="color: navy"><b> -> </b></span>t_meta.language = <span style="color: maroon">sl</span><span style="color: navy">;</span>
s_meta.tags<b> as </b><span style="color: maroon">st</span><span style="color: navy"><b> -> </b></span>t_meta.tags = <span style="color: maroon">st</span><span style="color: navy">;</span>
src.meta<b> as </b><span style="color: maroon">sp</span><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-servicerequest'</span> <i>"setprofileinmeta"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"set profile in meta"</i><span style="color: navy">;</span>
src<b> where </b>status != 'finished'<b> then</b><span style="color: navy"> {
</span> src.status<b> as </b><span style="color: maroon">sd</span><span style="color: navy"><b> -> </b></span>tgt.status = <span style="color: maroon">sd</span><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"coppying status"</i><span style="color: navy">;</span>
src<b> where </b>status = 'finished'<span style="color: navy"><b> -> </b></span>tgt.status = <span style="color: blue">'completed'</span> <i>"settingR5status"</i><span style="color: navy">;</span>
src.dateTime<b> as </b><span style="color: maroon">sd</span><span style="color: navy"><b> -> </b></span>tgt.date = <span style="color: maroon">sd</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.category<b> as </b><span style="color: maroon">scat</span><span style="color: navy"><b> -> </b></span>tgt.category<b> as </b><span style="color: maroon">tcat</span><b> then</b><span style="color: navy"> {
</span> scat.coding<b> as </b><span style="color: maroon">d</span><b> where </b>d.system.exists().not()<span style="color: navy"><b> -> </b></span>tcat.coding = <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/CIELtoFHIRCategoryCodeBindingsMap'</span><span style="color: navy">, </span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><span style="color: navy">;</span>
scat.coding<b> as </b><span style="color: maroon">d</span><b> where </b>d.system.exists()<span style="color: navy"><b> -> </b></span>tcat.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">tcoding</span><b> then</b><span style="color: navy"> {
</span> d.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcoding.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/CIELtoFHIRCategoryCodeBindingsMap'</span><span style="color: navy">, </span><span style="color: blue">'code'</span><span style="color: navy">)</span><span style="color: navy">;</span>
d.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcoding.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/CIELtoFHIRCategoryCodeBindingsMap'</span><span style="color: navy">, </span><span style="color: blue">'system'</span><span style="color: navy">)</span><span style="color: navy">;</span>
d.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcoding.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/CIELtoFHIRCategoryCodeBindingsMap'</span><span style="color: navy">, </span><span style="color: blue">'display'</span><span style="color: navy">)</span><span style="color: navy">;</span>
d.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcat.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/CIELtoFHIRCategoryCodeBindingsMap'</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.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.requester<b> as </b><span style="color: maroon">sr</span><span style="color: navy"><b> -> </b></span>tgt.requester<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.subject<b> as </b><span style="color: maroon">sbb</span><span style="color: navy"><b> -> </b></span>tgt.subject<b> as </b><span style="color: maroon">tbb</span><b> then </b>TransformReference<span style="color: navy">(</span><span style="color: maroon">sbb</span><span style="color: navy">, </span><span style="color: maroon">tbb</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<b> where </b>performer.exists().not()<b> then</b><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">sp</span><span style="color: navy"><b> -> </b></span>tgt.performer = <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">tp</span><b> then </b>TransformAssigner<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>
<span style="color: navy">}</span> <i>"setting performer"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"settingperformer"</i><span style="color: navy">;</span>
src<b> where </b>requester.exists().not()<b> then</b><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">sr</span><span style="color: navy"><b> -> </b></span>tgt.requester = <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">tr</span><b> then </b>TransformAssigner<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>
<span style="color: navy">}</span> <i>"setting requester"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"settingrequester"</i><span style="color: navy">;</span>
src.priority<b> as </b><span style="color: maroon">sp</span><span style="color: navy"><b> -> </b></span>tgt.priority = <span style="color: maroon">sp</span><span style="color: navy">;</span>
src.intent<b> as </b><span style="color: maroon">sti</span><span style="color: navy"><b> -> </b></span>tgt.intent = <span style="color: maroon">sti</span><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>tgt.code = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableReference'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">trf</span><b> then</b><span style="color: navy"> {
</span> src.code<b> as </b><span style="color: maroon">scc</span><span style="color: navy"><b> -> </b></span>trf.concept = <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">tcc</span><b> then </b>TranslateCoding<span style="color: navy">(</span><span style="color: maroon">scc</span><span style="color: navy">, </span><span style="color: maroon">tcc</span><span style="color: navy">)</span><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"translate codeableConcept to CodeableReference in R5"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>tgt.reason = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableReference'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">tr</span><b> then</b><span style="color: navy"> {
</span> src.code<b> as </b><span style="color: maroon">scc</span><span style="color: navy"><b> -> </b></span>tr.concept = <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">tcc</span><b> then </b>TranslateCoding<span style="color: navy">(</span><span style="color: maroon">scc</span><span style="color: navy">, </span><span style="color: maroon">tcc</span><span style="color: navy">)</span><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"setting reason"</i><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<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tgt.display = <span style="color: maroon">d</span><span style="color: navy">;</span>
src.code<b> as </b><span style="color: maroon">dc</span><span style="color: navy"><b> -> </b></span>tgt.id = <span style="color: maroon">dc</span><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<b> as </b><span style="color: maroon">sid</span><span style="color: navy"><b> -> </b></span>tgt.id = <span style="color: maroon">sid</span><span style="color: navy">;</span>
src.reference<b> as </b><span style="color: maroon">sf</span><span style="color: navy"><b> -> </b></span>tgt.reference = <span style="color: maroon">sf</span><span style="color: navy">;</span>
src.display<b> as </b><span style="color: maroon">sd</span><span style="color: navy"><b> -> </b></span>tgt.display = <span style="color: maroon">sd</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 display"</i><span style="color: navy">;</span>
<span style="color: navy">}
</span><b>group </b>TranslateCoding<span style="color: navy">(</span><b>source</b> <span style="color: maroon">scc</span>, <b>target</b> <span style="color: maroon">tcc</span><span style="color: navy">)</span><b> <<types>></b><span style="color: navy"> {
</span> scc.coding<b> as </b><span style="color: maroon">d</span><b> where </b>d.system.exists().not()<span style="color: navy"><b> -> </b></span>tcc.coding = <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">'Coding'</span><span style="color: navy">)</span><span style="color: navy">;</span>
scc.coding<b> as </b><span style="color: maroon">scode</span><b> where </b>(scode.code = '1271').exists() and (scode.display = 'Pap smear/cytology')<span style="color: navy"><b> -> </b></span>tcc.coding<b> as </b><span style="color: maroon">tcode</span><b> then</b><span style="color: navy"> {
</span> scode<span style="color: navy"><b> -> </b></span>tcode.code = <span style="color: blue">'LA16047-5'</span> <i>"override code"</i><span style="color: navy">;</span>
scode.display<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcode.display = <span style="color: maroon">d</span><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.system = <span style="color: blue">'http://loinc.org'</span> <i>"overriedsystem"</i><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
scc.coding<b> as </b><span style="color: maroon">scode</span><b> where </b>(scode.code = '1271').exists() and (scode.display = 'HPV')<span style="color: navy"><b> -> </b></span>tcc.coding<b> as </b><span style="color: maroon">tcode</span><b> then</b><span style="color: navy"> {
</span> scode<span style="color: navy"><b> -> </b></span>tcode.code = <span style="color: blue">'LP14836-8'</span> <i>"override code"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.display = <span style="color: blue">'Human papilloma virus'</span> <i>"settinghpvdisplay"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.system = <span style="color: blue">'http://loinc.org'</span> <i>"overriedsystem"</i><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
scc.coding<b> as </b><span style="color: maroon">scode</span><b> where </b>(scode.code = '1271').exists() and (scode.display = 'Mammogram')<span style="color: navy"><b> -> </b></span>tcc.coding<b> as </b><span style="color: maroon">tcode</span><b> then</b><span style="color: navy"> {
</span> scode<span style="color: navy"><b> -> </b></span>tcode.code = <span style="color: blue">'LA16046-7'</span> <i>"override code"</i><span style="color: navy">;</span>
scode.display<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcode.display = <span style="color: maroon">d</span><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.system = <span style="color: blue">'http://loinc.org'</span> <i>"overriedsystem"</i><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
scc.coding<b> as </b><span style="color: maroon">scode</span><b> where </b>(scode.code = '1271').exists() and (scode.display = 'VIA')<span style="color: navy"><b> -> </b></span>tcc.coding<b> as </b><span style="color: maroon">tcode</span><b> then</b><span style="color: navy"> {
</span> scode<span style="color: navy"><b> -> </b></span>tcode.code = <span style="color: blue">'LP404404-8'</span> <i>"override code"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.display = <span style="color: blue">'Screening techniques | Cervix or Vagina | Cytology'</span> <i>"settingdisplay"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.system = <span style="color: blue">'http://loinc.org'</span> <i>"overriedsystem"</i><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
scc.coding<b> as </b><span style="color: maroon">scode</span><b> where </b>(scode.code = '1271').exists() and (scode.display = 'Biopsy')<span style="color: navy"><b> -> </b></span>tcc.coding<b> as </b><span style="color: maroon">tcode</span><b> then</b><span style="color: navy"> {
</span> scode<span style="color: navy"><b> -> </b></span>tcode.code = <span style="color: blue">'LA15393-4'</span> <i>"override code"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.display = <span style="color: blue">'Biopsy'</span> <i>"settingdisplay"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.system = <span style="color: blue">'http://loinc.org'</span> <i>"overriedsystem"</i><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
scc.coding<b> as </b><span style="color: maroon">scode</span><b> where </b>(scode.code = '1271').exists() and (scode.display = 'Ultrasound')<span style="color: navy"><b> -> </b></span>tcc.coding<b> as </b><span style="color: maroon">tcode</span><b> then</b><span style="color: navy"> {
</span> scode<span style="color: navy"><b> -> </b></span>tcode.code = <span style="color: blue">'24630-6'</span> <i>"override code"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.display = <span style="color: blue">'US Chest'</span> <i>"settingdisplay"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.system = <span style="color: blue">'http://loinc.org'</span> <i>"overriedsystem"</i><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
scc.coding<b> as </b><span style="color: maroon">scode</span><b> where </b>(scode.code = '1271').exists() and (scode.display = 'MRI')<span style="color: navy"><b> -> </b></span>tcc.coding<b> as </b><span style="color: maroon">tcode</span><b> then</b><span style="color: navy"> {
</span> scode<span style="color: navy"><b> -> </b></span>tcode.code = <span style="color: blue">'30794-2'</span> <i>"override code"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.display = <span style="color: blue">'MR Breast'</span> <i>"settingdisplay"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.system = <span style="color: blue">'http://loinc.org'</span> <i>"overriedsystem"</i><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
scc.coding<b> as </b><span style="color: maroon">scode</span><b> where </b>(scode.code = '1271').exists() and (scode.display = 'Prostate Specific Antigen - Serum')<span style="color: navy"><b> -> </b></span>tcc.coding<b> as </b><span style="color: maroon">tcode</span><b> then</b><span style="color: navy"> {
</span> scode<span style="color: navy"><b> -> </b></span>tcode.code = <span style="color: blue">'32465-7'</span> <i>"override code"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.display = <span style="color: blue">'Physical findings of Prostate'</span> <i>"settingdisplay"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.system = <span style="color: blue">'http://loinc.org'</span> <i>"overriedsystem"</i><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
scc.coding<b> as </b><span style="color: maroon">scode</span><b> where </b>(scode.code = '1271').exists() and (scode.display = 'Prostate Specific Antigen - Whole Blood')<span style="color: navy"><b> -> </b></span>tcc.coding<b> as </b><span style="color: maroon">tcode</span><b> then</b><span style="color: navy"> {
</span> scode<span style="color: navy"><b> -> </b></span>tcode.code = <span style="color: blue">'LP15247-7'</span> <i>"override code"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.display = <span style="color: blue">'Whole Blood'</span> <i>"settingdisplay"</i><span style="color: navy">;</span>
scode<span style="color: navy"><b> -> </b></span>tcode.system = <span style="color: blue">'http://loinc.org'</span> <i>"overriedsystem"</i><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
scc.coding<b> as </b><span style="color: maroon">d</span><b> where </b>d.system.exists()<span style="color: navy"><b> -> </b></span>tcc.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">tcoding</span><b> then</b><span style="color: navy"> {
</span> d.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcoding.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>
d.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcoding.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>
d.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcoding.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>
d.code<b> as </b><span style="color: maroon">d</span><span style="color: navy"><b> -> </b></span>tcoding.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></pre></div>
</text>
<url
value="https://fhir.slade360.co.ke/fhir/StructureMap/ServiceRequestSGHI5"/>
<version value="0.1.0"/>
<name value="ServiceRequestSGHI5"/>
<title value="ServiceRequest 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="ServiceRequestTransformsR4SGHIR5"/>
<structure>
<url value="http://hl7.org/fhir/4.0/StructureDefinition/ServiceRequest"/>
<mode value="source"/>
<alias value="ServiceRequestR4"/>
</structure>
<structure>
<url
value="https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-servicerequest"/>
<mode value="target"/>
<alias value="SGHIServiceRequest"/>
</structure>
<group>
<name value="SGHIServiceRequest"/>
<typeMode value="type-and-types"/>
<input>
<name value="src"/>
<type value="ServiceRequestR4"/>
<mode value="source"/>
</input>
<input>
<name value="tgt"/>
<type value="SGHIServiceRequest"/>
<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"/>
</source>
<target>
<context value="tgt"/>
<element value="active"/>
<transform value="copy"/>
<parameter>
<valueString value="true"/>
</parameter>
</target>
</rule>
<rule>
<name value="language"/>
<source>
<context value="src"/>
<element value="language"/>
<variable value="sl"/>
</source>
<target>
<context value="tgt"/>
<element value="language"/>
<transform value="copy"/>
<parameter>
<valueId value="sl"/>
</parameter>
</target>
</rule>
<rule>
<name value="authoredOn"/>
<source>
<context value="src"/>
<element value="authoredOn"/>
<variable value="sa"/>
</source>
<target>
<context value="tgt"/>
<element value="authoredOn"/>
<transform value="copy"/>
<parameter>
<valueId value="sa"/>
</parameter>
</target>
</rule>
<rule>
<name value="createhardcodedtext"/>
<source>
<context value="src"/>
<condition value="text.exists().not()"/>
</source>
<target>
<context value="tgt"/>
<element value="text"/>
<variable value="tgt_n"/>
<transform value="create"/>
<parameter>
<valueString value="Narrative"/>
</parameter>
</target>
<rule>
<name value="settextstatus"/>
<source>
<context value="src"/>
</source>
<target>
<context value="tgt_n"/>
<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="tgt_n"/>
<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>
<documentation value="Create identifier"/>
</rule>
<rule>
<name value="set profile in meta"/>
<source>
<context value="src"/>
<element value="meta"/>
<variable value="s_meta"/>
</source>
<target>
<context value="tgt"/>
<element value="meta"/>
<variable value="t_meta"/>
</target>
<rule>
<name value="lastUpdated"/>
<source>
<context value="s_meta"/>
<element value="lastUpdated"/>
<variable value="sl"/>
</source>
<target>
<context value="t_meta"/>
<element value="lastUpdated"/>
<transform value="copy"/>
<parameter>
<valueId value="sl"/>
</parameter>
</target>
</rule>
<rule>
<name value="language"/>
<source>
<context value="s_meta"/>
<element value="language"/>
<variable value="sl"/>
</source>
<target>
<context value="t_meta"/>
<element value="language"/>
<transform value="copy"/>
<parameter>
<valueId value="sl"/>
</parameter>
</target>
</rule>
<rule>
<name value="tags"/>
<source>
<context value="s_meta"/>
<element value="tags"/>
<variable value="st"/>
</source>
<target>
<context value="t_meta"/>
<element value="tags"/>
<transform value="copy"/>
<parameter>
<valueId value="st"/>
</parameter>
</target>
</rule>
<rule>
<name value="setprofileinmeta"/>
<source>
<context value="src"/>
<element value="meta"/>
<variable value="sp"/>
<condition value="profile.exists().not()"/>
</source>
<target>
<context value="t_meta"/>
<element value="profile"/>
<transform value="copy"/>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-servicerequest"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="coppying status"/>
<source>
<context value="src"/>
<condition value="status != 'finished'"/>
</source>
<rule>
<name value="status"/>
<source>
<context value="src"/>
<element value="status"/>
<variable value="sd"/>
</source>
<target>
<context value="tgt"/>
<element value="status"/>
<transform value="copy"/>
<parameter>
<valueId value="sd"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="settingR5status"/>
<source>
<context value="src"/>
<condition value="status = 'finished'"/>
</source>
<target>
<context value="tgt"/>
<element value="status"/>
<transform value="copy"/>
<parameter>
<valueString value="completed"/>
</parameter>
</target>
</rule>
<rule>
<name value="dateTime"/>
<source>
<context value="src"/>
<element value="dateTime"/>
<variable value="sd"/>
</source>
<target>
<context value="tgt"/>
<element value="date"/>
<transform value="copy"/>
<parameter>
<valueId value="sd"/>
</parameter>
</target>
</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="category"/>
<source>
<context value="src"/>
<element value="category"/>
<variable value="scat"/>
</source>
<target>
<context value="tgt"/>
<element value="category"/>
<variable value="tcat"/>
</target>
<rule>
<name value="coding"/>
<source>
<context value="scat"/>
<element value="coding"/>
<variable value="d"/>
<condition value="d.system.exists().not()"/>
</source>
<target>
<context value="tcat"/>
<element value="coding"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoFHIRCategoryCodeBindingsMap"/>
</parameter>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scat"/>
<element value="coding"/>
<variable value="d"/>
<condition value="d.system.exists()"/>
</source>
<target>
<context value="tcat"/>
<element value="coding"/>
<variable value="tcoding"/>
<transform value="create"/>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
<rule>
<name value="code"/>
<source>
<context value="d"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tcoding"/>
<element value="code"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoFHIRCategoryCodeBindingsMap"/>
</parameter>
<parameter>
<valueString value="code"/>
</parameter>
</target>
</rule>
<rule>
<name value="code"/>
<source>
<context value="d"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tcoding"/>
<element value="system"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoFHIRCategoryCodeBindingsMap"/>
</parameter>
<parameter>
<valueString value="system"/>
</parameter>
</target>
</rule>
<rule>
<name value="code"/>
<source>
<context value="d"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tcoding"/>
<element value="display"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoFHIRCategoryCodeBindingsMap"/>
</parameter>
<parameter>
<valueString value="display"/>
</parameter>
</target>
</rule>
<rule>
<name value="code"/>
<source>
<context value="d"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tcat"/>
<element value="text"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoFHIRCategoryCodeBindingsMap"/>
</parameter>
<parameter>
<valueString value="display"/>
</parameter>
</target>
</rule>
</rule>
</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="requester"/>
<source>
<context value="src"/>
<element value="requester"/>
<variable value="sr"/>
</source>
<target>
<context value="tgt"/>
<element value="requester"/>
<variable value="tr"/>
</target>
<dependent>
<name value="TransformReference"/>
<parameter>
<valueId value="sr"/>
</parameter>
<parameter>
<valueId value="tr"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="subject"/>
<source>
<context value="src"/>
<element value="subject"/>
<variable value="sbb"/>
</source>
<target>
<context value="tgt"/>
<element value="subject"/>
<variable value="tbb"/>
</target>
<dependent>
<name value="TransformReference"/>
<parameter>
<valueId value="sbb"/>
</parameter>
<parameter>
<valueId value="tbb"/>
</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="settingperformer"/>
<source>
<context value="src"/>
<condition value="performer.exists().not()"/>
</source>
<rule>
<name value="setting performer"/>
<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="sp"/>
</source>
<target>
<context value="tgt"/>
<element value="performer"/>
<variable value="tp"/>
<transform value="create"/>
<parameter>
<valueString value="Reference"/>
</parameter>
</target>
<dependent>
<name value="TransformAssigner"/>
<parameter>
<valueId value="sp"/>
</parameter>
<parameter>
<valueId value="tp"/>
</parameter>
</dependent>
</rule>
</rule>
</rule>
<rule>
<name value="settingrequester"/>
<source>
<context value="src"/>
<condition value="requester.exists().not()"/>
</source>
<rule>
<name value="setting requester"/>
<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="sr"/>
</source>
<target>
<context value="tgt"/>
<element value="requester"/>
<variable value="tr"/>
<transform value="create"/>
<parameter>
<valueString value="Reference"/>
</parameter>
</target>
<dependent>
<name value="TransformAssigner"/>
<parameter>
<valueId value="sr"/>
</parameter>
<parameter>
<valueId value="tr"/>
</parameter>
</dependent>
</rule>
</rule>
</rule>
<rule>
<name value="priority"/>
<source>
<context value="src"/>
<element value="priority"/>
<variable value="sp"/>
</source>
<target>
<context value="tgt"/>
<element value="priority"/>
<transform value="copy"/>
<parameter>
<valueId value="sp"/>
</parameter>
</target>
</rule>
<rule>
<name value="intent"/>
<source>
<context value="src"/>
<element value="intent"/>
<variable value="sti"/>
</source>
<target>
<context value="tgt"/>
<element value="intent"/>
<transform value="copy"/>
<parameter>
<valueId value="sti"/>
</parameter>
</target>
</rule>
<rule>
<name value="translate codeableConcept to CodeableReference in R5"/>
<source>
<context value="src"/>
</source>
<target>
<context value="tgt"/>
<element value="code"/>
<variable value="trf"/>
<transform value="create"/>
<parameter>
<valueString value="CodeableReference"/>
</parameter>
</target>
<rule>
<name value="code"/>
<source>
<context value="src"/>
<element value="code"/>
<variable value="scc"/>
</source>
<target>
<context value="trf"/>
<element value="concept"/>
<variable value="tcc"/>
<transform value="create"/>
<parameter>
<valueString value="CodeableConcept"/>
</parameter>
</target>
<dependent>
<name value="TranslateCoding"/>
<parameter>
<valueId value="scc"/>
</parameter>
<parameter>
<valueId value="tcc"/>
</parameter>
</dependent>
</rule>
</rule>
<rule>
<name value="setting reason"/>
<source>
<context value="src"/>
</source>
<target>
<context value="tgt"/>
<element value="reason"/>
<variable value="tr"/>
<transform value="create"/>
<parameter>
<valueString value="CodeableReference"/>
</parameter>
</target>
<rule>
<name value="code"/>
<source>
<context value="src"/>
<element value="code"/>
<variable value="scc"/>
</source>
<target>
<context value="tr"/>
<element value="concept"/>
<variable value="tcc"/>
<transform value="create"/>
<parameter>
<valueString value="CodeableConcept"/>
</parameter>
</target>
<dependent>
<name value="TranslateCoding"/>
<parameter>
<valueId value="scc"/>
</parameter>
<parameter>
<valueId value="tcc"/>
</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="d"/>
</source>
<target>
<context value="tgt"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueId value="d"/>
</parameter>
</target>
</rule>
<rule>
<name value="code"/>
<source>
<context value="src"/>
<element value="code"/>
<variable value="dc"/>
</source>
<target>
<context value="tgt"/>
<element value="id"/>
<transform value="copy"/>
<parameter>
<valueId value="dc"/>
</parameter>
</target>
</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="sid"/>
</source>
<target>
<context value="tgt"/>
<element value="id"/>
<transform value="copy"/>
<parameter>
<valueId value="sid"/>
</parameter>
</target>
</rule>
<rule>
<name value="reference"/>
<source>
<context value="src"/>
<element value="reference"/>
<variable value="sf"/>
</source>
<target>
<context value="tgt"/>
<element value="reference"/>
<transform value="copy"/>
<parameter>
<valueId value="sf"/>
</parameter>
</target>
</rule>
<rule>
<name value="display"/>
<source>
<context value="src"/>
<element value="display"/>
<variable value="sd"/>
</source>
<target>
<context value="tgt"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueId value="sd"/>
</parameter>
</target>
</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="TranslateCoding"/>
<typeMode value="types"/>
<input>
<name value="scc"/>
<mode value="source"/>
</input>
<input>
<name value="tcc"/>
<mode value="target"/>
</input>
<rule>
<name value="coding"/>
<source>
<context value="scc"/>
<element value="coding"/>
<variable value="d"/>
<condition value="d.system.exists().not()"/>
</source>
<target>
<context value="tcc"/>
<element value="coding"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCServiceRequestMap"/>
</parameter>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scc"/>
<element value="coding"/>
<variable value="scode"/>
<condition
value="(scode.code = '1271').exists() and (scode.display = 'Pap smear/cytology')"/>
</source>
<target>
<context value="tcc"/>
<element value="coding"/>
<variable value="tcode"/>
</target>
<rule>
<name value="override code"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="LA16047-5"/>
</parameter>
</target>
</rule>
<rule>
<name value="display"/>
<source>
<context value="scode"/>
<element value="display"/>
<variable value="d"/>
</source>
<target>
<context value="tcode"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueId value="d"/>
</parameter>
</target>
</rule>
<rule>
<name value="overriedsystem"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scc"/>
<element value="coding"/>
<variable value="scode"/>
<condition
value="(scode.code = '1271').exists() and (scode.display = 'HPV')"/>
</source>
<target>
<context value="tcc"/>
<element value="coding"/>
<variable value="tcode"/>
</target>
<rule>
<name value="override code"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="LP14836-8"/>
</parameter>
</target>
</rule>
<rule>
<name value="settinghpvdisplay"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Human papilloma virus"/>
</parameter>
</target>
</rule>
<rule>
<name value="overriedsystem"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scc"/>
<element value="coding"/>
<variable value="scode"/>
<condition
value="(scode.code = '1271').exists() and (scode.display = 'Mammogram')"/>
</source>
<target>
<context value="tcc"/>
<element value="coding"/>
<variable value="tcode"/>
</target>
<rule>
<name value="override code"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="LA16046-7"/>
</parameter>
</target>
</rule>
<rule>
<name value="display"/>
<source>
<context value="scode"/>
<element value="display"/>
<variable value="d"/>
</source>
<target>
<context value="tcode"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueId value="d"/>
</parameter>
</target>
</rule>
<rule>
<name value="overriedsystem"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scc"/>
<element value="coding"/>
<variable value="scode"/>
<condition
value="(scode.code = '1271').exists() and (scode.display = 'VIA')"/>
</source>
<target>
<context value="tcc"/>
<element value="coding"/>
<variable value="tcode"/>
</target>
<rule>
<name value="override code"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="LP404404-8"/>
</parameter>
</target>
</rule>
<rule>
<name value="settingdisplay"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString
value="Screening techniques | Cervix or Vagina | Cytology"/>
</parameter>
</target>
</rule>
<rule>
<name value="overriedsystem"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scc"/>
<element value="coding"/>
<variable value="scode"/>
<condition
value="(scode.code = '1271').exists() and (scode.display = 'Biopsy')"/>
</source>
<target>
<context value="tcc"/>
<element value="coding"/>
<variable value="tcode"/>
</target>
<rule>
<name value="override code"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="LA15393-4"/>
</parameter>
</target>
</rule>
<rule>
<name value="settingdisplay"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Biopsy"/>
</parameter>
</target>
</rule>
<rule>
<name value="overriedsystem"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scc"/>
<element value="coding"/>
<variable value="scode"/>
<condition
value="(scode.code = '1271').exists() and (scode.display = 'Ultrasound')"/>
</source>
<target>
<context value="tcc"/>
<element value="coding"/>
<variable value="tcode"/>
</target>
<rule>
<name value="override code"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="24630-6"/>
</parameter>
</target>
</rule>
<rule>
<name value="settingdisplay"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="US Chest"/>
</parameter>
</target>
</rule>
<rule>
<name value="overriedsystem"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scc"/>
<element value="coding"/>
<variable value="scode"/>
<condition
value="(scode.code = '1271').exists() and (scode.display = 'MRI')"/>
</source>
<target>
<context value="tcc"/>
<element value="coding"/>
<variable value="tcode"/>
</target>
<rule>
<name value="override code"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="30794-2"/>
</parameter>
</target>
</rule>
<rule>
<name value="settingdisplay"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="MR Breast"/>
</parameter>
</target>
</rule>
<rule>
<name value="overriedsystem"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scc"/>
<element value="coding"/>
<variable value="scode"/>
<condition
value="(scode.code = '1271').exists() and (scode.display = 'Prostate Specific Antigen - Serum')"/>
</source>
<target>
<context value="tcc"/>
<element value="coding"/>
<variable value="tcode"/>
</target>
<rule>
<name value="override code"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="32465-7"/>
</parameter>
</target>
</rule>
<rule>
<name value="settingdisplay"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Physical findings of Prostate"/>
</parameter>
</target>
</rule>
<rule>
<name value="overriedsystem"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scc"/>
<element value="coding"/>
<variable value="scode"/>
<condition
value="(scode.code = '1271').exists() and (scode.display = 'Prostate Specific Antigen - Whole Blood')"/>
</source>
<target>
<context value="tcc"/>
<element value="coding"/>
<variable value="tcode"/>
</target>
<rule>
<name value="override code"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="LP15247-7"/>
</parameter>
</target>
</rule>
<rule>
<name value="settingdisplay"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Whole Blood"/>
</parameter>
</target>
</rule>
<rule>
<name value="overriedsystem"/>
<source>
<context value="scode"/>
</source>
<target>
<context value="tcode"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scc"/>
<element value="coding"/>
<variable value="d"/>
<condition value="d.system.exists()"/>
</source>
<target>
<context value="tcc"/>
<element value="coding"/>
<variable value="tcoding"/>
<transform value="create"/>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
<rule>
<name value="code"/>
<source>
<context value="d"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tcoding"/>
<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="d"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tcoding"/>
<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="d"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tcoding"/>
<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="d"/>
<element value="code"/>
<variable value="d"/>
</source>
<target>
<context value="tcoding"/>
<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>
</group>
</StructureMap>