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 - TTL Representation

Active as of 2025-11-27

Raw ttl | Download

@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

# - resource -------------------------------------------------------------------

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