WHO SMART Guidelines - Measles Immunization
0.1.0 - ci-build

WHO SMART Guidelines - Measles Immunization, published by WHO. 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/WorldHealthOrganization/smart-example-immz and changes regularly. See the Directory of published versions

: null - XML Representation

Draft as of 2024-08-12

Raw xml | Download



<StructureMap xmlns="http://hl7.org/fhir">
  <id value="IMMZD1LMToResources"/>
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureMap IMMZD1LMToResources</b></p><a name="IMMZD1LMToResources"> </a><a name="hcIMMZD1LMToResources"> </a><a name="IMMZD1LMToResources-en-US"> </a><pre class="fml">
<b>map</b><span style="color: navy"> &quot;</span>http://smart.who.int/immunizations-measles/StructureMap/IMMZD1LMToResources<span style="color: navy">&quot; = &quot;</span>IMMZD1LMToResources<span style="color: navy">&quot;

</span><span style="color: navy">// </span><span style="color: green">Immunization - Client History - Transform logical model to resources</span>

<b>uses</b><span style="color: navy"> &quot;</span><a href="StructureDefinition-IMMZD1ClientHistoryMeasles.html" title="IMMZ.D1 Capture Client History for Measles">http://smart.who.int/immunizations-measles/StructureDefinition/IMMZD1ClientHistoryMeasles</a><span style="color: navy">&quot; </span><b>alias </b>IMMZD1 <b>as </b><b>source</b>
<b>uses</b><span style="color: navy"> &quot;</span><a href="http://hl7.org/fhir/R4/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>

<b>group </b>IMMZD1ToBundle<span style="color: navy">(</span><b>source</b> <span style="color: maroon">immz</span><span style="color: navy"> : </span>IMMZD1, <b>target</b> <span style="color: maroon">bundle</span><span style="color: navy"> : </span>Bundle<span style="color: navy">)</span><span style="color: navy"> {
</span>  immz<span style="color: navy"><b> -&gt; </b></span>bundle.type = <span style="color: blue">'collection'</span> <i>&quot;SetCollection&quot;</i><span style="color: navy">;</span>
  immz.patient<b> as </b><span style="color: maroon">patient</span><b> then</b><span style="color: navy"> {
</span>    immz.dose0<b> as </b><span style="color: maroon">content</span><span style="color: navy"><b> -&gt; </b></span> bundle.entry<b> as </b><span style="color: maroon">entry</span><span style="color: navy">, </span> entry.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">obs</span><b> then</b><span style="color: navy"> {
</span>      patient<span style="color: navy"><b> -&gt; </b></span>obs.subject = <span style="color: maroon">patient</span> <i>&quot;SetPatient&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.code = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableConcept'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">code</span><b> then</b><span style="color: navy"> {
</span>        content<span style="color: navy"><b> -&gt; </b></span>code.coding = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">coding</span><b> then</b><span style="color: navy"> {
</span>          content<span style="color: navy"><b> -&gt; </b></span>coding.system = <span style="color: blue">'http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1'</span> <i>&quot;SetObsSystem&quot;</i><span style="color: navy">;</span>
          content<span style="color: navy"><b> -&gt; </b></span>coding.code = <span style="color: blue">'DE80'</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
        <span style="color: navy">}</span> <i>&quot;SetObsCoding&quot;</i><span style="color: navy">;</span>
      <span style="color: navy">}</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.value = <span style="color: maroon">content</span> <i>&quot;SetValue&quot;</i><span style="color: navy">;</span>
    <span style="color: navy">}</span> <i>&quot;SetDose0Observation&quot;</i><span style="color: navy">;</span>
    immz.completedPrimarySeries<b> as </b><span style="color: maroon">content</span><span style="color: navy"><b> -&gt; </b></span> bundle.entry<b> as </b><span style="color: maroon">entry</span><span style="color: navy">, </span> entry.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">obs</span><b> then</b><span style="color: navy"> {
