<?xml version="1.0" encoding="UTF-8"?>
<library xmlns="urn:hl7-org:elm:r1" xmlns:t="urn:hl7-org:elm-types:r1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:fhir="http://hl7.org/fhir" xmlns:qdm43="urn:healthit-gov:qdm:v4_3" xmlns:qdm53="urn:healthit-gov:qdm:v5_3" xmlns:a="urn:hl7-org:cql-annotations:r1" localId="0">
   <annotation translatorOptions="EnableAnnotations,EnableLocators,DisableListDemotion,DisableListPromotion" signatureLevel="Overloads" xsi:type="a:CqlToElmInfo"/>
   <annotation message="An operand identifier reference is hiding another identifier of the same name." errorType="semantic" errorSeverity="warning" xsi:type="a:CqlToElmError"/>
   <annotation message="An operand identifier reference is hiding another identifier of the same name." errorType="semantic" errorSeverity="warning" xsi:type="a:CqlToElmError"/>
   <annotation message="An operand identifier reference is hiding another identifier of the same name." errorType="semantic" errorSeverity="warning" xsi:type="a:CqlToElmError"/>
   <annotation xsi:type="a:Annotation">
      <a:s r="387">
         <a:s>/*
 * Library: IMMZD2DTPolioSequentialIPVbOPVLogic (IMMZ.D2.DT.Polio.Sequential IPV–bOPV)
 * Rule: Determine if the client is due for a poliovirus vaccination according to the national immunization schedule
 * Decision Table: Sequential &quot;Bivalent oral polio vaccine (bOPV)–inactivated polio vaccine (IPV)&quot; schedule (in countries with high vaccination coverage [e.g. 90–95%] and low importation risk [where neighbouring countries and/or countries that share substantial population movement have a similarly high coverage])
 * Trigger: IMMZ.D2 Determine required vaccination(s) if any
 */
library IMMZD2DTPolioSequentialIPVbOPVLogic</a:s>
      </a:s>
   </annotation>
   <identifier id="IMMZD2DTPolioSequentialIPVbOPVLogic" system="http://smart.who.int/immunizations"/>
   <schemaIdentifier id="urn:hl7-org:elm" version="r1"/>
   <usings>
      <def localId="1" localIdentifier="System" uri="urn:hl7-org:elm-types:r1" version="1.0.0"/>
      <def localId="206" locator="9:1-9:26" localIdentifier="FHIR" uri="http://hl7.org/fhir" version="4.0.1">
         <annotation xsi:type="a:Annotation">
            <a:s r="206">
               <a:s>using </a:s>
               <a:s>
                  <a:s>FHIR</a:s>
               </a:s>
               <a:s> version '4.0.1'</a:s>
            </a:s>
         </annotation>
      </def>
   </usings>
   <includes>
      <def localId="208" locator="10:1-10:35" localIdentifier="FHIRHelpers" path="http://hl7.org/fhir/FHIRHelpers" version="4.0.1">
         <annotation xsi:type="a:Annotation">
            <a:s r="208">
               <a:s>include </a:s>
               <a:s>
                  <a:s>FHIRHelpers</a:s>
               </a:s>
               <a:s> version '4.0.1'</a:s>
            </a:s>
         </annotation>
      </def>
      <def localId="210" locator="12:1-12:55" localIdentifier="Encounter" path="http://smart.who.int/immunizations/IMMZD2DTPolioEncounterElements">
         <annotation xsi:type="a:Annotation">
            <a:s r="210">
               <a:s>include </a:s>
               <a:s>
                  <a:s>IMMZD2DTPolioEncounterElements</a:s>
               </a:s>
               <a:s> called Encounter</a:s>
            </a:s>
         </annotation>
      </def>
   </includes>
   <parameters>
      <def localId="212" locator="14:1-14:36" name="Today" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:s r="212">
               <a:s>parameter Today </a:s>
               <a:s r="216">
                  <a:s>Date</a:s>
               </a:s>
               <a:s> default </a:s>
               <a:s r="215">
                  <a:s>Today()</a:s>
               </a:s>
            </a:s>
         </annotation>
         <default localId="215" locator="14:30-14:36" xsi:type="Today"/>
         <parameterTypeSpecifier localId="216" locator="14:17-14:20" name="t:Date" xsi:type="NamedTypeSpecifier"/>
      </def>
   </parameters>
   <contexts>
      <def localId="221" locator="16:1-16:15" name="Patient"/>
   </contexts>
   <statements>
      <def localId="219" locator="16:1-16:15" name="Patient" context="Patient">
         <expression localId="220" xsi:type="SingletonFrom">
            <operand localId="218" locator="16:1-16:15" dataType="fhir:Patient" templateId="http://hl7.org/fhir/StructureDefinition/Patient" xsi:type="Retrieve"/>
         </expression>
      </def>
      <def localId="233" locator="39:1-41:53" name="Client is not due for IPV vaccination Case 1" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is not due for IPV vaccination Case 1"/>
            <a:t name="pseudocode" value="&quot;Immunization recommendation status&quot; = &quot;Not due&quot;"/>
            <a:s r="233">
               <a:s>/*
@output: Client is not due for IPV vaccination Case 1
@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Not due&quot;
*/
define &quot;Client is not due for IPV vaccination Case 1&quot;:
  </a:s>
               <a:s r="234">
                  <a:s r="236">
                     <a:s r="235">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="236">
                        <a:s>&quot;No poliovirus primary series doses were administered&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    and </a:s>
                  <a:s r="238">
                     <a:s r="237">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="238">
                        <a:s>&quot;Client's age is less than 8 weeks&quot;</a:s>
                     </a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="234" locator="40:3-41:53" xsi:type="And">
            <operand localId="236" locator="40:3-40:66" name="No poliovirus primary series doses were administered" libraryName="Encounter" xsi:type="ExpressionRef"/>
            <operand localId="238" locator="41:9-41:53" name="Client's age is less than 8 weeks" libraryName="Encounter" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="242" locator="47:1-49:85" name="Client is not due for IPV vaccination Case 2" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is not due for IPV vaccination Case 2"/>
            <a:t name="pseudocode" value="&quot;Immunization recommendation status&quot; = &quot;Not due&quot;"/>
            <a:s r="242">
               <a:s>/*
@output: Client is not due for IPV vaccination Case 2
@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Not due&quot;
*/
define &quot;Client is not due for IPV vaccination Case 2&quot;:
  </a:s>
               <a:s r="243">
                  <a:s r="245">
                     <a:s r="244">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="245">
                        <a:s>&quot;One poliovirus primary series dose was administered&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    and </a:s>
                  <a:s r="247">
                     <a:s r="246">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="247">
                        <a:s>&quot;The latest poliovirus dose was administered less than 4 weeks ago&quot;</a:s>
                     </a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="243" locator="48:3-49:85" xsi:type="And">
            <operand localId="245" locator="48:3-48:65" name="One poliovirus primary series dose was administered" libraryName="Encounter" xsi:type="ExpressionRef"/>
            <operand localId="247" locator="49:9-49:85" name="The latest poliovirus dose was administered less than 4 weeks ago" libraryName="Encounter" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="229" locator="55:1-57:53" name="Client is not due for IPV vaccination" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is not due for IPV vaccination"/>
            <a:t name="pseudocode" value="&quot;Immunization recommendation status&quot; = &quot;Not due&quot;"/>
            <a:s r="229">
               <a:s>/*
@output: Client is not due for IPV vaccination
@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Not due&quot;
*/
define &quot;Client is not due for IPV vaccination&quot;:
  </a:s>
               <a:s r="230">
                  <a:s r="239">
                     <a:s>&quot;Client is not due for IPV vaccination Case 1&quot;</a:s>
                  </a:s>
                  <a:s>
    or </a:s>
                  <a:s r="248">
                     <a:s>&quot;Client is not due for IPV vaccination Case 2&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="230" locator="56:3-57:53" xsi:type="Or">
            <operand localId="239" locator="56:3-56:48" name="Client is not due for IPV vaccination Case 1" xsi:type="ExpressionRef"/>
            <operand localId="248" locator="57:8-57:53" name="Client is not due for IPV vaccination Case 2" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="252" locator="66:1-73:5" name="Client is not due for IPV vaccination Guidance" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is not due for IPV vaccination Guidance"/>
            <a:s r="252">
               <a:s>/*
@output: Client is not due for IPV vaccination Guidance
@guidance = Should not vaccinate client with first IPV dose as client's age is less than 8 weeks. 
Check for any other vaccines due and inform the caregiver of when to come back for the first poliovirus dose.
@guidance = Should not vaccinate client with second IPV dose as the latest IPV dose was administered less than 4 weeks ago. 
Check for any other vaccines due and inform the caregiver of when to come back for the next dose.
*/
define &quot;Client is not due for IPV vaccination Guidance&quot;:
  </a:s>
               <a:s r="253">
                  <a:s>case
    </a:s>
                  <a:s r="254">
                     <a:s>when </a:s>
                     <a:s r="255">
                        <a:s>&quot;Client is not due for IPV vaccination Case 1&quot;</a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="256">
                        <a:s>'Should not vaccinate client with first IPV dose as client\'s age is less than 8 weeks. 
