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="Observation4toSGHI5"/>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureMap Observation4toSGHI5</b></p><a name="Observation4toSGHI5"> </a><a name="hcObservation4toSGHI5"> </a><pre class="fml">
<span style="color: #cc00cc">/// <b>url</b> = </span><span style="color: blue">'https://fhir.slade360.co.ke/fhir/StructureMap/Observation4toSGHI5'</span>
<span style="color: #cc00cc">/// <b>name</b> = </span><span style="color: blue">'Observation4toSGHI5'</span>
<span style="color: #cc00cc">/// <b>title</b> = </span><span style="color: blue">'Observation Transforms: R4 to 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/Observation<span style="color: navy">" </span><b>alias </b>ObservationR4 <b>as </b><b>source</b>
<b>uses</b><span style="color: navy"> "</span><a href="StructureDefinition-sghi-observation.html" title="SGHI Observation">https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-observation</a><span style="color: navy">" </span><b>alias </b>SGHIObservation <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>SGHIObservation<span style="color: navy">(</span><b>source</b> <span style="color: maroon">src</span><span style="color: navy"> : </span>ObservationR4, <b>target</b> <span style="color: maroon">tgt</span><span style="color: navy"> : </span>SGHIObservation<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-observation'</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.effectiveInstant<b> as </b><span style="color: maroon">se</span><span style="color: navy"><b> -> </b></span>tgt.issued = <span style="color: maroon">se</span> <i>"mapissuedfromeffective"</i><span style="color: navy">;</span>
src.code<b> as </b><span style="color: maroon">scode</span><span style="color: navy"><b> -> </b></span>tgt.code<b> as </b><span style="color: maroon">tcode</span><b> then</b><span style="color: navy"> {
</span> scode.coding<b> as </b><span style="color: maroon">d</span><b> where </b>system.exists().not()<span style="color: navy"><b> -> </b></span>tcode.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/CIELtoLOINCObservationMap'</span><span style="color: navy">, </span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><span style="color: navy">;</span>
scode.coding<b> as </b><span style="color: maroon">d</span><b> where </b>system.exists()<span style="color: navy"><b> -> </b></span>tcode.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">code</span><span style="color: navy"><b> -> </b></span>tcoding.code = <b>translate</b><span style="color: navy">(</span><span style="color: maroon">code</span><span style="color: navy">, </span><span style="color: blue">'https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCObservationMap'</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">sd</span><span style="color: navy"><b> -> </b></span>tcoding.system = <b>translate</b><span style="color: navy">(</span><span style="color: maroon">sd</span><span style="color: navy">, </span><span style="color: blue">'https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCObservationMap'</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/CIELtoLOINCObservationMap'</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>tcode.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/CIELtoLOINCObservationMap'</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.code<b> as </b><span style="color: maroon">s_code</span><span style="color: navy"><b> -> </b></span>tgt.code<b> as </b><span style="color: maroon">t_code</span><b> then</b><span style="color: navy"> {
</span> s_code.text<span style="color: navy"><b> -> </b></span>t_code.text<span style="color: navy">;</span>
src.basedOn<span style="color: navy"><b> -> </b></span>tgt.basedOn<span style="color: navy">;</span>
src.partOf<span style="color: navy"><b> -> </b></span>tgt.partOf<span style="color: navy">;</span>
src.category<span style="color: navy"><b> -> </b></span>tgt.category<span style="color: navy">;</span>
src.status<b> as </b><span style="color: maroon">v</span><span style="color: navy"><b> -> </b></span>tgt.status = <b>translate</b><span style="color: navy">(</span><span style="color: maroon">v</span><span style="color: navy">, </span><span style="color: blue">'http://hl7.org/fhir/uv/xver/ConceptMap/obs.status-4to5'</span><span style="color: navy">, </span><span style="color: blue">'code'</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.focus<span style="color: navy"><b> -> </b></span>tgt.focus<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.effective<span style="color: navy"> : </span>dateTime<span style="color: navy"><b> -> </b></span>tgt.effective<span style="color: navy">;</span>
src.effective<span style="color: navy"> : </span>Period<span style="color: navy"><b> -> </b></span>tgt.effective<span style="color: navy">;</span>
src.effective<span style="color: navy"> : </span>Timing<span style="color: navy"><b> -> </b></span>tgt.effective<span style="color: navy">;</span>
src.effective<span style="color: navy"> : </span>instant<span style="color: navy"><b> -> </b></span>tgt.effective<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>Quantity<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>CodeableConcept<b> as </b><span style="color: maroon">sv</span><span style="color: navy"><b> -> </b></span>tgt.value = <span style="color: maroon">sv</span><span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>string<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>boolean<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>integer<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>Range<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>Ratio<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>SampledData<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>time<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>dateTime<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>Period<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.dataAbsentReason<span style="color: navy"><b> -> </b></span>tgt.dataAbsentReason<span style="color: navy">;</span>
src.interpretation<span style="color: navy"><b> -> </b></span>tgt.interpretation<span style="color: navy">;</span>
src.note<span style="color: navy"><b> -> </b></span>tgt.note<span style="color: navy">;</span>
src.bodySite<span style="color: navy"><b> -> </b></span>tgt.bodySite<span style="color: navy">;</span>
src.method<span style="color: navy"><b> -> </b></span>tgt.method<span style="color: navy">;</span>
src.specimen<span style="color: navy"><b> -> </b></span>tgt.specimen<span style="color: navy">;</span>
src.device<span style="color: navy"><b> -> </b></span>tgt.device<span style="color: navy">;</span>
src.referenceRange<b> as </b><span style="color: maroon">s</span><span style="color: navy"><b> -> </b></span>tgt.referenceRange<b> as </b><span style="color: maroon">t</span><b> then </b>ObservationReferenceRange<span style="color: navy">(</span><span style="color: maroon">s</span><span style="color: navy">, </span><span style="color: maroon">t</span><span style="color: navy">)</span><span style="color: navy">;</span>
src.hasMember<span style="color: navy"><b> -> </b></span>tgt.hasMember<span style="color: navy">;</span>
src.derivedFrom<span style="color: navy"><b> -> </b></span>tgt.derivedFrom<span style="color: navy">;</span>
src.component<b> as </b><span style="color: maroon">s</span><span style="color: navy"><b> -> </b></span>tgt.component<b> as </b><span style="color: maroon">t</span><b> then </b>ObservationComponent<span style="color: navy">(</span><span style="color: maroon">s</span><span style="color: navy">, </span><span style="color: maroon">t</span><span style="color: navy">)</span><span style="color: navy">;</span>
src.performer<b> as </b><span style="color: maroon">spf</span><span style="color: navy"><b> -> </b></span>tgt.performer<b> as </b><span style="color: maroon">tpf</span><b> then </b>TransformReference<span style="color: navy">(</span><span style="color: maroon">spf</span><span style="color: navy">, </span><span style="color: maroon">tpf</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">st</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">st</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><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"setting performer"</i><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
<span style="color: navy">}
</span><b>group </b>ObservationReferenceRange<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> extends </b>BackboneElement<span style="color: navy"> {
</span> src.low<b> as </b><span style="color: maroon">sl</span><span style="color: navy"><b> -> </b></span>tgt.low = <span style="color: maroon">sl</span><span style="color: navy">;</span>
src.high<span style="color: navy"><b> -> </b></span>tgt.high<span style="color: navy">;</span>
src.type<span style="color: navy"><b> -> </b></span>tgt.type<span style="color: navy">;</span>
src.appliesTo<span style="color: navy"><b> -> </b></span>tgt.appliesTo<span style="color: navy">;</span>
src.age<span style="color: navy"><b> -> </b></span>tgt.age<span style="color: navy">;</span>
src.text<span style="color: navy"><b> -> </b></span>tgt.text<span style="color: navy">;</span>
<span style="color: navy">}
</span><b>group </b>ObservationComponent<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> extends </b>BackboneElement<span style="color: navy"> {
</span> src.value<span style="color: navy"> : </span>Quantity<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>CodeableConcept<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>string<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>boolean<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>integer<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>Range<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>Ratio<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>SampledData<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>time<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>dateTime<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.value<span style="color: navy"> : </span>Period<span style="color: navy"><b> -> </b></span>tgt.value<span style="color: navy">;</span>
src.dataAbsentReason<span style="color: navy"><b> -> </b></span>tgt.dataAbsentReason<span style="color: navy">;</span>
src.interpretation<span style="color: navy"><b> -> </b></span>tgt.interpretation<span style="color: navy">;</span>
src.referenceRange<b> as </b><span style="color: maroon">s</span><span style="color: navy"><b> -> </b></span>tgt.referenceRange<b> as </b><span style="color: maroon">t</span><b> then </b>ObservationReferenceRange<span style="color: navy">(</span><span style="color: maroon">s</span><span style="color: navy">, </span><span style="color: maroon">t</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<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></pre></div>
</text>
<url
value="https://fhir.slade360.co.ke/fhir/StructureMap/Observation4toSGHI5"/>
<version value="0.1.0"/>
<name value="Observation4toSGHI5"/>
<title value="Observation Transforms: R4 to 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="ObservationTransformsR4toSGHIR5"/>
<structure>
<url value="http://hl7.org/fhir/4.0/StructureDefinition/Observation"/>
<mode value="source"/>
<alias value="ObservationR4"/>
</structure>
<structure>
<url
value="https://fhir.slade360.co.ke/fhir/StructureDefinition/sghi-observation"/>
<mode value="target"/>
<alias value="SGHIObservation"/>
</structure>
<import value="http://hl7.org/fhir/StructureMap/*4to5"/>
<group>
<name value="SGHIObservation"/>
<typeMode value="type-and-types"/>
<input>
<name value="src"/>
<type value="ObservationR4"/>
<mode value="source"/>
</input>
<input>
<name value="tgt"/>
<type value="SGHIObservation"/>
<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-observation"/>
</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="mapissuedfromeffective"/>
<source>
<context value="src"/>
<element value="effectiveInstant"/>
<variable value="se"/>
</source>
<target>
<context value="tgt"/>
<element value="issued"/>
<transform value="copy"/>
<parameter>
<valueId value="se"/>
</parameter>
</target>
</rule>
<rule>
<name value="code"/>
<source>
<context value="src"/>
<element value="code"/>
<variable value="scode"/>
</source>
<target>
<context value="tgt"/>
<element value="code"/>
<variable value="tcode"/>
</target>
<rule>
<name value="coding"/>
<source>
<context value="scode"/>
<element value="coding"/>
<variable value="d"/>
<condition value="system.exists().not()"/>
</source>
<target>
<context value="tcode"/>
<element value="coding"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCObservationMap"/>
</parameter>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="scode"/>
<element value="coding"/>
<variable value="d"/>
<condition value="system.exists()"/>
</source>
<target>
<context value="tcode"/>
<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="code"/>
</source>
<target>
<context value="tcoding"/>
<element value="code"/>
<transform value="translate"/>
<parameter>
<valueId value="code"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCObservationMap"/>
</parameter>
<parameter>
<valueString value="code"/>
</parameter>
</target>
</rule>
<rule>
<name value="code"/>
<source>
<context value="d"/>
<element value="code"/>
<variable value="sd"/>
</source>
<target>
<context value="tcoding"/>
<element value="system"/>
<transform value="translate"/>
<parameter>
<valueId value="sd"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCObservationMap"/>
</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/CIELtoLOINCObservationMap"/>
</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="tcode"/>
<element value="text"/>
<transform value="translate"/>
<parameter>
<valueId value="d"/>
</parameter>
<parameter>
<valueString
value="https://fhir.slade360.co.ke/fhir/ConceptMap/CIELtoLOINCObservationMap"/>
</parameter>
<parameter>
<valueString value="display"/>
</parameter>
</target>
</rule>
</rule>
</rule>
<rule>
<name value="code"/>
<source>
<context value="src"/>
<element value="code"/>
<variable value="s_code"/>
</source>
<target>
<context value="tgt"/>
<element value="code"/>
<variable value="t_code"/>
</target>
<rule>
<name value="text"/>
<source>
<context value="s_code"/>
<element value="text"/>
<variable value="vvv"/>
</source>
<target>
<context value="t_code"/>
<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>
<name value="basedOn"/>
<source>
<context value="src"/>
<element value="basedOn"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="basedOn"/>
<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="partOf"/>
<source>
<context value="src"/>
<element value="partOf"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="partOf"/>
<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="category"/>
<source>
<context value="src"/>
<element value="category"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="category"/>
<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="status"/>
<source>
<context value="src"/>
<element value="status"/>
<variable value="v"/>
</source>
<target>
<context value="tgt"/>
<element value="status"/>
<transform value="translate"/>
<parameter>
<valueId value="v"/>
</parameter>
<parameter>
<valueString
value="http://hl7.org/fhir/uv/xver/ConceptMap/obs.status-4to5"/>
</parameter>
<parameter>
<valueString value="code"/>
</parameter>
</target>
</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="focus"/>
<source>
<context value="src"/>
<element value="focus"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="focus"/>
<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="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="effectiveDateTime"/>
<source>
<context value="src"/>
<type value="dateTime"/>
<element value="effective"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="effective"/>
<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="effectivePeriod"/>
<source>
<context value="src"/>
<type value="Period"/>
<element value="effective"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="effective"/>
<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="effectiveTiming"/>
<source>
<context value="src"/>
<type value="Timing"/>
<element value="effective"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="effective"/>
<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="effectiveInstant"/>
<source>
<context value="src"/>
<type value="instant"/>
<element value="effective"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="effective"/>
<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="valueQuantity"/>
<source>
<context value="src"/>
<type value="Quantity"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueCodeableConcept"/>
<source>
<context value="src"/>
<type value="CodeableConcept"/>
<element value="value"/>
<variable value="sv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<transform value="copy"/>
<parameter>
<valueId value="sv"/>
</parameter>
</target>
</rule>
<rule>
<name value="valueString"/>
<source>
<context value="src"/>
<type value="string"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueBoolean"/>
<source>
<context value="src"/>
<type value="boolean"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueInteger"/>
<source>
<context value="src"/>
<type value="integer"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueRange"/>
<source>
<context value="src"/>
<type value="Range"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueRatio"/>
<source>
<context value="src"/>
<type value="Ratio"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueSampledData"/>
<source>
<context value="src"/>
<type value="SampledData"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueTime"/>
<source>
<context value="src"/>
<type value="time"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueDateTime"/>
<source>
<context value="src"/>
<type value="dateTime"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valuePeriod"/>
<source>
<context value="src"/>
<type value="Period"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="dataAbsentReason"/>
<source>
<context value="src"/>
<element value="dataAbsentReason"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="dataAbsentReason"/>
<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="interpretation"/>
<source>
<context value="src"/>
<element value="interpretation"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="interpretation"/>
<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="note"/>
<source>
<context value="src"/>
<element value="note"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="note"/>
<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="bodySite"/>
<source>
<context value="src"/>
<element value="bodySite"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="bodySite"/>
<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="method"/>
<source>
<context value="src"/>
<element value="method"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="method"/>
<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="specimen"/>
<source>
<context value="src"/>
<element value="specimen"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="specimen"/>
<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="device"/>
<source>
<context value="src"/>
<element value="device"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="device"/>
<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="referenceRange"/>
<source>
<context value="src"/>
<element value="referenceRange"/>
<variable value="s"/>
</source>
<target>
<context value="tgt"/>
<element value="referenceRange"/>
<variable value="t"/>
</target>
<dependent>
<name value="ObservationReferenceRange"/>
<parameter>
<valueId value="s"/>
</parameter>
<parameter>
<valueId value="t"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="hasMember"/>
<source>
<context value="src"/>
<element value="hasMember"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="hasMember"/>
<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="derivedFrom"/>
<source>
<context value="src"/>
<element value="derivedFrom"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="derivedFrom"/>
<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="component"/>
<source>
<context value="src"/>
<element value="component"/>
<variable value="s"/>
</source>
<target>
<context value="tgt"/>
<element value="component"/>
<variable value="t"/>
</target>
<dependent>
<name value="ObservationComponent"/>
<parameter>
<valueId value="s"/>
</parameter>
<parameter>
<valueId value="t"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="performer"/>
<source>
<context value="src"/>
<element value="performer"/>
<variable value="spf"/>
</source>
<target>
<context value="tgt"/>
<element value="performer"/>
<variable value="tpf"/>
</target>
<dependent>
<name value="TransformReference"/>
<parameter>
<valueId value="spf"/>
</parameter>
<parameter>
<valueId value="tpf"/>
</parameter>
</dependent>
</rule>
<rule>
<name value="setting performer"/>
<source>
<context value="src"/>
<condition value="performer.exists().not()"/>
</source>
<rule>
<name value="meta"/>
<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="tgt"/>
<element value="performer"/>
<variable value="tp"/>
<transform value="create"/>
<parameter>
<valueString value="Reference"/>
</parameter>
</target>
<dependent>
<name value="TransformAssigner"/>
<parameter>
<valueId value="st"/>
</parameter>
<parameter>
<valueId value="tp"/>
</parameter>
</dependent>
</rule>
</rule>
</rule>
</rule>
</group>
<group>
<name value="ObservationReferenceRange"/>
<extends value="BackboneElement"/>
<input>
<name value="src"/>
<mode value="source"/>
</input>
<input>
<name value="tgt"/>
<mode value="target"/>
</input>
<rule>
<name value="low"/>
<source>
<context value="src"/>
<element value="low"/>
<variable value="sl"/>
</source>
<target>
<context value="tgt"/>
<element value="low"/>
<transform value="copy"/>
<parameter>
<valueId value="sl"/>
</parameter>
</target>
</rule>
<rule>
<name value="high"/>
<source>
<context value="src"/>
<element value="high"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="high"/>
<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="type"/>
<source>
<context value="src"/>
<element value="type"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="type"/>
<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="appliesTo"/>
<source>
<context value="src"/>
<element value="appliesTo"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="appliesTo"/>
<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="age"/>
<source>
<context value="src"/>
<element value="age"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="age"/>
<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="text"/>
<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="ObservationComponent"/>
<extends value="BackboneElement"/>
<input>
<name value="src"/>
<mode value="source"/>
</input>
<input>
<name value="tgt"/>
<mode value="target"/>
</input>
<rule>
<name value="valueQuantity"/>
<source>
<context value="src"/>
<type value="Quantity"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueCodeableConcept"/>
<source>
<context value="src"/>
<type value="CodeableConcept"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueString"/>
<source>
<context value="src"/>
<type value="string"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueBoolean"/>
<source>
<context value="src"/>
<type value="boolean"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueInteger"/>
<source>
<context value="src"/>
<type value="integer"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueRange"/>
<source>
<context value="src"/>
<type value="Range"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueRatio"/>
<source>
<context value="src"/>
<type value="Ratio"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueSampledData"/>
<source>
<context value="src"/>
<type value="SampledData"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueTime"/>
<source>
<context value="src"/>
<type value="time"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valueDateTime"/>
<source>
<context value="src"/>
<type value="dateTime"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="valuePeriod"/>
<source>
<context value="src"/>
<type value="Period"/>
<element value="value"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="value"/>
<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="dataAbsentReason"/>
<source>
<context value="src"/>
<element value="dataAbsentReason"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="dataAbsentReason"/>
<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="interpretation"/>
<source>
<context value="src"/>
<element value="interpretation"/>
<variable value="vvv"/>
</source>
<target>
<context value="tgt"/>
<element value="interpretation"/>
<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="referenceRange"/>
<source>
<context value="src"/>
<element value="referenceRange"/>
<variable value="s"/>
</source>
<target>
<context value="tgt"/>
<element value="referenceRange"/>
<variable value="t"/>
</target>
<dependent>
<name value="ObservationReferenceRange"/>
<parameter>
<valueId value="s"/>
</parameter>
<parameter>
<valueId value="t"/>
</parameter>
</dependent>
</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="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>
</StructureMap>