</span>      patient<span style="color: navy"><b> -&gt; </b></span>obs.subject = <span style="color: maroon">patient</span> <i>&quot;SetPatient&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.code = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableConcept'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">code</span><b> then</b><span style="color: navy"> {
</span>        content<span style="color: navy"><b> -&gt; </b></span>code.coding = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">coding</span><b> then</b><span style="color: navy"> {
</span>          content<span style="color: navy"><b> -&gt; </b></span>coding.system = <span style="color: blue">'http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1'</span> <i>&quot;SetObsSystem&quot;</i><span style="color: navy">;</span>
          content<span style="color: navy"><b> -&gt; </b></span>coding.code = <span style="color: blue">'DE8'</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
        <span style="color: navy">}</span> <i>&quot;SetObsCoding&quot;</i><span style="color: navy">;</span>
      <span style="color: navy">}</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.value = <span style="color: maroon">content</span> <i>&quot;SetValue&quot;</i><span style="color: navy">;</span>
    <span style="color: navy">}</span> <i>&quot;SetPrimarySeriesObservation&quot;</i><span style="color: navy">;</span>
    immz.dateSeriesCompleted<b> as </b><span style="color: maroon">content</span><span style="color: navy"><b> -&gt; </b></span> bundle.entry<b> as </b><span style="color: maroon">entry</span><span style="color: navy">, </span> entry.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">obs</span><b> then</b><span style="color: navy"> {
</span>      patient<span style="color: navy"><b> -&gt; </b></span>obs.subject = <span style="color: maroon">patient</span> <i>&quot;SetPatient&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.code = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableConcept'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">code</span><b> then</b><span style="color: navy"> {
</span>        content<span style="color: navy"><b> -&gt; </b></span>code.coding = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">coding</span><b> then</b><span style="color: navy"> {
</span>          content<span style="color: navy"><b> -&gt; </b></span>coding.system = <span style="color: blue">'http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1'</span> <i>&quot;SetObsSystem&quot;</i><span style="color: navy">;</span>
          content<span style="color: navy"><b> -&gt; </b></span>coding.code = <span style="color: blue">'DE81'</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
        <span style="color: navy">}</span> <i>&quot;SetObsCoding&quot;</i><span style="color: navy">;</span>
      <span style="color: navy">}</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.value = <span style="color: maroon">content</span> <i>&quot;SetValue&quot;</i><span style="color: navy">;</span>
    <span style="color: navy">}</span> <i>&quot;SetDateSeriesObservation&quot;</i><span style="color: navy">;</span>
    immz.hivStatus<b> as </b><span style="color: maroon">content</span><span style="color: navy"><b> -&gt; </b></span> bundle.entry<b> as </b><span style="color: maroon">entry</span><span style="color: navy">, </span> entry.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">obs</span><b> then</b><span style="color: navy"> {
</span>      patient<span style="color: navy"><b> -&gt; </b></span>obs.subject = <span style="color: maroon">patient</span> <i>&quot;SetPatient&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.code = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableConcept'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">code</span><b> then</b><span style="color: navy"> {
</span>        content<span style="color: navy"><b> -&gt; </b></span>code.coding = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">coding</span><b> then</b><span style="color: navy"> {
</span>          content<span style="color: navy"><b> -&gt; </b></span>coding.system = <span style="color: blue">'http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1'</span> <i>&quot;SetObsSystem&quot;</i><span style="color: navy">;</span>
          content<span style="color: navy"><b> -&gt; </b></span>coding.code = <span style="color: blue">'DE10'</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
        <span style="color: navy">}</span> <i>&quot;SetObsCoding&quot;</i><span style="color: navy">;</span>
      <span style="color: navy">}</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.value = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableConcept'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">code</span><b> then</b><span style="color: navy"> {
</span>        content<span style="color: navy"><b> -&gt; </b></span>code.coding = <span style="color: maroon">content</span> <i>&quot;SetCoding&quot;</i><span style="color: navy">;</span>
      <span style="color: navy">}</span> <i>&quot;SetCodeableConcept&quot;</i><span style="color: navy">;</span>
    <span style="color: navy">}</span> <i>&quot;SetHIVStatusObservation&quot;</i><span style="color: navy">;</span>
    immz.pretermBirth<b> as </b><span style="color: maroon">content</span><span style="color: navy"><b> -&gt; </b></span> bundle.entry<b> as </b><span style="color: maroon">entry</span><span style="color: navy">, </span> entry.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">obs</span><b> then</b><span style="color: navy"> {