Check for any other vaccines due and inform the caregiver of when to come back for the first poliovirus dose.'</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="258">
                     <a:s>when </a:s>
                     <a:s r="259">
                        <a:s>&quot;Client is not due for IPV vaccination Case 2&quot;</a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="260">
                        <a:s>'Should not vaccinate client with second IPV dose as the latest IPV dose was administered less than 4 weeks ago. 
Check for any other vaccines due and inform the caregiver of when to come back for the next dose.'</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    else </a:s>
                  <a:s r="262">
                     <a:s>''</a:s>
                  </a:s>
                  <a:s>
  end</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="253" locator="67:3-73:5" xsi:type="Case">
            <caseItem localId="254" locator="68:5-68:260">
               <when localId="255" locator="68:10-68:55" name="Client is not due for IPV vaccination Case 1" xsi:type="ExpressionRef"/>
               <then localId="256" locator="68:62-68:260" valueType="t:String" value="Should not vaccinate client with first IPV dose as client's age is less than 8 weeks. &#xa;Check for any other vaccines due and inform the caregiver of when to come back for the first poliovirus dose." xsi:type="Literal"/>
            </caseItem>
            <caseItem localId="258" locator="70:5-70:273">
               <when localId="259" locator="70:10-70:55" name="Client is not due for IPV vaccination Case 2" xsi:type="ExpressionRef"/>
               <then localId="260" locator="70:62-70:273" valueType="t:String" value="Should not vaccinate client with second IPV dose as the latest IPV dose was administered less than 4 weeks ago. &#xa;Check for any other vaccines due and inform the caregiver of when to come back for the next dose." xsi:type="Literal"/>
            </caseItem>
            <else localId="262" locator="72:10-72:11" valueType="t:String" value="" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="272" locator="79:1-81:65" name="Client is due for IPV vaccination Case 1" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is due for IPV vaccination Case 1"/>
            <a:t name="pseudocode" value="&quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;IPV&quot;)"/>
            <a:s r="272">
               <a:s>/*
@output: Client is due for IPV vaccination Case 1
@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;IPV&quot;)
*/
define &quot;Client is due for IPV vaccination Case 1&quot;:
  </a:s>
               <a:s r="273">
                  <a:s r="275">
                     <a:s r="274">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="275">
                        <a:s>&quot;No poliovirus primary series doses were administered&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    and </a:s>
                  <a:s r="277">
                     <a:s r="276">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="277">
                        <a:s>&quot;Client's age is more than or equal to 8 weeks&quot;</a:s>
                     </a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="273" locator="80:3-81:65" xsi:type="And">
            <operand localId="275" locator="80:3-80:66" name="No poliovirus primary series doses were administered" libraryName="Encounter" xsi:type="ExpressionRef"/>
            <operand localId="277" locator="81:9-81:65" name="Client's age is more than or equal to 8 weeks" libraryName="Encounter" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="281" locator="87:1-89:85" name="Client is due for IPV vaccination Case 2" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is due for IPV vaccination Case 2"/>
            <a:t name="pseudocode" value="&quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;IPV&quot;)"/>
            <a:s r="281">
               <a:s>/*
@output: Client is due for IPV vaccination Case 2
@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;IPV&quot;)
*/
define &quot;Client is due for IPV vaccination Case 2&quot;:
  </a:s>
               <a:s r="282">
                  <a:s r="284">
                     <a:s r="283">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="284">
                        <a:s>&quot;One poliovirus primary series dose was administered&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    and </a:s>
                  <a:s r="286">
                     <a:s r="285">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="286">
                        <a:s>&quot;The latest poliovirus dose was administered more than 4 weeks ago&quot;</a:s>
                     </a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="282" locator="88:3-89:85" xsi:type="And">
            <operand localId="284" locator="88:3-88:65" name="One poliovirus primary series dose was administered" libraryName="Encounter" xsi:type="ExpressionRef"/>
            <operand localId="286" locator="89:9-89:85" name="The latest poliovirus dose was administered more than 4 weeks ago" libraryName="Encounter" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="268" locator="95:1-97:49" name="Client is due for IPV vaccination" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is due for IPV vaccination"/>
            <a:t name="pseudocode" value="&quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;IPV&quot;)"/>
            <a:s r="268">
               <a:s>/*
@output: Client is due for IPV vaccination
@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;IPV&quot;)
*/
define &quot;Client is due for IPV vaccination&quot;:
  </a:s>
               <a:s r="269">
                  <a:s r="278">
                     <a:s>&quot;Client is due for IPV vaccination Case 1&quot;</a:s>
                  </a:s>
                  <a:s>
    or </a:s>
                  <a:s r="287">
                     <a:s>&quot;Client is due for IPV vaccination Case 2&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="269" locator="96:3-97:49" xsi:type="Or">
            <operand localId="278" locator="96:3-96:44" name="Client is due for IPV vaccination Case 1" xsi:type="ExpressionRef"/>
            <operand localId="287" locator="97:8-97:49" name="Client is due for IPV vaccination Case 2" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="291" locator="106:1-113:5" name="Client is due for IPV vaccination Guidance" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is due for IPV vaccination Guidance"/>
            <a:s r="291">
               <a:s>/*
@output: Client is due for IPV vaccination Guidance
@guidance = Should vaccinate client with first IPV dose as client is within appropriate age range and IPV dose was not administered. 
Check for contraindications.
@guidance = Should vaccinate client with second IPV dose as the latest IPV dose was administered more than 4 weeks ago.
Check for contraindications.
*/
define &quot;Client is due for IPV vaccination Guidance&quot;:
  </a:s>
               <a:s r="292">
                  <a:s>case
    </a:s>
                  <a:s r="293">
                     <a:s>when </a:s>
                     <a:s r="294">
                        <a:s>&quot;Client is due for IPV vaccination Case 1&quot;</a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="295">
                        <a:s>'Should vaccinate client with first IPV dose as client is within appropriate age range and IPV dose was not administered. 
