Related Artifacts depends-on FHIR model information http://fhir.org/guides/cqf/common/Library/FHIR-ModelInfo|4.0.1 depends-on Library FHIRHelpers http://fhir.org/guides/who/smart-immunization/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 Wcon WHOConcepts depends-on Value set Dengue Vaccine http://fhir.org/guides/who/smart-immunization/ValueSet/IMMZ.A1.DE27 depends-on Value set Pregnancy Status Pregnant http://fhir.org/guides/who/core/ValueSet/pregnancystatus-values depends-on Value set Seronegative Seronegative valuest Parameters Patient out 0 1 Patient No-doses Dengue vaccine immunization history out 0 1 boolean Age out 0 1 integer 9 years out 0 1 Quantity 45 years out 0 1 Quantity Should vaccinate patient for Dengue because no doses at 9 years old in a 3 dose scheme out 0 1 boolean Dengue vaccine immunization history = 1 dose out 0 1 boolean Last dose given out 0 1 date 6 months out 0 1 Quantity Should vaccinate patient for Dengue because 1st dose given 6 months ago in a 3 dose scheme out 0 1 boolean Dengue vaccine immunization history = 2 doses out 0 1 boolean Should vaccinate patient for Dengue because 2nd dose given 6 months ago in a 3 dose scheme out 0 1 boolean Data Requirements Type: Patient (Patient) Type: Immunization (Immunization) Type: Observation (Observation) Type: Condition (Condition) Contents text/cql /* * Library: IMMZDT19 (IMMZ.DT.19.Dengue) * Rule: If child or person has not been vaccinated, give Dengue vaccine between 9 and 45 years of age * Trigger: Patient has never had Dengue vaccination, or missing doses in the vaccination schedule */ library IMMZDT19 // 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 // End Skeleton CQL context Patient /* * @dataElement No-doses */ define "No-doses Dengue vaccine immunization history": not exists(IMMZCom."Dengue Doses Administered to Patient") /* * @dataElement Age */ define "Age": IMMZCom."Current Patient Age In Years" /* * @dataElement 9 years */ define "9 years": 9 years /* * @dataElement 45 years */ define "45 years": 45 years /* * Rule: Should vaccinate patient for Dengue because no doses at 9 years old in a 3 dose scheme * Annotations: * - Provide Dengue immunizations – using the "Dengue vaccine immunization – NO PREVIOUS" schedule (3 dose scheme) * Outputs: * - Immunize Patient for Dengue - No Doses at 9 years old * References: * - WHO recommendations for routine immunization - summary tables: https://www.who.int/teams/immunization-vaccines-and-biologicals/policies/who-recommendations-for-routine-immunization---summary-tables * Logic: * (("Dengue vaccine immunization history" = "No-doses") and ("Age" >= "9 years")) */ define "Should vaccinate patient for Dengue because no doses at 9 years old in a 3 dose scheme": (("No-doses Dengue vaccine immunization history") and ("Age" between "9 years" and "45 years")) and not(IMMZCom."Pregnant") and not exists(IMMZCom."Individual is Seronegative for Dengue") /* * @dataElement 1 dose */ define "Dengue vaccine immunization history = 1 dose": Count(IMMZCom."Dengue Doses Administered to Patient") = 1 /* * @dataElement Last dose given */ define "Last dose given": date from (First(IMMZCom."Dengue Doses Administered to Patient").occurrence as FHIR.dateTime) /* * @dataElement 6 months */ define "6 months": 6 months /* * Rule: Should vaccinate patient for Dengue because 1st dose given 6 months ago in a 3 dose scheme * Annotations: * - Provide Dengue immunizations – using the "Dengue vaccine immunization – 1 PREVIOUS" schedule (3 dose scheme) * Outputs: * - Immunize Patient for Dengue - 1 Dose given 6 months ago * References: * - WHO recommendations for routine immunization - summary tables: https://www.who.int/teams/immunization-vaccines-and-biologicals/policies/who-recommendations-for-routine-immunization---summary-tables * Logic: * (("Dengue vaccine immunization history" = "1 dose") and ("Last dose given" >= "6 months")) */ define "Should vaccinate patient for Dengue because 1st dose given 6 months ago in a 3 dose scheme": (("Dengue vaccine immunization history = 1 dose") and ("Last dose given" more than 6 months before Today())) and not(IMMZCom."Pregnant") and not exists(IMMZCom."Individual is Seronegative for Dengue") /* * @dataElement 2 doses */ define "Dengue vaccine immunization history = 2 doses": Count(IMMZCom."Dengue Doses Administered to Patient" H) = 2 /* * Rule: Should vaccinate patient for Dengue because 2nd dose given 6 months ago in a 3 dose scheme * Annotations: * - Provide Dengue immunizations – using the "Dengue vaccine immunization – 2 PREVIOUS" schedule (3 dose scheme) * Outputs: * - Immunize Patient for Dengue - 2 Doses given 6 months ago * References: * - WHO recommendations for routine immunization - summary tables: https://www.who.int/teams/immunization-vaccines-and-biologicals/policies/who-recommendations-for-routine-immunization---summary-tables * Logic: * (("Dengue vaccine immunization history" = "2 doses") and ("Last dose given" >= "6 months")) */ define "Should vaccinate patient for Dengue because 2nd dose given 6 months ago in a 3 dose scheme": (("Dengue vaccine immunization history = 2 doses") and ("Last dose given" more than 6 months before Today())) and not(IMMZCom."Pregnant") and not exists(IMMZCom."Individual is Seronegative for Dengue") Content not shown - (application/elm+xml, size = 31Kb) Content not shown - (application/elm+json, size = 164Kb)
No-doses Dengue vaccine immunization history
Should vaccinate patient for Dengue because no doses at 9 years old in a 3 dose scheme
Dengue vaccine immunization history = 1 dose
Should vaccinate patient for Dengue because 1st dose given 6 months ago in a 3 dose scheme
Dengue vaccine immunization history = 2 doses
Should vaccinate patient for Dengue because 2nd dose given 6 months ago in a 3 dose scheme