</span>      patient<span style="color: navy"><b> -&gt; </b></span>obs.subject = <span style="color: maroon">patient</span> <i>&quot;SetPatient&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.code = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableConcept'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">code</span><b> then</b><span style="color: navy"> {
</span>        content<span style="color: navy"><b> -&gt; </b></span>code.coding = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">coding</span><b> then</b><span style="color: navy"> {
</span>          content<span style="color: navy"><b> -&gt; </b></span>coding.system = <span style="color: blue">'http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1'</span> <i>&quot;SetObsSystem&quot;</i><span style="color: navy">;</span>
          content<span style="color: navy"><b> -&gt; </b></span>coding.code = <span style="color: blue">'DE15'</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
        <span style="color: navy">}</span> <i>&quot;SetObsCoding&quot;</i><span style="color: navy">;</span>
      <span style="color: navy">}</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.value = <span style="color: maroon">content</span> <i>&quot;SetValue&quot;</i><span style="color: navy">;</span>
    <span style="color: navy">}</span> <i>&quot;SetPretermBirthObservation&quot;</i><span style="color: navy">;</span>
    immz.severelyImmunosuppressed<b> as </b><span style="color: maroon">content</span><span style="color: navy"><b> -&gt; </b></span> bundle.entry<b> as </b><span style="color: maroon">entry</span><span style="color: navy">, </span> entry.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">obs</span><b> then</b><span style="color: navy"> {
</span>      patient<span style="color: navy"><b> -&gt; </b></span>obs.subject = <span style="color: maroon">patient</span> <i>&quot;SetPatient&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.code = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableConcept'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">code</span><b> then</b><span style="color: navy"> {
</span>        content<span style="color: navy"><b> -&gt; </b></span>code.coding = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">coding</span><b> then</b><span style="color: navy"> {
</span>          content<span style="color: navy"><b> -&gt; </b></span>coding.system = <span style="color: blue">'http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1'</span> <i>&quot;SetObsSystem&quot;</i><span style="color: navy">;</span>
          content<span style="color: navy"><b> -&gt; </b></span>coding.code = <span style="color: blue">'DE92'</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
        <span style="color: navy">}</span> <i>&quot;SetObsCoding&quot;</i><span style="color: navy">;</span>
      <span style="color: navy">}</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.value = <span style="color: maroon">content</span> <i>&quot;SetValue&quot;</i><span style="color: navy">;</span>
    <span style="color: navy">}</span> <i>&quot;SetSeverelyImmunosuppressedObservation&quot;</i><span style="color: navy">;</span>
    immz.artStartDate<b> as </b><span style="color: maroon">content</span><span style="color: navy"><b> -&gt; </b></span> bundle.entry<b> as </b><span style="color: maroon">entry</span><span style="color: navy">, </span> entry.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">obs</span><b> then</b><span style="color: navy"> {
</span>      patient<span style="color: navy"><b> -&gt; </b></span>obs.subject = <span style="color: maroon">patient</span> <i>&quot;SetPatient&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.code = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableConcept'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">code</span><b> then</b><span style="color: navy"> {
</span>        content<span style="color: navy"><b> -&gt; </b></span>code.coding = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">coding</span><b> then</b><span style="color: navy"> {
</span>          content<span style="color: navy"><b> -&gt; </b></span>coding.system = <span style="color: blue">'http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1'</span> <i>&quot;SetObsSystem&quot;</i><span style="color: navy">;</span>
          content<span style="color: navy"><b> -&gt; </b></span>coding.code = <span style="color: blue">'DE49'</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
        <span style="color: navy">}</span> <i>&quot;SetObsCoding&quot;</i><span style="color: navy">;</span>
      <span style="color: navy">}</span> <i>&quot;SetObsCode&quot;</i><span style="color: navy">;</span>
      content<span style="color: navy"><b> -&gt; </b></span>obs.value = <span style="color: maroon">content</span> <i>&quot;SetValue&quot;</i><span style="color: navy">;</span>
    <span style="color: navy">}</span> <i>&quot;SetARTDateObservation&quot;</i><span style="color: navy">;</span>
    immz.vaccineHistory<b> as </b><span style="color: maroon">history</span><span style="color: navy"><b> -&gt; </b></span> bundle.entry<b> as </b><span style="color: maroon">entry</span><span style="color: navy">, </span> entry.resource = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Immunization'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">imm</span><b> then</b><span style="color: navy"> {