Check for contraindications.'</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="297">
                     <a:s>when </a:s>
                     <a:s r="298">
                        <a:s>&quot;Client is due for IPV vaccination Case 2&quot;</a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="299">
                        <a:s>'Should vaccinate client with second IPV dose as the latest IPV dose was administered more than 4 weeks ago.
Check for contraindications.'</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    else </a:s>
                  <a:s r="301">
                     <a:s>''</a:s>
                  </a:s>
                  <a:s>
  end</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="292" locator="107:3-113:5" xsi:type="Case">
            <caseItem localId="293" locator="108:5-108:209">
               <when localId="294" locator="108:10-108:51" name="Client is due for IPV vaccination Case 1" xsi:type="ExpressionRef"/>
               <then localId="295" locator="108:58-108:209" valueType="t:String" value="Should vaccinate client with first IPV dose as client is within appropriate age range and IPV dose was not administered. &#xa;Check for contraindications." xsi:type="Literal"/>
            </caseItem>
            <caseItem localId="297" locator="110:5-110:195">
               <when localId="298" locator="110:10-110:51" name="Client is due for IPV vaccination Case 2" xsi:type="ExpressionRef"/>
               <then localId="299" locator="110:58-110:195" valueType="t:String" value="Should vaccinate client with second IPV dose as the latest IPV dose was administered more than 4 weeks ago.&#xa;Check for contraindications." xsi:type="Literal"/>
            </caseItem>
            <else localId="301" locator="112:10-112:11" valueType="t:String" value="" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="311" locator="119:1-120:67" name="Client is due for bOPV vaccination Case 1" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is due for bOPV vaccination Case 1"/>
            <a:t name="pseudocode" value="&quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;bOPV&quot;)"/>
            <a:s r="311">
               <a:s>/*
@output: Client is due for bOPV vaccination Case 1
@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;bOPV&quot;)
*/
define &quot;Client is due for bOPV vaccination Case 1&quot;:
  </a:s>
               <a:s r="313">
                  <a:s r="312">
                     <a:s>Encounter</a:s>
                  </a:s>
                  <a:s>.</a:s>
                  <a:s r="313">
                     <a:s>&quot;Two poliovirus primary series doses were administered&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="313" locator="120:3-120:67" name="Two poliovirus primary series doses were administered" libraryName="Encounter" xsi:type="ExpressionRef"/>
      </def>
      <def localId="317" locator="126:1-128:85" name="Client is due for bOPV vaccination Case 2" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is due for bOPV vaccination Case 2"/>
            <a:t name="pseudocode" value="&quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;bOPV&quot;)"/>
            <a:s r="317">
               <a:s>/*
@output: Client is due for bOPV vaccination Case 2
@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;bOPV&quot;)
*/
define &quot;Client is due for bOPV vaccination Case 2&quot;:
  </a:s>
               <a:s r="318">
                  <a:s r="320">
                     <a:s r="319">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="320">
                        <a:s>&quot;Three poliovirus primary series doses were administered&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    and </a:s>
                  <a:s r="322">
                     <a:s r="321">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="322">
                        <a:s>&quot;The latest poliovirus dose was administered more than 4 weeks ago&quot;</a:s>
                     </a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="318" locator="127:3-128:85" xsi:type="And">
            <operand localId="320" locator="127:3-127:69" name="Three poliovirus primary series doses were administered" libraryName="Encounter" xsi:type="ExpressionRef"/>
            <operand localId="322" locator="128:9-128:85" name="The latest poliovirus dose was administered more than 4 weeks ago" libraryName="Encounter" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="307" locator="134:1-136:50" name="Client is due for bOPV vaccination" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is due for bOPV vaccination"/>
            <a:t name="pseudocode" value="&quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;bOPV&quot;)"/>
            <a:s r="307">
               <a:s>/*
@output: Client is due for bOPV vaccination
@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Due&quot; (where &quot;Type of poliovirus dose&quot; = &quot;bOPV&quot;)
*/
define &quot;Client is due for bOPV vaccination&quot;:
  </a:s>
               <a:s r="308">
                  <a:s r="314">
                     <a:s>&quot;Client is due for bOPV vaccination Case 1&quot;</a:s>
                  </a:s>
                  <a:s>
    or </a:s>
                  <a:s r="323">
                     <a:s>&quot;Client is due for bOPV vaccination Case 2&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="308" locator="135:3-136:50" xsi:type="Or">
            <operand localId="314" locator="135:3-135:45" name="Client is due for bOPV vaccination Case 1" xsi:type="ExpressionRef"/>
            <operand localId="323" locator="136:8-136:50" name="Client is due for bOPV vaccination Case 2" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="327" locator="145:1-152:5" name="Client is due for bOPV vaccination Guidance" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is due for bOPV vaccination Guidance"/>
            <a:s r="327">
               <a:s>/*
@output: Client is due for bOPV vaccination Guidance
@guidance = Should vaccinate client with first bOPV dose as two IPV doses were administered.
Check for contraindications.
@guidance = Should vaccinate client with second bOPV dose as the latest bOPV dose was administered more than 4 weeks ago.
Check for contraindications.
*/
define &quot;Client is due for bOPV vaccination Guidance&quot;:
  </a:s>
               <a:s r="328">
                  <a:s>case
    </a:s>
                  <a:s r="329">
                     <a:s>when </a:s>
                     <a:s r="330">
                        <a:s>&quot;Client is due for bOPV vaccination Case 1&quot;</a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="331">
                        <a:s>'Should vaccinate client with first bOPV dose as two IPV doses were administered.
