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

: Vital Signs Extraction - JSON Representation

Active as of 2025-11-27

Raw json | Download

{
  "resourceType" : "StructureMap",
  "id" : "VitalSignsExtract",
  "text" : {
    "status" : "generated",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: StructureMap VitalSignsExtract</b></p><a name=\"VitalSignsExtract\"> </a><a name=\"hcVitalSignsExtract\"> </a><pre class=\"fml\">\r\n<span style=\"color: #cc00cc\">/// <b>url</b> = </span><span style=\"color: blue\">'https://fhir.slade360.co.ke/fhir/StructureMap/VitalSignsExtract'</span>\r\n<span style=\"color: #cc00cc\">/// <b>name</b> = </span><span style=\"color: blue\">'VitalSignsExtract'</span>\r\n<span style=\"color: #cc00cc\">/// <b>title</b> = </span><span style=\"color: blue\">'Vital Signs Extraction'</span>\r\n<span style=\"color: #cc00cc\">/// <b>status</b> = </span><span style=\"color: blue\">'active'</span>\r\n\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span><a href=\"http://hl7.org/fhir/R5/questionnaireresponse.html\" title=\"QuestionnaireResponse\">http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse</a><span style=\"color: navy\">&quot; </span><b>alias </b>QR <b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span><a href=\"http://hl7.org/fhir/R5/bundle.html\" title=\"Bundle\">http://hl7.org/fhir/StructureDefinition/Bundle</a><span style=\"color: navy\">&quot; </span><b>alias </b>Bundle <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span><a href=\"http://hl7.org/fhir/R5/observation.html\" title=\"Observation\">http://hl7.org/fhir/StructureDefinition/Observation</a><span style=\"color: navy\">&quot; </span><b>alias </b>Observation <b>as </b><b>target</b>\r\n\r\n<b>group </b>VitalSignsExtract<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">qr</span><span style=\"color: navy\"> : </span>QR, <b>target</b> <span style=\"color: maroon\">bundle</span><span style=\"color: navy\"> : </span>Bundle<span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  qr<span style=\"color: navy\"><b> -&gt; </b></span>bundle.type = <span style=\"color: blue\">'transaction'</span> <i>&quot;setBundleType&quot;</i><span style=\"color: navy\">;</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">it</span><b> where </b>linkId = '834591352448'<span style=\"color: navy\"><b> -&gt; </b></span> bundle.entry<b> as </b><span style=\"color: maroon\">eH</span><span style=\"color: navy\">, </span> eH.resource = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Observation'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">oH</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr<span style=\"color: navy\"><b> -&gt; </b></span>oH.id<b> then </b>BuildBaseObs<span style=\"color: navy\">(</span><span style=\"color: maroon\">qr</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oH</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">eH</span><span style=\"color: navy\">)</span> <i>&quot;baseH&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oH.category = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'vital-signs'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Vital Signs'</span><span style=\"color: navy\">)</span> <i>&quot;catH&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oH.code = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://loinc.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'8302-2'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Body Height'</span><span style=\"color: navy\">)</span> <i>&quot;codeH&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetQuantityValueFromItem<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oH</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'http://unitsofmeasure.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'cm'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'centimeter'</span><span style=\"color: navy\">)</span> <i>&quot;valH&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetNoteFromNested<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oH</span><span style=\"color: navy\">)</span> <i>&quot;noteH&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;heightObs&quot;</i><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">Height, LOINC 8302-2, cm</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">it</span><b> where </b>linkId = '612376851550'<span style=\"color: navy\"><b> -&gt; </b></span> bundle.entry<b> as </b><span style=\"color: maroon\">eW</span><span style=\"color: navy\">, </span> eW.resource = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Observation'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">oW</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr<span style=\"color: navy\"><b> -&gt; </b></span>oW.id<b> then </b>BuildBaseObs<span style=\"color: navy\">(</span><span style=\"color: maroon\">qr</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oW</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">eW</span><span style=\"color: navy\">)</span> <i>&quot;baseW&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oW.category = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'vital-signs'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Vital Signs'</span><span style=\"color: navy\">)</span> <i>&quot;catW&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oW.code = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://loinc.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'29463-7'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Body Weight'</span><span style=\"color: navy\">)</span> <i>&quot;codeW&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetQuantityValueFromItem<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oW</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'http://unitsofmeasure.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'kg'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'kilogram'</span><span style=\"color: navy\">)</span> <i>&quot;valW&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetNoteFromNested<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oW</span><span style=\"color: navy\">)</span> <i>&quot;noteW&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;weightObs&quot;</i><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">Weight, LOINC 29463-7, kg</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">it</span><b> where </b>linkId = '118945747144'<span style=\"color: navy\"><b> -&gt; </b></span> bundle.entry<b> as </b><span style=\"color: maroon\">eP</span><span style=\"color: navy\">, </span> eP.resource = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Observation'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">oP</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr<span style=\"color: navy\"><b> -&gt; </b></span>oP.id<b> then </b>BuildBaseObs<span style=\"color: navy\">(</span><span style=\"color: maroon\">qr</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oP</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">eP</span><span style=\"color: navy\">)</span> <i>&quot;baseP&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oP.category = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'vital-signs'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Vital Signs'</span><span style=\"color: navy\">)</span> <i>&quot;catP&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oP.code = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://loinc.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'8889-8'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Heart rate by Pulse oximetry'</span><span style=\"color: navy\">)</span> <i>&quot;codeP&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetQuantityValueFromItem<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oP</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'http://unitsofmeasure.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'/min'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'per minute'</span><span style=\"color: navy\">)</span> <i>&quot;valP&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetNoteFromNested<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oP</span><span style=\"color: navy\">)</span> <i>&quot;noteP&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;pulseObs&quot;</i><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">Pulse rate, LOINC 8889-8, /min</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">it</span><b> where </b>linkId = '961601071435'<span style=\"color: navy\"><b> -&gt; </b></span> bundle.entry<b> as </b><span style=\"color: maroon\">eS</span><span style=\"color: navy\">, </span> eS.resource = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Observation'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">oS</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr<span style=\"color: navy\"><b> -&gt; </b></span>oS.id<b> then </b>BuildBaseObs<span style=\"color: navy\">(</span><span style=\"color: maroon\">qr</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oS</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">eS</span><span style=\"color: navy\">)</span> <i>&quot;baseS&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oS.category = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'vital-signs'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Vital Signs'</span><span style=\"color: navy\">)</span> <i>&quot;catS&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oS.code = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://loinc.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'8480-6'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Systolic blood pressure'</span><span style=\"color: navy\">)</span> <i>&quot;codeS&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetQuantityValueFromItem<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oS</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'http://unitsofmeasure.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'mm[Hg]'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'millimeter of mercury'</span><span style=\"color: navy\">)</span> <i>&quot;valS&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetNoteFromNested<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oS</span><span style=\"color: navy\">)</span> <i>&quot;noteS&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;systolicObs&quot;</i><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">Systolic BP, LOINC 8480-6, mm[Hg]</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">it</span><b> where </b>linkId = '354414349687'<span style=\"color: navy\"><b> -&gt; </b></span> bundle.entry<b> as </b><span style=\"color: maroon\">eD</span><span style=\"color: navy\">, </span> eD.resource = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Observation'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">oD</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr<span style=\"color: navy\"><b> -&gt; </b></span>oD.id<b> then </b>BuildBaseObs<span style=\"color: navy\">(</span><span style=\"color: maroon\">qr</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oD</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">eD</span><span style=\"color: navy\">)</span> <i>&quot;baseD&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oD.category = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'vital-signs'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Vital Signs'</span><span style=\"color: navy\">)</span> <i>&quot;catD&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oD.code = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://loinc.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'8462-4'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Diastolic blood pressure'</span><span style=\"color: navy\">)</span> <i>&quot;codeD&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetQuantityValueFromItem<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oD</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'http://unitsofmeasure.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'mm[Hg]'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'millimeter of mercury'</span><span style=\"color: navy\">)</span> <i>&quot;valD&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetNoteFromNested<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oD</span><span style=\"color: navy\">)</span> <i>&quot;noteD&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;diastolicObs&quot;</i><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">Diastolic BP, LOINC 8462-4, mm[Hg]</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">it</span><b> where </b>linkId = '608221161831'<span style=\"color: navy\"><b> -&gt; </b></span> bundle.entry<b> as </b><span style=\"color: maroon\">eT</span><span style=\"color: navy\">, </span> eT.resource = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Observation'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">oT</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr<span style=\"color: navy\"><b> -&gt; </b></span>oT.id<b> then </b>BuildBaseObs<span style=\"color: navy\">(</span><span style=\"color: maroon\">qr</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oT</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">eT</span><span style=\"color: navy\">)</span> <i>&quot;baseT&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oT.category = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'vital-signs'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Vital Signs'</span><span style=\"color: navy\">)</span> <i>&quot;catT&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oT.code = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://loinc.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'8310-5'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Body Temperature'</span><span style=\"color: navy\">)</span> <i>&quot;codeT&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetQuantityValueFromItem<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oT</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'http://unitsofmeasure.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Cel'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'degree Celsius'</span><span style=\"color: navy\">)</span> <i>&quot;valT&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetNoteFromNested<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oT</span><span style=\"color: navy\">)</span> <i>&quot;noteT&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;tempObs&quot;</i><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">Temperature, LOINC 8310-5, Cel</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">it</span><b> where </b>linkId = '851250344540'<span style=\"color: navy\"><b> -&gt; </b></span> bundle.entry<b> as </b><span style=\"color: maroon\">eO2</span><span style=\"color: navy\">, </span> eO2.resource = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Observation'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">oO2</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr<span style=\"color: navy\"><b> -&gt; </b></span>oO2.id<b> then </b>BuildBaseObs<span style=\"color: navy\">(</span><span style=\"color: maroon\">qr</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oO2</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">eO2</span><span style=\"color: navy\">)</span> <i>&quot;baseO2&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oO2.category = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'vital-signs'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Vital Signs'</span><span style=\"color: navy\">)</span> <i>&quot;catO2&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oO2.code = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://loinc.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'20564-1'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Oxygen saturation in Blood'</span><span style=\"color: navy\">)</span> <i>&quot;codeO2&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetQuantityValueFromItem<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oO2</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'http://unitsofmeasure.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'%'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'percent'</span><span style=\"color: navy\">)</span> <i>&quot;valO2&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetNoteFromNested<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oO2</span><span style=\"color: navy\">)</span> <i>&quot;noteO2&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;spo2Obs&quot;</i><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">Oxygen saturation, LOINC 20564-1, %</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">it</span><b> where </b>linkId = '222626668435'<span style=\"color: navy\"><b> -&gt; </b></span> bundle.entry<b> as </b><span style=\"color: maroon\">eR</span><span style=\"color: navy\">, </span> eR.resource = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Observation'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">oR</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr<span style=\"color: navy\"><b> -&gt; </b></span>oR.id<b> then </b>BuildBaseObs<span style=\"color: navy\">(</span><span style=\"color: maroon\">qr</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oR</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">eR</span><span style=\"color: navy\">)</span> <i>&quot;baseR&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oR.category = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'vital-signs'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Vital Signs'</span><span style=\"color: navy\">)</span> <i>&quot;catR&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oR.code = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://loinc.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'9279-1'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Respiratory rate'</span><span style=\"color: navy\">)</span> <i>&quot;codeR&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetQuantityValueFromItem<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oR</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'http://unitsofmeasure.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'/min'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'per minute'</span><span style=\"color: navy\">)</span> <i>&quot;valR&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetNoteFromNested<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oR</span><span style=\"color: navy\">)</span> <i>&quot;noteR&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;respObs&quot;</i><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">Respiratory rate, LOINC 9279-1, /min</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">it</span><b> where </b>linkId = '943347546713'<span style=\"color: navy\"><b> -&gt; </b></span> bundle.entry<b> as </b><span style=\"color: maroon\">eM</span><span style=\"color: navy\">, </span> eM.resource = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Observation'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">oM</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr<span style=\"color: navy\"><b> -&gt; </b></span>oM.id<b> then </b>BuildBaseObs<span style=\"color: navy\">(</span><span style=\"color: maroon\">qr</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oM</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">eM</span><span style=\"color: navy\">)</span> <i>&quot;baseMUAC&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oM.category = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'vital-signs'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Vital Signs'</span><span style=\"color: navy\">)</span> <i>&quot;catMUAC&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oM.code = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://loinc.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'9847-5'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Circumference'</span><span style=\"color: navy\">)</span> <i>&quot;codeMUAC&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetQuantityValueFromItem<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oM</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'http://unitsofmeasure.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'mm'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'millimeter'</span><span style=\"color: navy\">)</span> <i>&quot;valMUAC&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetNoteFromNested<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oM</span><span style=\"color: navy\">)</span> <i>&quot;noteMUAC&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;muacObs&quot;</i><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">MUAC, LOINC 9847-5, mm</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">it</span><b> where </b>linkId = '606919475524'<span style=\"color: navy\"><b> -&gt; </b></span> bundle.entry<b> as </b><span style=\"color: maroon\">eBMI</span><span style=\"color: navy\">, </span> eBMI.resource = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Observation'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">oBMI</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr<span style=\"color: navy\"><b> -&gt; </b></span>oBMI.id<b> then </b>BuildBaseObs<span style=\"color: navy\">(</span><span style=\"color: maroon\">qr</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oBMI</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">eBMI</span><span style=\"color: navy\">)</span> <i>&quot;baseBMI&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oBMI.category = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'vital-signs'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Vital Signs'</span><span style=\"color: navy\">)</span> <i>&quot;catBMI&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>oBMI.code = <b>cc</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'http://loinc.org'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'39156-5'</span><span style=\"color: navy\">, </span><span style=\"color: blue\">'Body mass index (BMI) [Ratio]'</span><span style=\"color: navy\">)</span> <i>&quot;codeBMI&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetStringValueFromItem<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oBMI</span><span style=\"color: navy\">)</span> <i>&quot;valBMI&quot;</i><span style=\"color: navy\">;</span>\r\n    it<b> then </b>SetNoteFromNested<span style=\"color: navy\">(</span><span style=\"color: maroon\">it</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">oBMI</span><span style=\"color: navy\">)</span> <i>&quot;noteBMI&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;bmiObs&quot;</i><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">BMI, LOINC 39156-5, as string if provided</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>BuildBaseObs<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">qr</span><span style=\"color: navy\"> : </span>QR, <b>target</b> <span style=\"color: maroon\">obs</span><span style=\"color: navy\"> : </span>Observation, <b>target</b> <span style=\"color: maroon\">entry</span><span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  qr<span style=\"color: navy\"><b> -&gt; </b></span>entry.request<b> as </b><span style=\"color: maroon\">req</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr<span style=\"color: navy\"><b> -&gt; </b></span>req.method = <span style=\"color: blue\">'POST'</span> <i>&quot;reqMethod&quot;</i><span style=\"color: navy\">;</span>\r\n    qr<span style=\"color: navy\"><b> -&gt; </b></span>req.url = <span style=\"color: blue\">'Observation'</span> <i>&quot;reqUrl&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;entryRequest&quot;</i><span style=\"color: navy\">;</span>\r\n  qr<span style=\"color: navy\"><b> -&gt; </b></span>obs.id = <b>uuid</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span><b> then </b>SetFullUrl<span style=\"color: navy\">(</span><span style=\"color: maroon\">obs</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">entry</span><span style=\"color: navy\">)</span> <i>&quot;setIdAndFullUrl&quot;</i><span style=\"color: navy\">;</span>\r\n  qr<span style=\"color: navy\"><b> -&gt; </b></span>obs.status = <span style=\"color: blue\">'final'</span> <i>&quot;setStatus&quot;</i><span style=\"color: navy\">;</span>\r\n  qr.subject<b> as </b><span style=\"color: maroon\">s</span><span style=\"color: navy\"><b> -&gt; </b></span>obs.subject = <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\">r</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    s.reference<b> as </b><span style=\"color: maroon\">ref</span><span style=\"color: navy\"><b> -&gt; </b></span>r.reference = <span style=\"color: maroon\">ref</span> <i>&quot;subRef&quot;</i><span style=\"color: navy\">;</span>\r\n    s.display<b> as </b><span style=\"color: maroon\">disp</span><span style=\"color: navy\"><b> -&gt; </b></span>r.display = <span style=\"color: maroon\">disp</span> <i>&quot;subDisp&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;setSubject&quot;</i><span style=\"color: navy\">;</span>\r\n  qr.authored<b> as </b><span style=\"color: maroon\">t</span><span style=\"color: navy\"><b> -&gt; </b></span>obs.effective = <span style=\"color: maroon\">t</span> <i>&quot;setEffective&quot;</i><span style=\"color: navy\">;</span>\r\n  qr.authored<b> as </b><span style=\"color: maroon\">t</span><span style=\"color: navy\"><b> -&gt; </b></span>obs.issued = <span style=\"color: maroon\">t</span> <i>&quot;setIssued&quot;</i><span style=\"color: navy\">;</span>\r\n  qr<span style=\"color: navy\"><b> -&gt; </b></span>obs.derivedFrom = <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\">dr</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    qr.id<b> as </b><span style=\"color: maroon\">id</span><span style=\"color: navy\"><b> -&gt; </b></span>dr.reference = <b>append</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'QuestionnaireResponse/'</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">id</span><span style=\"color: navy\">)</span> <i>&quot;derRef&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;setDerivedFrom&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>SetQuantityValueFromItem<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">it</span><span style=\"color: navy\"> : </span>Element, <b>target</b> <span style=\"color: maroon\">obs</span><span style=\"color: navy\"> : </span>Observation, <b>source</b> <span style=\"color: maroon\">sys</span><span style=\"color: navy\"> : </span>string, <b>source</b> <span style=\"color: maroon\">ucode</span><span style=\"color: navy\"> : </span>string, <b>source</b> <span style=\"color: maroon\">utext</span><span style=\"color: navy\"> : </span>string<span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  it.answer<b> as </b><span style=\"color: maroon\">a</span><span style=\"color: navy\"><b> -&gt; </b></span>obs.value = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Quantity'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">q</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    a.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>q.value = <span style=\"color: maroon\">v</span> <i>&quot;qVal&quot;</i><span style=\"color: navy\">;</span>\r\n    sys<span style=\"color: navy\"><b> -&gt; </b></span>q.system = <span style=\"color: maroon\">sys</span> <i>&quot;qSys&quot;</i><span style=\"color: navy\">;</span>\r\n    ucode<span style=\"color: navy\"><b> -&gt; </b></span>q.code = <span style=\"color: maroon\">ucode</span> <i>&quot;qCode&quot;</i><span style=\"color: navy\">;</span>\r\n    utext<span style=\"color: navy\"><b> -&gt; </b></span>q.unit = <span style=\"color: maroon\">utext</span> <i>&quot;qUnit&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;setQuantity&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>SetStringValueFromItem<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">it</span><span style=\"color: navy\"> : </span>Element, <b>target</b> <span style=\"color: maroon\">obs</span><span style=\"color: navy\"> : </span>Observation<span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  it.answer<b> as </b><span style=\"color: maroon\">a</span><span style=\"color: navy\"><b> -&gt; </b></span>obs.value = <span style=\"color: maroon\">a.value</span> <i>&quot;setString&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>SetNoteFromNested<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">it</span><span style=\"color: navy\"> : </span>Element, <b>target</b> <span style=\"color: maroon\">obs</span><span style=\"color: navy\"> : </span>Observation<span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  it.answer<b> as </b><span style=\"color: maroon\">a</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    a.item<b> as </b><span style=\"color: maroon\">ni</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      ni.answer<b> as </b><span style=\"color: maroon\">na</span><b> where </b>na.value.exists()<span style=\"color: navy\"><b> -&gt; </b></span>obs.note = <b>create</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'Annotation'</span><span style=\"color: navy\">)</span><b> as </b><span style=\"color: maroon\">an</span><b> then</b><span style=\"color: navy\"> {\r\n</span>        na.value<b> as </b><span style=\"color: maroon\">txt</span><span style=\"color: navy\"><b> -&gt; </b></span>an.text = <span style=\"color: maroon\">txt</span> <i>&quot;noteTxt&quot;</i><span style=\"color: navy\">;</span>\r\n      <span style=\"color: navy\">}</span> <i>&quot;addNote&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;scanNested&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;ifNested&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>SetFullUrl<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">obs</span><span style=\"color: navy\"> : </span>Observation, <b>target</b> <span style=\"color: maroon\">entry</span><span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  obs.id<b> as </b><span style=\"color: maroon\">id</span><span style=\"color: navy\"><b> -&gt; </b></span>entry.fullUrl = <b>append</b><span style=\"color: navy\">(</span><span style=\"color: blue\">'https://fhir.slade360.co.ke/fhir/Observation/'</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">id</span><span style=\"color: navy\">)</span> <i>&quot;assignFullUrl&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span></pre></div>"
  },
  "url" : "https://fhir.slade360.co.ke/fhir/StructureMap/VitalSignsExtract",
  "version" : "0.1.0",
  "name" : "VitalSignsExtract",
  "title" : "Vital Signs Extraction",
  "status" : "active",
  "date" : "2025-11-27T07:06:33+00:00",
  "publisher" : "Kathurima Kimathi",
  "contact" : [
    {
      "name" : "Kathurima Kimathi",
      "telecom" : [
        {
          "system" : "url",
          "value" : "https://www.linkedin.com/in/kathurima-kimathi/"
        },
        {
          "system" : "email",
          "value" : "kathurimakimathi415@gmail.com"
        }
      ]
    },
    {
      "name" : "Oscar John",
      "telecom" : [
        {
          "system" : "email",
          "value" : "oscarjohnotieno@gmail.com",
          "use" : "work"
        }
      ]
    },
    {
      "name" : "Kennedy Omondi",
      "telecom" : [
        {
          "system" : "email",
          "value" : "kennankole@gmail.com",
          "use" : "work"
        }
      ]
    }
  ],
  "description" : "Extracts Observation resources from a QuestionnaireResponse to the Vital Signs questionnaire.",
  "structure" : [
    {
      "url" : "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse",
      "mode" : "source",
      "alias" : "QR"
    },
    {
      "url" : "http://hl7.org/fhir/StructureDefinition/Bundle",
      "mode" : "target",
      "alias" : "Bundle"
    },
    {
      "url" : "http://hl7.org/fhir/StructureDefinition/Observation",
      "mode" : "target",
      "alias" : "Observation"
    }
  ],
  "group" : [
    {
      "name" : "VitalSignsExtract",
      "input" : [
        {
          "name" : "qr",
          "type" : "QR",
          "mode" : "source"
        },
        {
          "name" : "bundle",
          "type" : "Bundle",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "setBundleType",
          "source" : [
            {
              "context" : "qr"
            }
          ],
          "target" : [
            {
              "context" : "bundle",
              "element" : "type",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueString" : "transaction"
                }
              ]
            }
          ]
        },
        {
          "name" : "heightObs",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "it",
              "condition" : "linkId = '834591352448'"
            }
          ],
          "target" : [
            {
              "context" : "bundle",
              "element" : "entry",
              "variable" : "eH"
            },
            {
              "context" : "eH",
              "element" : "resource",
              "variable" : "oH",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Observation"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "baseH",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oH",
                  "element" : "id"
                }
              ],
              "dependent" : [
                {
                  "name" : "BuildBaseObs",
                  "parameter" : [
                    {
                      "valueId" : "qr"
                    },
                    {
                      "valueId" : "oH"
                    },
                    {
                      "valueId" : "eH"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "catH",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oH",
                  "element" : "category",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://terminology.hl7.org/CodeSystem/observation-category"
                    },
                    {
                      "valueString" : "vital-signs"
                    },
                    {
                      "valueString" : "Vital Signs"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "codeH",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oH",
                  "element" : "code",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://loinc.org"
                    },
                    {
                      "valueString" : "8302-2"
                    },
                    {
                      "valueString" : "Body Height"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "valH",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetQuantityValueFromItem",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oH"
                    },
                    {
                      "valueString" : "http://unitsofmeasure.org"
                    },
                    {
                      "valueString" : "cm"
                    },
                    {
                      "valueString" : "centimeter"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "noteH",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetNoteFromNested",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oH"
                    }
                  ]
                }
              ]
            }
          ],
          "documentation" : "Height, LOINC 8302-2, cm"
        },
        {
          "name" : "weightObs",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "it",
              "condition" : "linkId = '612376851550'"
            }
          ],
          "target" : [
            {
              "context" : "bundle",
              "element" : "entry",
              "variable" : "eW"
            },
            {
              "context" : "eW",
              "element" : "resource",
              "variable" : "oW",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Observation"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "baseW",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oW",
                  "element" : "id"
                }
              ],
              "dependent" : [
                {
                  "name" : "BuildBaseObs",
                  "parameter" : [
                    {
                      "valueId" : "qr"
                    },
                    {
                      "valueId" : "oW"
                    },
                    {
                      "valueId" : "eW"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "catW",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oW",
                  "element" : "category",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://terminology.hl7.org/CodeSystem/observation-category"
                    },
                    {
                      "valueString" : "vital-signs"
                    },
                    {
                      "valueString" : "Vital Signs"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "codeW",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oW",
                  "element" : "code",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://loinc.org"
                    },
                    {
                      "valueString" : "29463-7"
                    },
                    {
                      "valueString" : "Body Weight"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "valW",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetQuantityValueFromItem",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oW"
                    },
                    {
                      "valueString" : "http://unitsofmeasure.org"
                    },
                    {
                      "valueString" : "kg"
                    },
                    {
                      "valueString" : "kilogram"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "noteW",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetNoteFromNested",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oW"
                    }
                  ]
                }
              ]
            }
          ],
          "documentation" : "Weight, LOINC 29463-7, kg"
        },
        {
          "name" : "pulseObs",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "it",
              "condition" : "linkId = '118945747144'"
            }
          ],
          "target" : [
            {
              "context" : "bundle",
              "element" : "entry",
              "variable" : "eP"
            },
            {
              "context" : "eP",
              "element" : "resource",
              "variable" : "oP",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Observation"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "baseP",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oP",
                  "element" : "id"
                }
              ],
              "dependent" : [
                {
                  "name" : "BuildBaseObs",
                  "parameter" : [
                    {
                      "valueId" : "qr"
                    },
                    {
                      "valueId" : "oP"
                    },
                    {
                      "valueId" : "eP"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "catP",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oP",
                  "element" : "category",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://terminology.hl7.org/CodeSystem/observation-category"
                    },
                    {
                      "valueString" : "vital-signs"
                    },
                    {
                      "valueString" : "Vital Signs"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "codeP",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oP",
                  "element" : "code",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://loinc.org"
                    },
                    {
                      "valueString" : "8889-8"
                    },
                    {
                      "valueString" : "Heart rate by Pulse oximetry"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "valP",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetQuantityValueFromItem",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oP"
                    },
                    {
                      "valueString" : "http://unitsofmeasure.org"
                    },
                    {
                      "valueString" : "/min"
                    },
                    {
                      "valueString" : "per minute"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "noteP",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetNoteFromNested",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oP"
                    }
                  ]
                }
              ]
            }
          ],
          "documentation" : "Pulse rate, LOINC 8889-8, /min"
        },
        {
          "name" : "systolicObs",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "it",
              "condition" : "linkId = '961601071435'"
            }
          ],
          "target" : [
            {
              "context" : "bundle",
              "element" : "entry",
              "variable" : "eS"
            },
            {
              "context" : "eS",
              "element" : "resource",
              "variable" : "oS",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Observation"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "baseS",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oS",
                  "element" : "id"
                }
              ],
              "dependent" : [
                {
                  "name" : "BuildBaseObs",
                  "parameter" : [
                    {
                      "valueId" : "qr"
                    },
                    {
                      "valueId" : "oS"
                    },
                    {
                      "valueId" : "eS"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "catS",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oS",
                  "element" : "category",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://terminology.hl7.org/CodeSystem/observation-category"
                    },
                    {
                      "valueString" : "vital-signs"
                    },
                    {
                      "valueString" : "Vital Signs"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "codeS",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oS",
                  "element" : "code",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://loinc.org"
                    },
                    {
                      "valueString" : "8480-6"
                    },
                    {
                      "valueString" : "Systolic blood pressure"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "valS",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetQuantityValueFromItem",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oS"
                    },
                    {
                      "valueString" : "http://unitsofmeasure.org"
                    },
                    {
                      "valueString" : "mm[Hg]"
                    },
                    {
                      "valueString" : "millimeter of mercury"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "noteS",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetNoteFromNested",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oS"
                    }
                  ]
                }
              ]
            }
          ],
          "documentation" : "Systolic BP, LOINC 8480-6, mm[Hg]"
        },
        {
          "name" : "diastolicObs",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "it",
              "condition" : "linkId = '354414349687'"
            }
          ],
          "target" : [
            {
              "context" : "bundle",
              "element" : "entry",
              "variable" : "eD"
            },
            {
              "context" : "eD",
              "element" : "resource",
              "variable" : "oD",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Observation"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "baseD",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oD",
                  "element" : "id"
                }
              ],
              "dependent" : [
                {
                  "name" : "BuildBaseObs",
                  "parameter" : [
                    {
                      "valueId" : "qr"
                    },
                    {
                      "valueId" : "oD"
                    },
                    {
                      "valueId" : "eD"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "catD",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oD",
                  "element" : "category",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://terminology.hl7.org/CodeSystem/observation-category"
                    },
                    {
                      "valueString" : "vital-signs"
                    },
                    {
                      "valueString" : "Vital Signs"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "codeD",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oD",
                  "element" : "code",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://loinc.org"
                    },
                    {
                      "valueString" : "8462-4"
                    },
                    {
                      "valueString" : "Diastolic blood pressure"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "valD",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetQuantityValueFromItem",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oD"
                    },
                    {
                      "valueString" : "http://unitsofmeasure.org"
                    },
                    {
                      "valueString" : "mm[Hg]"
                    },
                    {
                      "valueString" : "millimeter of mercury"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "noteD",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetNoteFromNested",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oD"
                    }
                  ]
                }
              ]
            }
          ],
          "documentation" : "Diastolic BP, LOINC 8462-4, mm[Hg]"
        },
        {
          "name" : "tempObs",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "it",
              "condition" : "linkId = '608221161831'"
            }
          ],
          "target" : [
            {
              "context" : "bundle",
              "element" : "entry",
              "variable" : "eT"
            },
            {
              "context" : "eT",
              "element" : "resource",
              "variable" : "oT",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Observation"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "baseT",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oT",
                  "element" : "id"
                }
              ],
              "dependent" : [
                {
                  "name" : "BuildBaseObs",
                  "parameter" : [
                    {
                      "valueId" : "qr"
                    },
                    {
                      "valueId" : "oT"
                    },
                    {
                      "valueId" : "eT"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "catT",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oT",
                  "element" : "category",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://terminology.hl7.org/CodeSystem/observation-category"
                    },
                    {
                      "valueString" : "vital-signs"
                    },
                    {
                      "valueString" : "Vital Signs"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "codeT",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oT",
                  "element" : "code",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://loinc.org"
                    },
                    {
                      "valueString" : "8310-5"
                    },
                    {
                      "valueString" : "Body Temperature"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "valT",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetQuantityValueFromItem",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oT"
                    },
                    {
                      "valueString" : "http://unitsofmeasure.org"
                    },
                    {
                      "valueString" : "Cel"
                    },
                    {
                      "valueString" : "degree Celsius"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "noteT",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetNoteFromNested",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oT"
                    }
                  ]
                }
              ]
            }
          ],
          "documentation" : "Temperature, LOINC 8310-5, Cel"
        },
        {
          "name" : "spo2Obs",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "it",
              "condition" : "linkId = '851250344540'"
            }
          ],
          "target" : [
            {
              "context" : "bundle",
              "element" : "entry",
              "variable" : "eO2"
            },
            {
              "context" : "eO2",
              "element" : "resource",
              "variable" : "oO2",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Observation"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "baseO2",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oO2",
                  "element" : "id"
                }
              ],
              "dependent" : [
                {
                  "name" : "BuildBaseObs",
                  "parameter" : [
                    {
                      "valueId" : "qr"
                    },
                    {
                      "valueId" : "oO2"
                    },
                    {
                      "valueId" : "eO2"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "catO2",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oO2",
                  "element" : "category",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://terminology.hl7.org/CodeSystem/observation-category"
                    },
                    {
                      "valueString" : "vital-signs"
                    },
                    {
                      "valueString" : "Vital Signs"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "codeO2",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oO2",
                  "element" : "code",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://loinc.org"
                    },
                    {
                      "valueString" : "20564-1"
                    },
                    {
                      "valueString" : "Oxygen saturation in Blood"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "valO2",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetQuantityValueFromItem",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oO2"
                    },
                    {
                      "valueString" : "http://unitsofmeasure.org"
                    },
                    {
                      "valueString" : "%"
                    },
                    {
                      "valueString" : "percent"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "noteO2",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetNoteFromNested",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oO2"
                    }
                  ]
                }
              ]
            }
          ],
          "documentation" : "Oxygen saturation, LOINC 20564-1, %"
        },
        {
          "name" : "respObs",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "it",
              "condition" : "linkId = '222626668435'"
            }
          ],
          "target" : [
            {
              "context" : "bundle",
              "element" : "entry",
              "variable" : "eR"
            },
            {
              "context" : "eR",
              "element" : "resource",
              "variable" : "oR",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Observation"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "baseR",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oR",
                  "element" : "id"
                }
              ],
              "dependent" : [
                {
                  "name" : "BuildBaseObs",
                  "parameter" : [
                    {
                      "valueId" : "qr"
                    },
                    {
                      "valueId" : "oR"
                    },
                    {
                      "valueId" : "eR"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "catR",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oR",
                  "element" : "category",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://terminology.hl7.org/CodeSystem/observation-category"
                    },
                    {
                      "valueString" : "vital-signs"
                    },
                    {
                      "valueString" : "Vital Signs"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "codeR",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oR",
                  "element" : "code",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://loinc.org"
                    },
                    {
                      "valueString" : "9279-1"
                    },
                    {
                      "valueString" : "Respiratory rate"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "valR",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetQuantityValueFromItem",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oR"
                    },
                    {
                      "valueString" : "http://unitsofmeasure.org"
                    },
                    {
                      "valueString" : "/min"
                    },
                    {
                      "valueString" : "per minute"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "noteR",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetNoteFromNested",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oR"
                    }
                  ]
                }
              ]
            }
          ],
          "documentation" : "Respiratory rate, LOINC 9279-1, /min"
        },
        {
          "name" : "muacObs",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "it",
              "condition" : "linkId = '943347546713'"
            }
          ],
          "target" : [
            {
              "context" : "bundle",
              "element" : "entry",
              "variable" : "eM"
            },
            {
              "context" : "eM",
              "element" : "resource",
              "variable" : "oM",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Observation"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "baseMUAC",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oM",
                  "element" : "id"
                }
              ],
              "dependent" : [
                {
                  "name" : "BuildBaseObs",
                  "parameter" : [
                    {
                      "valueId" : "qr"
                    },
                    {
                      "valueId" : "oM"
                    },
                    {
                      "valueId" : "eM"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "catMUAC",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oM",
                  "element" : "category",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://terminology.hl7.org/CodeSystem/observation-category"
                    },
                    {
                      "valueString" : "vital-signs"
                    },
                    {
                      "valueString" : "Vital Signs"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "codeMUAC",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oM",
                  "element" : "code",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://loinc.org"
                    },
                    {
                      "valueString" : "9847-5"
                    },
                    {
                      "valueString" : "Circumference"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "valMUAC",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetQuantityValueFromItem",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oM"
                    },
                    {
                      "valueString" : "http://unitsofmeasure.org"
                    },
                    {
                      "valueString" : "mm"
                    },
                    {
                      "valueString" : "millimeter"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "noteMUAC",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetNoteFromNested",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oM"
                    }
                  ]
                }
              ]
            }
          ],
          "documentation" : "MUAC, LOINC 9847-5, mm"
        },
        {
          "name" : "bmiObs",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "it",
              "condition" : "linkId = '606919475524'"
            }
          ],
          "target" : [
            {
              "context" : "bundle",
              "element" : "entry",
              "variable" : "eBMI"
            },
            {
              "context" : "eBMI",
              "element" : "resource",
              "variable" : "oBMI",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Observation"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "baseBMI",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oBMI",
                  "element" : "id"
                }
              ],
              "dependent" : [
                {
                  "name" : "BuildBaseObs",
                  "parameter" : [
                    {
                      "valueId" : "qr"
                    },
                    {
                      "valueId" : "oBMI"
                    },
                    {
                      "valueId" : "eBMI"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "catBMI",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oBMI",
                  "element" : "category",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://terminology.hl7.org/CodeSystem/observation-category"
                    },
                    {
                      "valueString" : "vital-signs"
                    },
                    {
                      "valueString" : "Vital Signs"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "codeBMI",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "oBMI",
                  "element" : "code",
                  "transform" : "cc",
                  "parameter" : [
                    {
                      "valueString" : "http://loinc.org"
                    },
                    {
                      "valueString" : "39156-5"
                    },
                    {
                      "valueString" : "Body mass index (BMI) [Ratio]"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "valBMI",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetStringValueFromItem",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oBMI"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "noteBMI",
              "source" : [
                {
                  "context" : "it"
                }
              ],
              "dependent" : [
                {
                  "name" : "SetNoteFromNested",
                  "parameter" : [
                    {
                      "valueId" : "it"
                    },
                    {
                      "valueId" : "oBMI"
                    }
                  ]
                }
              ]
            }
          ],
          "documentation" : "BMI, LOINC 39156-5, as string if provided"
        }
      ]
    },
    {
      "name" : "BuildBaseObs",
      "input" : [
        {
          "name" : "qr",
          "type" : "QR",
          "mode" : "source"
        },
        {
          "name" : "obs",
          "type" : "Observation",
          "mode" : "target"
        },
        {
          "name" : "entry",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "entryRequest",
          "source" : [
            {
              "context" : "qr"
            }
          ],
          "target" : [
            {
              "context" : "entry",
              "element" : "request",
              "variable" : "req"
            }
          ],
          "rule" : [
            {
              "name" : "reqMethod",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "req",
                  "element" : "method",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "POST"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "reqUrl",
              "source" : [
                {
                  "context" : "qr"
                }
              ],
              "target" : [
                {
                  "context" : "req",
                  "element" : "url",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "Observation"
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "setIdAndFullUrl",
          "source" : [
            {
              "context" : "qr"
            }
          ],
          "target" : [
            {
              "context" : "obs",
              "element" : "id",
              "transform" : "uuid"
            }
          ],
          "dependent" : [
            {
              "name" : "SetFullUrl",
              "parameter" : [
                {
                  "valueId" : "obs"
                },
                {
                  "valueId" : "entry"
                }
              ]
            }
          ]
        },
        {
          "name" : "setStatus",
          "source" : [
            {
              "context" : "qr"
            }
          ],
          "target" : [
            {
              "context" : "obs",
              "element" : "status",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueString" : "final"
                }
              ]
            }
          ]
        },
        {
          "name" : "setSubject",
          "source" : [
            {
              "context" : "qr",
              "element" : "subject",
              "variable" : "s"
            }
          ],
          "target" : [
            {
              "context" : "obs",
              "element" : "subject",
              "variable" : "r",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Reference"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "subRef",
              "source" : [
                {
                  "context" : "s",
                  "element" : "reference",
                  "variable" : "ref"
                }
              ],
              "target" : [
                {
                  "context" : "r",
                  "element" : "reference",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueId" : "ref"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "subDisp",
              "source" : [
                {
                  "context" : "s",
                  "element" : "display",
                  "variable" : "disp"
                }
              ],
              "target" : [
                {
                  "context" : "r",
                  "element" : "display",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueId" : "disp"
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "setEffective",
          "source" : [
            {
              "context" : "qr",
              "element" : "authored",
              "variable" : "t"
            }
          ],
          "target" : [
            {
              "context" : "obs",
              "element" : "effective",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "t"
                }
              ]
            }
          ]
        },
        {
          "name" : "setIssued",
          "source" : [
            {
              "context" : "qr",
              "element" : "authored",
              "variable" : "t"
            }
          ],
          "target" : [
            {
              "context" : "obs",
              "element" : "issued",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "t"
                }
              ]
            }
          ]
        },
        {
          "name" : "setDerivedFrom",
          "source" : [
            {
              "context" : "qr"
            }
          ],
          "target" : [
            {
              "context" : "obs",
              "element" : "derivedFrom",
              "variable" : "dr",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Reference"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "derRef",
              "source" : [
                {
                  "context" : "qr",
                  "element" : "id",
                  "variable" : "id"
                }
              ],
              "target" : [
                {
                  "context" : "dr",
                  "element" : "reference",
                  "transform" : "append",
                  "parameter" : [
                    {
                      "valueString" : "QuestionnaireResponse/"
                    },
                    {
                      "valueId" : "id"
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "SetQuantityValueFromItem",
      "input" : [
        {
          "name" : "it",
          "type" : "Element",
          "mode" : "source"
        },
        {
          "name" : "obs",
          "type" : "Observation",
          "mode" : "target"
        },
        {
          "name" : "sys",
          "type" : "string",
          "mode" : "source"
        },
        {
          "name" : "ucode",
          "type" : "string",
          "mode" : "source"
        },
        {
          "name" : "utext",
          "type" : "string",
          "mode" : "source"
        }
      ],
      "rule" : [
        {
          "name" : "setQuantity",
          "source" : [
            {
              "context" : "it",
              "element" : "answer",
              "variable" : "a"
            }
          ],
          "target" : [
            {
              "context" : "obs",
              "element" : "value",
              "variable" : "q",
              "transform" : "create",
              "parameter" : [
                {
                  "valueString" : "Quantity"
                }
              ]
            }
          ],
          "rule" : [
            {
              "name" : "qVal",
              "source" : [
                {
                  "context" : "a",
                  "element" : "value",
                  "variable" : "v"
                }
              ],
              "target" : [
                {
                  "context" : "q",
                  "element" : "value",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueId" : "v"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "qSys",
              "source" : [
                {
                  "context" : "sys"
                }
              ],
              "target" : [
                {
                  "context" : "q",
                  "element" : "system",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueId" : "sys"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "qCode",
              "source" : [
                {
                  "context" : "ucode"
                }
              ],
              "target" : [
                {
                  "context" : "q",
                  "element" : "code",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueId" : "ucode"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "qUnit",
              "source" : [
                {
                  "context" : "utext"
                }
              ],
              "target" : [
                {
                  "context" : "q",
                  "element" : "unit",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueId" : "utext"
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "SetStringValueFromItem",
      "input" : [
        {
          "name" : "it",
          "type" : "Element",
          "mode" : "source"
        },
        {
          "name" : "obs",
          "type" : "Observation",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "setString",
          "source" : [
            {
              "context" : "it",
              "element" : "answer",
              "variable" : "a"
            }
          ],
          "target" : [
            {
              "context" : "obs",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "a.value"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "SetNoteFromNested",
      "input" : [
        {
          "name" : "it",
          "type" : "Element",
          "mode" : "source"
        },
        {
          "name" : "obs",
          "type" : "Observation",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "ifNested",
          "source" : [
            {
              "context" : "it",
              "element" : "answer",
              "variable" : "a"
            }
          ],
          "rule" : [
            {
              "name" : "scanNested",
              "source" : [
                {
                  "context" : "a",
                  "element" : "item",
                  "variable" : "ni"
                }
              ],
              "rule" : [
                {
                  "name" : "addNote",
                  "source" : [
                    {
                      "context" : "ni",
                      "element" : "answer",
                      "variable" : "na",
                      "condition" : "na.value.exists()"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "obs",
                      "element" : "note",
                      "variable" : "an",
                      "transform" : "create",
                      "parameter" : [
                        {
                          "valueString" : "Annotation"
                        }
                      ]
                    }
                  ],
                  "rule" : [
                    {
                      "name" : "noteTxt",
                      "source" : [
                        {
                          "context" : "na",
                          "element" : "value",
                          "variable" : "txt"
                        }
                      ],
                      "target" : [
                        {
                          "context" : "an",
                          "element" : "text",
                          "transform" : "copy",
                          "parameter" : [
                            {
                              "valueId" : "txt"
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "SetFullUrl",
      "input" : [
        {
          "name" : "obs",
          "type" : "Observation",
          "mode" : "source"
        },
        {
          "name" : "entry",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "assignFullUrl",
          "source" : [
            {
              "context" : "obs",
              "element" : "id",
              "variable" : "id"
            }
          ],
          "target" : [
            {
              "context" : "entry",
              "element" : "fullUrl",
              "transform" : "append",
              "parameter" : [
                {
                  "valueString" : "https://fhir.slade360.co.ke/fhir/Observation/"
                },
                {
                  "valueId" : "id"
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}