</span>      patient<span style="color: navy"><b> -&gt; </b></span>imm.patient = <span style="color: maroon">patient</span> <i>&quot;SetPatient&quot;</i><span style="color: navy">;</span>
      history<span style="color: navy"><b> -&gt; </b></span>imm.status = <span style="color: blue">'completed'</span> <i>&quot;SetStatus&quot;</i><span style="color: navy">;</span>
      history.vaccineType<b> as </b><span style="color: maroon">vaccine</span><span style="color: navy"><b> -&gt; </b></span>imm.vaccineCode<b> as </b><span style="color: maroon">code</span><b> then</b><span style="color: navy"> {
</span>        vaccine<span style="color: navy"><b> -&gt; </b></span>code.coding = <span style="color: maroon">vaccine</span> <i>&quot;SetVaccineCoding&quot;</i><span style="color: navy">;</span>
      <span style="color: navy">}</span> <i>&quot;SetVaccineType&quot;</i><span style="color: navy">;</span>
      history.vaccineDate<b> as </b><span style="color: maroon">date</span><span style="color: navy"><b> -&gt; </b></span>imm.occurrence = <b>cast</b><span style="color: navy">(</span><span style="color: maroon">date</span><span style="color: navy">, </span><span style="color: blue">'string'</span><span style="color: navy">)</span> <i>&quot;SetDate&quot;</i><span style="color: navy">;</span>
    <span style="color: navy">}</span> <i>&quot;SetVaccineHistoryObservation&quot;</i><span style="color: navy">;</span>
  <span style="color: navy">}</span> <i>&quot;GetPatient&quot;</i><span style="color: navy">;</span>
<span style="color: navy">}