Check for contraindications.'</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="333">
                     <a:s>when </a:s>
                     <a:s r="334">
                        <a:s>&quot;Client is due for bOPV vaccination Case 2&quot;</a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="335">
                        <a:s>'Should vaccinate client with second bOPV dose as the latest bOPV dose was administered more than 4 weeks ago.
Check for contraindications.'</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    else </a:s>
                  <a:s r="337">
                     <a:s>''</a:s>
                  </a:s>
                  <a:s>
  end</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="328" locator="146:3-152:5" xsi:type="Case">
            <caseItem localId="329" locator="147:5-147:169">
               <when localId="330" locator="147:10-147:52" name="Client is due for bOPV vaccination Case 1" xsi:type="ExpressionRef"/>
               <then localId="331" locator="147:59-147:169" valueType="t:String" value="Should vaccinate client with first bOPV dose as two IPV doses were administered.&#xa;Check for contraindications." xsi:type="Literal"/>
            </caseItem>
            <caseItem localId="333" locator="149:5-149:198">
               <when localId="334" locator="149:10-149:52" name="Client is due for bOPV vaccination Case 2" xsi:type="ExpressionRef"/>
               <then localId="335" locator="149:59-149:198" valueType="t:String" value="Should vaccinate client with second bOPV dose as the latest bOPV dose was administered more than 4 weeks ago.&#xa;Check for contraindications." xsi:type="Literal"/>
            </caseItem>
            <else localId="337" locator="151:10-151:11" valueType="t:String" value="" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="343" locator="158:1-160:85" name="Client is not due for bOPV vaccination" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is not due for bOPV vaccination"/>
            <a:t name="pseudocode" value="&quot;Immunization recommendation status&quot; = &quot;Not due&quot;"/>
            <a:s r="343">
               <a:s>/*
@output: Client is not due for bOPV vaccination
@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Not due&quot;
*/
define &quot;Client is not due for bOPV vaccination&quot;:
  </a:s>
               <a:s r="344">
                  <a:s r="346">
                     <a:s r="345">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="346">
                        <a:s>&quot;Three poliovirus primary series doses were administered&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    and </a:s>
                  <a:s r="348">
                     <a:s r="347">
                        <a:s>Encounter</a:s>
                     </a:s>
                     <a:s>.</a:s>
                     <a:s r="348">
                        <a:s>&quot;The latest poliovirus dose was administered less than 4 weeks ago&quot;</a:s>
                     </a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="344" locator="159:3-160:85" xsi:type="And">
            <operand localId="346" locator="159:3-159:69" name="Three poliovirus primary series doses were administered" libraryName="Encounter" xsi:type="ExpressionRef"/>
            <operand localId="348" locator="160:9-160:85" name="The latest poliovirus dose was administered less than 4 weeks ago" libraryName="Encounter" xsi:type="ExpressionRef"/>
         </expression>
      </def>
      <def localId="352" locator="167:1-168:215" name="Client is not due for bOPV vaccination Guidance" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Client is not due for bOPV vaccination Guidance"/>
            <a:t name="guidance" value="Should not vaccinate client with second bOPV dose as the latest bOPV dose was administered less than 4 weeks ago. &#xa;Check for any other vaccines due and inform the caregiver of when to come back for the next dose"/>
            <a:s r="352">
               <a:s>/*
@output: Client is not due for bOPV vaccination Guidance
@guidance: Should not vaccinate client with second bOPV dose as the latest bOPV dose was administered less than 4 weeks ago. 
Check for any other vaccines due and inform the caregiver of when to come back for the next dose
*/
define &quot;Client is not due for bOPV vaccination Guidance&quot;:
  </a:s>
               <a:s r="353">
                  <a:s>'Should not vaccinate client with second bOPV dose as the latest bOPV dose was administered less than 4 weeks ago. 
