WHO Immunization Implementation Guide
0.1.0 - CI Build
WHO Immunization Implementation Guide, published by World Health Organization (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-immunizations and changes regularly. See the Directory of published versions
Official URL: http://smart.who.int/ig/smart-immunizations/Library/IMMZD2DTYellowFeverInput | Version: 0.1.0 | |||
Draft as of 2024-05-30 | Computable Name: IMMZD2DTYellowFeverInput |
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 Wcon | WHOConcepts |
depends-on | Code system IMMZ.D | IMMZ.D CodeSystem for Data Elements |
depends-on | Value set Yellow Fever Vaccine | IMMZ.Z.DE23 Yellow fever containing vaccines |
depends-on | Value set Live Attenuated | Set of live attenuated vaccines |
depends-on | Value set Pregnancy Status Pregnant | Pregnancy status values |
Patient | out | 0 | 1 | Patient |
Yellow Fever Doses Administered to Patient | out | 0 | * | Immunization |
No yellow fever primary series doses were administered | out | 0 | 1 | boolean |
One yellow fever primary series dose was administered | out | 0 | 1 | boolean |
Client's age is less than 6 months | out | 0 | 1 | boolean |
Client's age is less than 9 months | out | 0 | 1 | boolean |
Client's age is between 6 to 9 months | out | 0 | 1 | boolean |
Client's age is more than or equal to 9 months | out | 0 | 1 | boolean |
Client's age is more than or equal to 60 years | out | 0 | 1 | boolean |
Live vaccine was administered in the last 4 weeks | out | 0 | 1 | boolean |
No live vaccine was administered in the last 4 weeks | out | 0 | 1 | boolean |
The client is currently pregnant | out | 0 | 1 | boolean |
The client has a history of severe allergic reactions | out | 0 | 1 | boolean |
The client is severely immunocompromised | out | 0 | 1 | boolean |
The client has a symptomatic HIV infection | out | 0 | 1 | boolean |
The client is lactating | out | 0 | 1 | boolean |
Type: Patient (Patient) |
Type: Immunization (Immunization) |
Type: Observation (Observation) |
Type: Condition (Condition) |
Type: Condition (Condition) | |
Filter | Value |
code | One of these codes: IMMZ.D CodeSystem for Data Elements DE167: Severe allergic reactions |
Type: Condition (Condition) | |
Filter | Value |
code | One of these codes: IMMZ.D CodeSystem for Data Elements DE200: Severely immunocompromised |
Type: Condition (Condition) | |
Filter | Value |
code | One of these codes: IMMZ.D CodeSystem for Data Elements DE168: Symptomatic HIV infection |
Type: Condition (Condition) | |
Filter | Value |
code | One of these codes: IMMZ.D CodeSystem for Data Elements DE191: Breastfeeding |
text/cql
/*
* Library: IMMZD2DTYellowFeverInput (IMMZ.D2.DT.YellowFeverInput)
*/
library IMMZD2DTYellowFeverInput
// 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
// End Skeleton CQL
context Patient
/*
@internal: Yellow Fever containing Doses Administered to Patient
*/
define "Yellow Fever Doses Administered to Patient":
IMMZCom."Doses Administered to Patient" I
where
I.vaccineCode in IMMZc."Yellow Fever Vaccine"
/*
@input: No yellow fever primary series doses were administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Yellow fever containing vaccines" and "Type of dose" = "Primary series" ) = 0
*/
define "No yellow fever primary series doses were administered":
not exists("Yellow Fever Doses Administered to Patient" I where duration in days between I.occurrence and Patient.birthDate + 9 months <= 0)
/*
@input: One yellow fever primary series dose was administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Yellow fever containing vaccines" and "Type of dose" = "Primary series" ) = 1
*/
define "One yellow fever primary series dose was administered":
Count("Yellow Fever Doses Administered to Patient" I where duration in days between I.occurrence and Patient.birthDate + 9 months <= 0) >= 1
/*
@input: Client's age is less than 6 months
@pseudocode: Today's date - "Date of birth" < 6 'month'
*/
define "Client's age is less than 6 months":
IMMZCom."Current Patient Age In Months" < 6
/*
@input: Client's age is between 6 to 9 months
@pseudocode: 6 'month' ≤ Today's date - "Date of birth" < 9 'month'
*/
define "Client's age is between 6 to 9 months":
not("Client's age is less than 6 months") and "Client's age is less than 9 months"
/*
@input: Client's age is less than 9 months
@pseudocode: Today's date - "Date of birth" < 9 'month'"
*/
define "Client's age is less than 9 months":
IMMZCom."Current Patient Age In Months" < 9
/*
@input: Client's age is more than or equal to 9 months
@pseudocode: Today's date - "Date of birth" ≥ 9 'month'
*/
define "Client's age is more than or equal to 9 months":
not ("Client's age is less than 9 months")
/*
@input: Client's age is more than or equal to 60 years
@pseudocode: 'Today's date - ""Date of birth"" ≥ 60 'year'
*/
define "Client's age is more than or equal to 60 years":
IMMZCom."Current Patient Age In Years" >= 60
/*
@input: Live vaccine was administered in the last 4 weeks
@pseudocode: Today's date - latest "Date and time of vaccination" (where "Live vaccine" = TRUE) < 4 'week'
*/
define "Live vaccine was administered in the last 4 weeks":
//IMMZCom."Date of Latest Live Attenuated Vaccine" is not null and IMMZCom."Date of Latest Live Attenuated Vaccine" + 4 weeks > Now()
IMMZCom."Date of Latest Live Attenuated Vaccine" is not null and duration in weeks between IMMZCom."Date of Latest Live Attenuated Vaccine" and Now() < 4
/*
@input: No live vaccine was administered in the last 4 weeks
@pseudocode: Today's date - latest "Date and time of vaccination" (where "Live vaccine" = TRUE) ≥ 4 'week'
*/
define "No live vaccine was administered in the last 4 weeks":
not("Live vaccine was administered in the last 4 weeks")
/*
@input: The client is currently pregnant
@pseudocode: "Potential contraindications" = 'Currently pregnant'
*/
define "The client is currently pregnant":
IMMZCom."Pregnant"
/*
@input: The client has a history of severe allergic reactions
@pseudocode: "Potential contraindications" = 'Severe allergic reactions'
*/
define "The client has a history of severe allergic reactions":
exists(IMMZCom."Severe Allergic Reactions Condition")
/*
@input: The client is severely immunocompromised
@psuedocode: "Potential contraindications" = "Severely immunocompromised"
*/
define "The client is severely immunocompromised":
exists(IMMZCom."Severely immunocompromised Condition")
/*
@input: The client has a symptomatic HIV infection
@pseudocode: "Potential contraindications" = 'Symptomatic HIV infection'
*/
define "The client has a symptomatic HIV infection":
exists(IMMZCom."Symptomatic HIV Infection Condition")
/*
@input: The client is lactating
@psuedocode: "Potential contraindications" = "Breastfeeding"
*/
define "The client is lactating":
exists(IMMZCom."Breastfeeding Condition")
Content not shown - (
application/elm+xml
, size = 37Kb )
Content not shown - (
application/elm+json
, size = 65Kb )