Related Artifacts depends-on FHIR model information http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1 depends-on Library FHIRHelpers http://smart.who.int/ig/smart-immunizations/Library/FHIRHelpers|4.0.1 depends-on Library IMMZCom IMMZCommon depends-on Library IMMZc IMMZConcepts depends-on Library IMMZCon IMMZConfig depends-on Library IMMZvl IMMZVaccineLibrary depends-on Library FC FHIRCommon depends-on Library input IMMZD2DTPolioInput depends-on Value set Polio Vaccine IMMZ.Z.DE14 Polio containing vaccines Parameters Patient out 0 1 Patient Client is due for the bOPV birth dose out 0 1 boolean Client is due for the bOPV birth dose Guidance out 0 1 string Client is not due for the bOPV birth dose Case 1 out 0 1 boolean Client is not due for the bOPV birth dose Case 2 out 0 1 boolean Client is not due for the bOPV birth dose out 0 1 boolean Client is not due for the bOPV birth dose Guidance out 0 1 string Guidance out 0 1 string Data Requirements Type: Patient (Patient) Type: Immunization (Immunization) Contents text/cql /* * Library: IMMZD2DTPolioBirth (IMMZ.D2.DT.Polio.Birth dose) * Rule: Determine if the client is due for a polio vaccination according to the national immunization protocol * Decision Table: Birth dose administration as part of "bOPV plus IPV" schedule (In countries that are polio-endemic countries or countries at high risk for importation and subsequent spread of poliovirus, that follow the combined bOPV-IPV schedule) * Trigger: IMMZ.D2 Determine required vaccination(s) if any */ library IMMZD2DTPolioBirth // Start Skeleton CQL using FHIR version '4.0.1' include FHIRHelpers version '4.0.1' include IMMZCommon called IMMZCom include IMMZConcepts called IMMZc include IMMZConfig called IMMZCon include IMMZVaccineLibrary called IMMZvl include FHIRCommon called FC include IMMZD2DTPolioInput called input // End Skeleton CQL context Patient /* @dynamicValue: Guidance */ define "Guidance": case when "Client is due for the bOPV birth dose" then "Client is due for the bOPV birth dose Guidance" when "Client is not due for the bOPV birth dose" then "Client is not due for the bOPV birth dose Guidance" else '' end /* @output: Client is due for the bOPV birth dose @pseudocode: "Immunization recommendation status" = 'Due' (where "Type of polio dose" = 'bOPV') */ define "Client is due for the bOPV birth dose": input."bOPV birth dose (a zero dose) was not administered" and input."Client's age is less than 1 week" /* @output: Client is due for the bOPV birth dose Guidance @guidance: Should vaccinate client for bOPV birth dose (a zero dose) as polio birth dose was not administered and client's age is less than 1 week. Check for contraindications. */ define "Client is due for the bOPV birth dose Guidance": 'Should vaccinate client for bOPV birth dose (a zero dose) as polio birth dose was not administered and client\'s age is less than 1 week. Check for contraindications.' /* @output: Client is not due for the bOPV birth dose Case 1 @pseudocode: "Immunization recommendation status" = 'Not due' */ define "Client is not due for the bOPV birth dose Case 1": input."bOPV birth dose (a zero dose) was not administered" and input."Client's age is more or equal to 1 week" /* @output: Client is not due for the bOPV birth dose Case 2 @pseudocode: "Immunization recommendation status" = 'Not due' */ define "Client is not due for the bOPV birth dose Case 2": input."bOPV birth dose (a zero dose) was administered" /* @output: Client is not due for the bOPV birth dose @pseudocode: "Immunization recommendation status" = 'Not due' */ define "Client is not due for the bOPV birth dose": "Client is not due for the bOPV birth dose Case 1" or "Client is not due for the bOPV birth dose Case 2" /* @output: Client is not due for the bOPV birth dose Guidance @guidance: Should not vaccinate client for bOPV birth dose (a zero dose) as client's age is more than or equal to 1 week. Check for any other vaccines due, and inform the caregiver of when to come back for the next dose. @guidance: Polio birth dose was already administered. Check polio immunization schedule. */ define "Client is not due for the bOPV birth dose Guidance": case when "Client is not due for the bOPV birth dose Case 1" then 'Should not vaccinate client for bOPV birth dose (a zero dose) as client\'s age is more than or equal to 1 week. Check for any other vaccines due, and inform the caregiver of when to come back for the next dose.' when "Client is not due for the bOPV birth dose Case 2" then 'Polio birth dose was already administered. Check polio immunization schedule.' else '' end Content not shown - (application/elm+xml, size = 17Kb) Content not shown - (application/elm+json, size = 27Kb)
Client is due for the bOPV birth dose Guidance
Client is not due for the bOPV birth dose Case 1
Client is not due for the bOPV birth dose Case 2
Client is not due for the bOPV birth dose
Client is not due for the bOPV birth dose Guidance