Check for any other vaccines due and inform the caregiver of when to come back for the next dose'</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="353" locator="168:3-168:215" valueType="t:String" value="Should not vaccinate client with second bOPV dose as the latest bOPV dose was administered less than 4 weeks ago. &#xa;Check for any other vaccines due and inform the caregiver of when to come back for the next dose" xsi:type="Literal"/>
      </def>
      <def localId="359" locator="176:1-177:68" name="Primary series is complete" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Primary series is complete"/>
            <a:t name="pseudocode" value="&quot;Immunization recommendation status&quot; = &quot;Further evaluation needed&quot;"/>
            <a:s r="359">
               <a:s>/*
@output: Primary series is complete
@pseudocode: &quot;Immunization recommendation status&quot; = &quot;Further evaluation needed&quot;
&quot;Completed the primary vaccination series&quot; = TRUE (where &quot;Vaccine type&quot; = &quot;Poliovirus-containing vaccines&quot;)
*/
define &quot;Primary series is complete&quot;:
  </a:s>
               <a:s r="361">
                  <a:s r="360">
                     <a:s>Encounter</a:s>
                  </a:s>
                  <a:s>.</a:s>
                  <a:s r="361">
                     <a:s>&quot;Four poliovirus primary series doses were administered&quot;</a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="361" locator="177:3-177:68" name="Four poliovirus primary series doses were administered" libraryName="Encounter" xsi:type="ExpressionRef"/>
      </def>
      <def localId="365" locator="184:1-185:155" name="Primary series is complete Guidance" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="output" value="Primary series is complete Guidance"/>
            <a:t name="guidance" value="Poliovirus primary series is complete. Assess if supplementary bOPV dose(s) are necessary and create a clinical note.&#xa;Check for any other vaccines due."/>
            <a:s r="365">
               <a:s>/*
@output: Primary series is complete Guidance
@guidance: Poliovirus primary series is complete. Assess if supplementary bOPV dose(s) are necessary and create a clinical note.
Check for any other vaccines due.
*/
define &quot;Primary series is complete Guidance&quot;:
  </a:s>
               <a:s r="366">
                  <a:s>'Poliovirus primary series is complete. Assess if supplementary bOPV dose(s) are necessary and create a clinical note.
Check for any other vaccines due.'</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="366" locator="185:3-185:155" valueType="t:String" value="Poliovirus primary series is complete. Assess if supplementary bOPV dose(s) are necessary and create a clinical note.&#xa;Check for any other vaccines due." xsi:type="Literal"/>
      </def>
      <def localId="224" locator="22:1-30:5" name="Guidance" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="dynamicValue" value="Guidance"/>
            <a:s r="224">
               <a:s>/*
@dynamicValue: Guidance
*/
define &quot;Guidance&quot;:
  </a:s>
               <a:s r="225">
                  <a:s>case 
    </a:s>
                  <a:s r="226">
                     <a:s>when </a:s>
                     <a:s r="249">
                        <a:s>&quot;Client is not due for IPV vaccination&quot;</a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="264">
                        <a:s>&quot;Client is not due for IPV vaccination Guidance&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="265">
                     <a:s>when </a:s>
                     <a:s r="288">
                        <a:s>&quot;Client is due for IPV vaccination&quot;</a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="303">
                        <a:s>&quot;Client is due for IPV vaccination Guidance&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="304">
                     <a:s>when </a:s>
                     <a:s r="324">
                        <a:s>&quot;Client is due for bOPV vaccination&quot;</a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="339">
                        <a:s>&quot;Client is due for bOPV vaccination Guidance&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="340">
                     <a:s>when </a:s>
                     <a:s r="349">
                        <a:s>&quot;Client is not due for bOPV vaccination&quot;</a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="355">
                        <a:s>&quot;Client is not due for bOPV vaccination Guidance&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="356">
                     <a:s>when </a:s>
                     <a:s r="362">
                        <a:s>&quot;Primary series is complete&quot;</a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="368">
                        <a:s>&quot;Primary series is complete Guidance&quot;</a:s>
                     </a:s>
                  </a:s>
                  <a:s> 
    else </a:s>
                  <a:s r="369">
                     <a:s>''</a:s>
                  </a:s>
                  <a:s>
  end</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="225" locator="23:3-30:5" xsi:type="Case">
            <caseItem localId="226" locator="24:5-24:102">
               <when localId="249" locator="24:10-24:48" name="Client is not due for IPV vaccination" xsi:type="ExpressionRef"/>
               <then localId="264" locator="24:55-24:102" name="Client is not due for IPV vaccination Guidance" xsi:type="ExpressionRef"/>
            </caseItem>
            <caseItem localId="265" locator="25:5-25:94">
               <when localId="288" locator="25:10-25:44" name="Client is due for IPV vaccination" xsi:type="ExpressionRef"/>
               <then localId="303" locator="25:51-25:94" name="Client is due for IPV vaccination Guidance" xsi:type="ExpressionRef"/>
            </caseItem>
            <caseItem localId="304" locator="26:5-26:96">
               <when localId="324" locator="26:10-26:45" name="Client is due for bOPV vaccination" xsi:type="ExpressionRef"/>
               <then localId="339" locator="26:52-26:96" name="Client is due for bOPV vaccination Guidance" xsi:type="ExpressionRef"/>
            </caseItem>
            <caseItem localId="340" locator="27:5-27:104">
               <when localId="349" locator="27:10-27:49" name="Client is not due for bOPV vaccination" xsi:type="ExpressionRef"/>
               <then localId="355" locator="27:56-27:104" name="Client is not due for bOPV vaccination Guidance" xsi:type="ExpressionRef"/>
            </caseItem>
            <caseItem localId="356" locator="28:5-28:80">
               <when localId="362" locator="28:10-28:37" name="Primary series is complete" xsi:type="ExpressionRef"/>
               <then localId="368" locator="28:44-28:80" name="Primary series is complete Guidance" xsi:type="ExpressionRef"/>
            </caseItem>
            <else localId="369" locator="29:10-29:11" valueType="t:String" value="" xsi:type="Literal"/>
         </expression>
      </def>
      <def localId="373" locator="32:1-33:45" name="Has Guidance" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:s r="373">
               <a:s>define &quot;Has Guidance&quot;:
  </a:s>
               <a:s r="374">
                  <a:s r="377">
                     <a:s r="375">
                        <a:s>&quot;Guidance&quot;</a:s>
                     </a:s>
                     <a:s> is not null</a:s>
                  </a:s>
                  <a:s> and </a:s>
                  <a:s r="384">
                     <a:s r="379">
                        <a:s>&quot;Guidance&quot;</a:s>
                     </a:s>
                     <a:s> != </a:s>
                     <a:s r="380">
                        <a:s>''</a:s>
                     </a:s>
                  </a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="374" locator="33:3-33:45" xsi:type="And">
            <operand localId="377" locator="33:3-33:24" xsi:type="Not">
               <operand localId="376" locator="33:3-33:24" xsi:type="IsNull">
                  <operand localId="375" locator="33:3-33:12" name="Guidance" xsi:type="ExpressionRef"/>
               </operand>
            </operand>
            <operand localId="384" locator="33:30-33:45" xsi:type="Not">
               <operand localId="378" locator="33:30-33:45" xsi:type="Equal">
                  <signature localId="382" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="383" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="379" locator="33:30-33:39" name="Guidance" xsi:type="ExpressionRef"/>
                  <operand localId="380" locator="33:44-33:45" valueType="t:String" value="" xsi:type="Literal"/>
               </operand>
            </operand>
         </expression>
      </def>
      <def localId="387" locator="192:1-211:5" name="Test Validation" context="Patient" accessLevel="Public">
         <annotation xsi:type="a:Annotation">
            <a:t name="test" value="Test expected results based on example patients"/>
            <a:s r="387">
               <a:s>/*
@test: Test expected results based on example patients
*/
define &quot;Test Validation&quot;:
  </a:s>
               <a:s r="388">
                  <a:s>case
    </a:s>
                  <a:s r="389">
                     <a:s>when </a:s>
                     <a:s r="390">
                        <a:s r="392">
                           <a:s r="391">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="392">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="393">
                           <a:s>'Polio56.2'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="399">
                        <a:s r="400">
                           <a:s>&quot;Client is not due for IPV vaccination Case 1&quot;</a:s>
                        </a:s>
                        <a:s> and </a:s>
                        <a:s r="401">
                           <a:s r="402">
                              <a:s>&quot;Guidance&quot;</a:s>
                           </a:s>
                           <a:s> = </a:s>
                           <a:s r="403">
                              <a:s>'Should not vaccinate client with first IPV dose as client\'s age is less than 8 weeks. 