</span></pre></div>
  </text>
  <url
       value="http://smart.who.int/immunizations-measles/StructureMap/IMMZD1LMToResources"/>
  <version value="0.1.0"/>
  <name value="IMMZD1LMToResources"/>
  <status value="draft"/>
  <date value="2024-08-12T09:03:21+00:00"/>
  <publisher value="WHO"/>
  <contact>
    <name value="WHO"/>
    <telecom>
      <system value="url"/>
      <value value="http://who.int"/>
    </telecom>
  </contact>
  <description
               value="Immunization - Client History - Transform logical model to resources"/>
  <structure>
    <url
         value="http://smart.who.int/immunizations-measles/StructureDefinition/IMMZD1ClientHistoryMeasles"/>
    <mode value="source"/>
    <alias value="IMMZD1"/>
  </structure>
  <structure>
    <url value="http://hl7.org/fhir/StructureDefinition/Bundle"/>
    <mode value="target"/>
    <alias value="Bundle"/>
  </structure>
  <group>
    <name value="IMMZD1ToBundle"/>
    <typeMode value="none"/>
    <input>
      <name value="immz"/>
      <type value="IMMZD1"/>
      <mode value="source"/>
    </input>
    <input>
      <name value="bundle"/>
      <type value="Bundle"/>
      <mode value="target"/>
    </input>
    <rule>
      <name value="SetCollection"/>
      <source>
        <context value="immz"/>
      </source>
      <target>
        <context value="bundle"/>
        <contextType value="variable"/>
        <element value="type"/>
        <transform value="copy"/>
        <parameter>
          <valueString value="collection"/>
        </parameter>
      </target>
    </rule>
    <rule>
      <name value="GetPatient"/>
      <source>
        <context value="immz"/>
        <element value="patient"/>
        <variable value="patient"/>
      </source>
      <rule>
        <name value="SetDose0Observation"/>
        <source>
          <context value="immz"/>
          <element value="dose0"/>
          <variable value="content"/>
        </source>
        <target>
          <context value="bundle"/>
          <contextType value="variable"/>
          <element value="entry"/>
          <variable value="entry"/>
        </target>
        <target>
          <context value="entry"/>
          <contextType value="variable"/>
          <element value="resource"/>
          <variable value="obs"/>
          <transform value="create"/>
          <parameter>
            <valueString value="Observation"/>
          </parameter>
        </target>
        <rule>
          <name value="SetPatient"/>
          <source>
            <context value="patient"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="subject"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="patient"/>
            </parameter>
          </target>
        </rule>
        <rule>
          <name value="SetObsCode"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="code"/>
            <variable value="code"/>
            <transform value="create"/>
            <parameter>
              <valueString value="CodeableConcept"/>
            </parameter>
          </target>
          <rule>
            <name value="SetObsCoding"/>
            <source>
              <context value="content"/>
            </source>
            <target>
              <context value="code"/>
              <contextType value="variable"/>
              <element value="coding"/>
              <variable value="coding"/>
              <transform value="create"/>
              <parameter>
                <valueString value="Coding"/>
              </parameter>
            </target>
            <rule>
              <name value="SetObsSystem"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="system"/>
                <transform value="copy"/>
                <parameter>
                  <valueString
                               value="http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1"/>
                </parameter>
              </target>
            </rule>
            <rule>
              <name value="SetObsCode"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="code"/>
                <transform value="copy"/>
                <parameter>
                  <valueString value="DE80"/>
                </parameter>
              </target>
            </rule>
          </rule>
        </rule>
        <rule>
          <name value="SetValue"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="value"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="content"/>
            </parameter>
          </target>
        </rule>
      </rule>
      <rule>
        <name value="SetPrimarySeriesObservation"/>
        <source>
          <context value="immz"/>
          <element value="completedPrimarySeries"/>
          <variable value="content"/>
        </source>
        <target>
          <context value="bundle"/>
          <contextType value="variable"/>
          <element value="entry"/>
          <variable value="entry"/>
        </target>
        <target>
          <context value="entry"/>
          <contextType value="variable"/>
          <element value="resource"/>
          <variable value="obs"/>
          <transform value="create"/>
          <parameter>
            <valueString value="Observation"/>
          </parameter>
        </target>
        <rule>
          <name value="SetPatient"/>
          <source>
            <context value="patient"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="subject"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="patient"/>
            </parameter>
          </target>
        </rule>
        <rule>
          <name value="SetObsCode"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="code"/>
            <variable value="code"/>
            <transform value="create"/>
            <parameter>
              <valueString value="CodeableConcept"/>
            </parameter>
          </target>
          <rule>
            <name value="SetObsCoding"/>
            <source>
              <context value="content"/>
            </source>
            <target>
              <context value="code"/>
              <contextType value="variable"/>
              <element value="coding"/>
              <variable value="coding"/>
              <transform value="create"/>
              <parameter>
                <valueString value="Coding"/>
              </parameter>
            </target>
            <rule>
              <name value="SetObsSystem"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="system"/>
                <transform value="copy"/>
                <parameter>
                  <valueString
                               value="http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1"/>
                </parameter>
              </target>
            </rule>
            <rule>
              <name value="SetObsCode"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="code"/>
                <transform value="copy"/>
                <parameter>
                  <valueString value="DE8"/>
                </parameter>
              </target>
            </rule>
          </rule>
        </rule>
        <rule>
          <name value="SetValue"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="value"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="content"/>
            </parameter>
          </target>
        </rule>
      </rule>
      <rule>
        <name value="SetDateSeriesObservation"/>
        <source>
          <context value="immz"/>
          <element value="dateSeriesCompleted"/>
          <variable value="content"/>
        </source>
        <target>
          <context value="bundle"/>
          <contextType value="variable"/>
          <element value="entry"/>
          <variable value="entry"/>
        </target>
        <target>
          <context value="entry"/>
          <contextType value="variable"/>
          <element value="resource"/>
          <variable value="obs"/>
          <transform value="create"/>
          <parameter>
            <valueString value="Observation"/>
          </parameter>
        </target>
        <rule>
          <name value="SetPatient"/>
          <source>
            <context value="patient"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="subject"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="patient"/>
            </parameter>
          </target>
        </rule>
        <rule>
          <name value="SetObsCode"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="code"/>
            <variable value="code"/>
            <transform value="create"/>
            <parameter>
              <valueString value="CodeableConcept"/>
            </parameter>
          </target>
          <rule>
            <name value="SetObsCoding"/>
            <source>
              <context value="content"/>
            </source>
            <target>
              <context value="code"/>
              <contextType value="variable"/>
              <element value="coding"/>
              <variable value="coding"/>
              <transform value="create"/>
              <parameter>
                <valueString value="Coding"/>
              </parameter>
            </target>
            <rule>
              <name value="SetObsSystem"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="system"/>
                <transform value="copy"/>
                <parameter>
                  <valueString
                               value="http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1"/>
                </parameter>
              </target>
            </rule>
            <rule>
              <name value="SetObsCode"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="code"/>
                <transform value="copy"/>
                <parameter>
                  <valueString value="DE81"/>
                </parameter>
              </target>
            </rule>
          </rule>
        </rule>
        <rule>
          <name value="SetValue"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="value"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="content"/>
            </parameter>
          </target>
        </rule>
      </rule>
      <rule>
        <name value="SetHIVStatusObservation"/>
        <source>
          <context value="immz"/>
          <element value="hivStatus"/>
          <variable value="content"/>
        </source>
        <target>
          <context value="bundle"/>
          <contextType value="variable"/>
          <element value="entry"/>
          <variable value="entry"/>
        </target>
        <target>
          <context value="entry"/>
          <contextType value="variable"/>
          <element value="resource"/>
          <variable value="obs"/>
          <transform value="create"/>
          <parameter>
            <valueString value="Observation"/>
          </parameter>
        </target>
        <rule>
          <name value="SetPatient"/>
          <source>
            <context value="patient"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="subject"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="patient"/>
            </parameter>
          </target>
        </rule>
        <rule>
          <name value="SetObsCode"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="code"/>
            <variable value="code"/>
            <transform value="create"/>
            <parameter>
              <valueString value="CodeableConcept"/>
            </parameter>
          </target>
          <rule>
            <name value="SetObsCoding"/>
            <source>
              <context value="content"/>
            </source>
            <target>
              <context value="code"/>
              <contextType value="variable"/>
              <element value="coding"/>
              <variable value="coding"/>
              <transform value="create"/>
              <parameter>
                <valueString value="Coding"/>
              </parameter>
            </target>
            <rule>
              <name value="SetObsSystem"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="system"/>
                <transform value="copy"/>
                <parameter>
                  <valueString
                               value="http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1"/>
                </parameter>
              </target>
            </rule>
            <rule>
              <name value="SetObsCode"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="code"/>
                <transform value="copy"/>
                <parameter>
                  <valueString value="DE10"/>
                </parameter>
              </target>
            </rule>
          </rule>
        </rule>
        <rule>
          <name value="SetCodeableConcept"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="value"/>
            <variable value="code"/>
            <transform value="create"/>
            <parameter>
              <valueString value="CodeableConcept"/>
            </parameter>
          </target>
          <rule>
            <name value="SetCoding"/>
            <source>
              <context value="content"/>
            </source>
            <target>
              <context value="code"/>
              <contextType value="variable"/>
              <element value="coding"/>
              <transform value="copy"/>
              <parameter>
                <valueId value="content"/>
              </parameter>
            </target>
          </rule>
        </rule>
      </rule>
      <rule>
        <name value="SetPretermBirthObservation"/>
        <source>
          <context value="immz"/>
          <element value="pretermBirth"/>
          <variable value="content"/>
        </source>
        <target>
          <context value="bundle"/>
          <contextType value="variable"/>
          <element value="entry"/>
          <variable value="entry"/>
        </target>
        <target>
          <context value="entry"/>
          <contextType value="variable"/>
          <element value="resource"/>
          <variable value="obs"/>
          <transform value="create"/>
          <parameter>
            <valueString value="Observation"/>
          </parameter>
        </target>
        <rule>
          <name value="SetPatient"/>
          <source>
            <context value="patient"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="subject"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="patient"/>
            </parameter>
          </target>
        </rule>
        <rule>
          <name value="SetObsCode"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="code"/>
            <variable value="code"/>
            <transform value="create"/>
            <parameter>
              <valueString value="CodeableConcept"/>
            </parameter>
          </target>
          <rule>
            <name value="SetObsCoding"/>
            <source>
              <context value="content"/>
            </source>
            <target>
              <context value="code"/>
              <contextType value="variable"/>
              <element value="coding"/>
              <variable value="coding"/>
              <transform value="create"/>
              <parameter>
                <valueString value="Coding"/>
              </parameter>
            </target>
            <rule>
              <name value="SetObsSystem"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="system"/>
                <transform value="copy"/>
                <parameter>
                  <valueString
                               value="http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1"/>
                </parameter>
              </target>
            </rule>
            <rule>
              <name value="SetObsCode"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="code"/>
                <transform value="copy"/>
                <parameter>
                  <valueString value="DE15"/>
                </parameter>
              </target>
            </rule>
          </rule>
        </rule>
        <rule>
          <name value="SetValue"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="value"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="content"/>
            </parameter>
          </target>
        </rule>
      </rule>
      <rule>
        <name value="SetSeverelyImmunosuppressedObservation"/>
        <source>
          <context value="immz"/>
          <element value="severelyImmunosuppressed"/>
          <variable value="content"/>
        </source>
        <target>
          <context value="bundle"/>
          <contextType value="variable"/>
          <element value="entry"/>
          <variable value="entry"/>
        </target>
        <target>
          <context value="entry"/>
          <contextType value="variable"/>
          <element value="resource"/>
          <variable value="obs"/>
          <transform value="create"/>
          <parameter>
            <valueString value="Observation"/>
          </parameter>
        </target>
        <rule>
          <name value="SetPatient"/>
          <source>
            <context value="patient"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="subject"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="patient"/>
            </parameter>
          </target>
        </rule>
        <rule>
          <name value="SetObsCode"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="code"/>
            <variable value="code"/>
            <transform value="create"/>
            <parameter>
              <valueString value="CodeableConcept"/>
            </parameter>
          </target>
          <rule>
            <name value="SetObsCoding"/>
            <source>
              <context value="content"/>
            </source>
            <target>
              <context value="code"/>
              <contextType value="variable"/>
              <element value="coding"/>
              <variable value="coding"/>
              <transform value="create"/>
              <parameter>
                <valueString value="Coding"/>
              </parameter>
            </target>
            <rule>
              <name value="SetObsSystem"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="system"/>
                <transform value="copy"/>
                <parameter>
                  <valueString
                               value="http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1"/>
                </parameter>
              </target>
            </rule>
            <rule>
              <name value="SetObsCode"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="code"/>
                <transform value="copy"/>
                <parameter>
                  <valueString value="DE92"/>
                </parameter>
              </target>
            </rule>
          </rule>
        </rule>
        <rule>
          <name value="SetValue"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="value"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="content"/>
            </parameter>
          </target>
        </rule>
      </rule>
      <rule>
        <name value="SetARTDateObservation"/>
        <source>
          <context value="immz"/>
          <element value="artStartDate"/>
          <variable value="content"/>
        </source>
        <target>
          <context value="bundle"/>
          <contextType value="variable"/>
          <element value="entry"/>
          <variable value="entry"/>
        </target>
        <target>
          <context value="entry"/>
          <contextType value="variable"/>
          <element value="resource"/>
          <variable value="obs"/>
          <transform value="create"/>
          <parameter>
            <valueString value="Observation"/>
          </parameter>
        </target>
        <rule>
          <name value="SetPatient"/>
          <source>
            <context value="patient"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="subject"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="patient"/>
            </parameter>
          </target>
        </rule>
        <rule>
          <name value="SetObsCode"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="code"/>
            <variable value="code"/>
            <transform value="create"/>
            <parameter>
              <valueString value="CodeableConcept"/>
            </parameter>
          </target>
          <rule>
            <name value="SetObsCoding"/>
            <source>
              <context value="content"/>
            </source>
            <target>
              <context value="code"/>
              <contextType value="variable"/>
              <element value="coding"/>
              <variable value="coding"/>
              <transform value="create"/>
              <parameter>
                <valueString value="Coding"/>
              </parameter>
            </target>
            <rule>
              <name value="SetObsSystem"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="system"/>
                <transform value="copy"/>
                <parameter>
                  <valueString
                               value="http://smart.who.int/immunizations-measles/CodeSystem/IMMZ.D1"/>
                </parameter>
              </target>
            </rule>
            <rule>
              <name value="SetObsCode"/>
              <source>
                <context value="content"/>
              </source>
              <target>
                <context value="coding"/>
                <contextType value="variable"/>
                <element value="code"/>
                <transform value="copy"/>
                <parameter>
                  <valueString value="DE49"/>
                </parameter>
              </target>
            </rule>
          </rule>
        </rule>
        <rule>
          <name value="SetValue"/>
          <source>
            <context value="content"/>
          </source>
          <target>
            <context value="obs"/>
            <contextType value="variable"/>
            <element value="value"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="content"/>
            </parameter>
          </target>
        </rule>
      </rule>
      <rule>
        <name value="SetVaccineHistoryObservation"/>
        <source>
          <context value="immz"/>
          <element value="vaccineHistory"/>
          <variable value="history"/>
        </source>
        <target>
          <context value="bundle"/>
          <contextType value="variable"/>
          <element value="entry"/>
          <variable value="entry"/>
        </target>
        <target>
          <context value="entry"/>
          <contextType value="variable"/>
          <element value="resource"/>
          <variable value="imm"/>
          <transform value="create"/>
          <parameter>
            <valueString value="Immunization"/>
          </parameter>
        </target>
        <rule>
          <name value="SetPatient"/>
          <source>
            <context value="patient"/>
          </source>
          <target>
            <context value="imm"/>
            <contextType value="variable"/>
            <element value="patient"/>
            <transform value="copy"/>
            <parameter>
              <valueId value="patient"/>
            </parameter>
          </target>
        </rule>
        <rule>
          <name value="SetStatus"/>
          <source>
            <context value="history"/>
          </source>
          <target>
            <context value="imm"/>
            <contextType value="variable"/>
            <element value="status"/>
            <transform value="copy"/>
            <parameter>
              <valueString value="completed"/>
            </parameter>
          </target>
        </rule>
        <rule>
          <name value="SetVaccineType"/>
          <source>
            <context value="history"/>
            <element value="vaccineType"/>
            <variable value="vaccine"/>
          </source>
          <target>
            <context value="imm"/>
            <contextType value="variable"/>
            <element value="vaccineCode"/>
            <variable value="code"/>
          </target>
          <rule>
            <name value="SetVaccineCoding"/>
            <source>
              <context value="vaccine"/>
            </source>
            <target>
              <context value="code"/>
              <contextType value="variable"/>
              <element value="coding"/>
              <transform value="copy"/>
              <parameter>
                <valueId value="vaccine"/>
              </parameter>
            </target>
          </rule>
        </rule>
        <rule>
          <name value="SetDate"/>
          <source>
            <context value="history"/>
            <element value="vaccineDate"/>
            <variable value="date"/>
          </source>
          <target>
            <context value="imm"/>
            <contextType value="variable"/>
            <element value="occurrence"/>
            <transform value="cast"/>
            <parameter>
              <valueId value="date"/>
            </parameter>
            <parameter>
              <valueString value="string"/>
            </parameter>
          </target>
        </rule>
      </rule>
    </rule>
  </group>
</StructureMap>