Check for any other vaccines due and inform the caregiver of when to come back for the first poliovirus dose.'</a:s>
                           </a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="407">
                     <a:s>when </a:s>
                     <a:s r="408">
                        <a:s r="410">
                           <a:s r="409">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="410">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="411">
                           <a:s>'Polio57.2'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="417">
                        <a:s r="418">
                           <a:s>&quot;Client is due for IPV vaccination Case 1&quot;</a:s>
                        </a:s>
                        <a:s> and </a:s>
                        <a:s r="419">
                           <a:s r="420">
                              <a:s>&quot;Guidance&quot;</a:s>
                           </a:s>
                           <a:s> = </a:s>
                           <a:s r="421">
                              <a:s>'Should vaccinate client with first IPV dose as client is within appropriate age range and IPV dose was not administered. 
Check for contraindications.'</a:s>
                           </a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="425">
                     <a:s>when </a:s>
                     <a:s r="426">
                        <a:s r="428">
                           <a:s r="427">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="428">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="429">
                           <a:s>'Polio58.2'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="435">
                        <a:s r="436">
                           <a:s>&quot;Client is not due for IPV vaccination Case 2&quot;</a:s>
                        </a:s>
                        <a:s> and </a:s>
                        <a:s r="437">
                           <a:s r="438">
                              <a:s>&quot;Guidance&quot;</a:s>
                           </a:s>
                           <a:s> = </a:s>
                           <a:s r="439">
                              <a:s>'Should not vaccinate client with second IPV dose as the latest IPV dose was administered less than 4 weeks ago. 
Check for any other vaccines due and inform the caregiver of when to come back for the next dose.'</a:s>
                           </a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="443">
                     <a:s>when </a:s>
                     <a:s r="444">
                        <a:s r="446">
                           <a:s r="445">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="446">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="447">
                           <a:s>'Polio59.2'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="453">
                        <a:s r="454">
                           <a:s>&quot;Client is due for IPV vaccination Case 2&quot;</a:s>
                        </a:s>
                        <a:s> and </a:s>
                        <a:s r="455">
                           <a:s r="456">
                              <a:s>&quot;Guidance&quot;</a:s>
                           </a:s>
                           <a:s> = </a:s>
                           <a:s r="457">
                              <a:s>'Should vaccinate client with second IPV dose as the latest IPV dose was administered more than 4 weeks ago.
Check for contraindications.'</a:s>
                           </a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="461">
                     <a:s>when </a:s>
                     <a:s r="462">
                        <a:s r="464">
                           <a:s r="463">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="464">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="465">
                           <a:s>'Polio60.1'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="471">
                        <a:s r="472">
                           <a:s>&quot;Client is due for bOPV vaccination Case 1&quot;</a:s>
                        </a:s>
                        <a:s> and </a:s>
                        <a:s r="473">
                           <a:s r="474">
                              <a:s>&quot;Guidance&quot;</a:s>
                           </a:s>
                           <a:s> = </a:s>
                           <a:s r="475">
                              <a:s>'Should vaccinate client with first bOPV dose as two IPV doses were administered.
Check for contraindications.'</a:s>
                           </a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="479">
                     <a:s>when </a:s>
                     <a:s r="480">
                        <a:s r="482">
                           <a:s r="481">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="482">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="483">
                           <a:s>'Polio61.2'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="489">
                        <a:s r="490">
                           <a:s>&quot;Client is not due for bOPV vaccination&quot;</a:s>
                        </a:s>
                        <a:s> and </a:s>
                        <a:s r="491">
                           <a:s r="492">
                              <a:s>&quot;Guidance&quot;</a:s>
                           </a:s>
                           <a:s> = </a:s>
                           <a:s r="493">
                              <a:s>'Should not vaccinate client with second bOPV dose as the latest bOPV dose was administered less than 4 weeks ago. 
Check for any other vaccines due and inform the caregiver of when to come back for the next dose'</a:s>
                           </a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="497">
                     <a:s>when </a:s>
                     <a:s r="498">
                        <a:s r="500">
                           <a:s r="499">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="500">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="501">
                           <a:s>'Polio62.2'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="507">
                        <a:s r="508">
                           <a:s>&quot;Client is due for bOPV vaccination Case 2&quot;</a:s>
                        </a:s>
                        <a:s> and </a:s>
                        <a:s r="509">
                           <a:s r="510">
                              <a:s>&quot;Guidance&quot;</a:s>
                           </a:s>
                           <a:s> = </a:s>
                           <a:s r="511">
                              <a:s>'Should vaccinate client with second bOPV dose as the latest bOPV dose was administered more than 4 weeks ago.
Check for contraindications.'</a:s>
                           </a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    </a:s>
                  <a:s r="515">
                     <a:s>when </a:s>
                     <a:s r="516">
                        <a:s r="518">
                           <a:s r="517">
                              <a:s>Patient</a:s>
                           </a:s>
                           <a:s>.</a:s>
                           <a:s r="518">
                              <a:s>id</a:s>
                           </a:s>
                        </a:s>
                        <a:s> = </a:s>
                        <a:s r="519">
                           <a:s>'Polio63.1'</a:s>
                        </a:s>
                     </a:s>
                     <a:s> then </a:s>
                     <a:s r="525">
                        <a:s r="526">
                           <a:s>&quot;Primary series is complete&quot;</a:s>
                        </a:s>
                        <a:s> and </a:s>
                        <a:s r="527">
                           <a:s r="528">
                              <a:s>&quot;Guidance&quot;</a:s>
                           </a:s>
                           <a:s> = </a:s>
                           <a:s r="529">
                              <a:s>'Poliovirus primary series is complete. Assess if supplementary bOPV dose(s) are necessary and create a clinical note.
Check for any other vaccines due.'</a:s>
                           </a:s>
                        </a:s>
                     </a:s>
                  </a:s>
                  <a:s>
    else </a:s>
                  <a:s r="533">
                     <a:s>'No test case set'</a:s>
                  </a:s>
                  <a:s>
  end</a:s>
               </a:s>
            </a:s>
         </annotation>
         <expression localId="388" locator="193:3-211:5" xsi:type="Case">
            <caseItem localId="389" locator="194:5-194:302">
               <when localId="390" locator="194:10-194:33" xsi:type="Equal">
                  <signature localId="397" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="398" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="395" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="396" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="392" locator="194:10-194:19" path="id" xsi:type="Property">
                        <source localId="391" locator="194:10-194:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="393" locator="194:23-194:33" valueType="t:String" value="Polio56.2" xsi:type="Literal"/>
               </when>
               <then localId="535" xsi:type="As">
                  <operand localId="399" locator="194:40-194:302" xsi:type="And">
                     <operand localId="400" locator="194:40-194:85" name="Client is not due for IPV vaccination Case 1" xsi:type="ExpressionRef"/>
                     <operand localId="401" locator="194:91-194:302" xsi:type="Equal">
                        <signature localId="405" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <signature localId="406" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <operand localId="402" locator="194:91-194:100" name="Guidance" xsi:type="ExpressionRef"/>
                        <operand localId="403" locator="194:104-194:302" valueType="t:String" value="Should not vaccinate client with first IPV dose as client's age is less than 8 weeks. &#xa;Check for any other vaccines due and inform the caregiver of when to come back for the first poliovirus dose." xsi:type="Literal"/>
                     </operand>
                  </operand>
                  <asTypeSpecifier localId="536" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="537" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="538" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="407" locator="196:5-196:251">
               <when localId="408" locator="196:10-196:33" xsi:type="Equal">
                  <signature localId="415" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="416" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="413" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="414" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="410" locator="196:10-196:19" path="id" xsi:type="Property">
                        <source localId="409" locator="196:10-196:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="411" locator="196:23-196:33" valueType="t:String" value="Polio57.2" xsi:type="Literal"/>
               </when>
               <then localId="539" xsi:type="As">
                  <operand localId="417" locator="196:40-196:251" xsi:type="And">
                     <operand localId="418" locator="196:40-196:81" name="Client is due for IPV vaccination Case 1" xsi:type="ExpressionRef"/>
                     <operand localId="419" locator="196:87-196:251" xsi:type="Equal">
                        <signature localId="423" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <signature localId="424" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <operand localId="420" locator="196:87-196:96" name="Guidance" xsi:type="ExpressionRef"/>
                        <operand localId="421" locator="196:100-196:251" valueType="t:String" value="Should vaccinate client with first IPV dose as client is within appropriate age range and IPV dose was not administered. &#xa;Check for contraindications." xsi:type="Literal"/>
                     </operand>
                  </operand>
                  <asTypeSpecifier localId="540" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="541" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="542" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="425" locator="198:5-198:315">
               <when localId="426" locator="198:10-198:33" xsi:type="Equal">
                  <signature localId="433" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="434" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="431" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="432" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="428" locator="198:10-198:19" path="id" xsi:type="Property">
                        <source localId="427" locator="198:10-198:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="429" locator="198:23-198:33" valueType="t:String" value="Polio58.2" xsi:type="Literal"/>
               </when>
               <then localId="543" xsi:type="As">
                  <operand localId="435" locator="198:40-198:315" xsi:type="And">
                     <operand localId="436" locator="198:40-198:85" name="Client is not due for IPV vaccination Case 2" xsi:type="ExpressionRef"/>
                     <operand localId="437" locator="198:91-198:315" xsi:type="Equal">
                        <signature localId="441" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <signature localId="442" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <operand localId="438" locator="198:91-198:100" name="Guidance" xsi:type="ExpressionRef"/>
                        <operand localId="439" locator="198:104-198:315" valueType="t:String" value="Should not vaccinate client with second IPV dose as the latest IPV dose was administered less than 4 weeks ago. &#xa;Check for any other vaccines due and inform the caregiver of when to come back for the next dose." xsi:type="Literal"/>
                     </operand>
                  </operand>
                  <asTypeSpecifier localId="544" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="545" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="546" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="443" locator="200:5-200:237">
               <when localId="444" locator="200:10-200:33" xsi:type="Equal">
                  <signature localId="451" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="452" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="449" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="450" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="446" locator="200:10-200:19" path="id" xsi:type="Property">
                        <source localId="445" locator="200:10-200:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="447" locator="200:23-200:33" valueType="t:String" value="Polio59.2" xsi:type="Literal"/>
               </when>
               <then localId="547" xsi:type="As">
                  <operand localId="453" locator="200:40-200:237" xsi:type="And">
                     <operand localId="454" locator="200:40-200:81" name="Client is due for IPV vaccination Case 2" xsi:type="ExpressionRef"/>
                     <operand localId="455" locator="200:87-200:237" xsi:type="Equal">
                        <signature localId="459" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <signature localId="460" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <operand localId="456" locator="200:87-200:96" name="Guidance" xsi:type="ExpressionRef"/>
                        <operand localId="457" locator="200:100-200:237" valueType="t:String" value="Should vaccinate client with second IPV dose as the latest IPV dose was administered more than 4 weeks ago.&#xa;Check for contraindications." xsi:type="Literal"/>
                     </operand>
                  </operand>
                  <asTypeSpecifier localId="548" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="549" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="550" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="461" locator="202:5-202:211">
               <when localId="462" locator="202:10-202:33" xsi:type="Equal">
                  <signature localId="469" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="470" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="467" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="468" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="464" locator="202:10-202:19" path="id" xsi:type="Property">
                        <source localId="463" locator="202:10-202:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="465" locator="202:23-202:33" valueType="t:String" value="Polio60.1" xsi:type="Literal"/>
               </when>
               <then localId="551" xsi:type="As">
                  <operand localId="471" locator="202:40-202:211" xsi:type="And">
                     <operand localId="472" locator="202:40-202:82" name="Client is due for bOPV vaccination Case 1" xsi:type="ExpressionRef"/>
                     <operand localId="473" locator="202:88-202:211" xsi:type="Equal">
                        <signature localId="477" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <signature localId="478" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <operand localId="474" locator="202:88-202:97" name="Guidance" xsi:type="ExpressionRef"/>
                        <operand localId="475" locator="202:101-202:211" valueType="t:String" value="Should vaccinate client with first bOPV dose as two IPV doses were administered.&#xa;Check for contraindications." xsi:type="Literal"/>
                     </operand>
                  </operand>
                  <asTypeSpecifier localId="552" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="553" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="554" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="479" locator="204:5-204:310">
               <when localId="480" locator="204:10-204:33" xsi:type="Equal">
                  <signature localId="487" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="488" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="485" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="486" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="482" locator="204:10-204:19" path="id" xsi:type="Property">
                        <source localId="481" locator="204:10-204:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="483" locator="204:23-204:33" valueType="t:String" value="Polio61.2" xsi:type="Literal"/>
               </when>
               <then localId="555" xsi:type="As">
                  <operand localId="489" locator="204:40-204:310" xsi:type="And">
                     <operand localId="490" locator="204:40-204:79" name="Client is not due for bOPV vaccination" xsi:type="ExpressionRef"/>
                     <operand localId="491" locator="204:85-204:310" xsi:type="Equal">
                        <signature localId="495" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <signature localId="496" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <operand localId="492" locator="204:85-204:94" name="Guidance" xsi:type="ExpressionRef"/>
                        <operand localId="493" locator="204:98-204:310" valueType="t:String" value="Should not vaccinate client with second bOPV dose as the latest bOPV dose was administered less than 4 weeks ago. &#xa;Check for any other vaccines due and inform the caregiver of when to come back for the next dose" xsi:type="Literal"/>
                     </operand>
                  </operand>
                  <asTypeSpecifier localId="556" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="557" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="558" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="497" locator="206:5-206:240">
               <when localId="498" locator="206:10-206:33" xsi:type="Equal">
                  <signature localId="505" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="506" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="503" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="504" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="500" locator="206:10-206:19" path="id" xsi:type="Property">
                        <source localId="499" locator="206:10-206:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="501" locator="206:23-206:33" valueType="t:String" value="Polio62.2" xsi:type="Literal"/>
               </when>
               <then localId="559" xsi:type="As">
                  <operand localId="507" locator="206:40-206:240" xsi:type="And">
                     <operand localId="508" locator="206:40-206:82" name="Client is due for bOPV vaccination Case 2" xsi:type="ExpressionRef"/>
                     <operand localId="509" locator="206:88-206:240" xsi:type="Equal">
                        <signature localId="513" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <signature localId="514" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <operand localId="510" locator="206:88-206:97" name="Guidance" xsi:type="ExpressionRef"/>
                        <operand localId="511" locator="206:101-206:240" valueType="t:String" value="Should vaccinate client with second bOPV dose as the latest bOPV dose was administered more than 4 weeks ago.&#xa;Check for contraindications." xsi:type="Literal"/>
                     </operand>
                  </operand>
                  <asTypeSpecifier localId="560" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="561" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="562" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <caseItem localId="515" locator="208:5-208:238">
               <when localId="516" locator="208:10-208:33" xsi:type="Equal">
                  <signature localId="523" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <signature localId="524" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  <operand localId="521" name="ToString" libraryName="FHIRHelpers" xsi:type="FunctionRef">
                     <signature localId="522" name="fhir:string" xsi:type="NamedTypeSpecifier"/>
                     <operand localId="518" locator="208:10-208:19" path="id" xsi:type="Property">
                        <source localId="517" locator="208:10-208:16" name="Patient" xsi:type="ExpressionRef"/>
                     </operand>
                  </operand>
                  <operand localId="519" locator="208:23-208:33" valueType="t:String" value="Polio63.1" xsi:type="Literal"/>
               </when>
               <then localId="563" xsi:type="As">
                  <operand localId="525" locator="208:40-208:238" xsi:type="And">
                     <operand localId="526" locator="208:40-208:67" name="Primary series is complete" xsi:type="ExpressionRef"/>
                     <operand localId="527" locator="208:73-208:238" xsi:type="Equal">
                        <signature localId="531" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <signature localId="532" name="t:String" xsi:type="NamedTypeSpecifier"/>
                        <operand localId="528" locator="208:73-208:82" name="Guidance" xsi:type="ExpressionRef"/>
                        <operand localId="529" locator="208:86-208:238" valueType="t:String" value="Poliovirus primary series is complete. Assess if supplementary bOPV dose(s) are necessary and create a clinical note.&#xa;Check for any other vaccines due." xsi:type="Literal"/>
                     </operand>
                  </operand>
                  <asTypeSpecifier localId="564" xsi:type="ChoiceTypeSpecifier">
                     <choice localId="565" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                     <choice localId="566" name="t:String" xsi:type="NamedTypeSpecifier"/>
                  </asTypeSpecifier>
               </then>
            </caseItem>
            <else localId="567" xsi:type="As">
               <operand localId="533" locator="210:10-210:27" valueType="t:String" value="No test case set" xsi:type="Literal"/>
               <asTypeSpecifier localId="568" xsi:type="ChoiceTypeSpecifier">
                  <choice localId="569" name="t:Boolean" xsi:type="NamedTypeSpecifier"/>
                  <choice localId="570" name="t:String" xsi:type="NamedTypeSpecifier"/>
               </asTypeSpecifier>
            </else>
         </expression>
      </def>
   </statements>
</library>
