WHO Immunization Implementation Guide
0.2.0 - ci-build

WHO Immunization Implementation Guide, published by WHO. This guide is not an authorized publication; it is the continuous build for version 0.2.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

Library: IMMZD2DTRubellaElements

Official URL: http://smart.who.int/immunizations/Library/IMMZD2DTRubellaElements Version: 0.2.0
Draft as of 2025-08-08 Computable Name: IMMZD2DTRubellaElements

This library defines context-independent elements for Rubella used throughout the Immunization CPG

Title: IMMZD2DTRubellaElements
Id: IMMZD2DTRubellaElements
Version: 0.2.0
Url: IMMZD2DTRubellaElements
Status: draft
Type:

system: http://terminology.hl7.org/CodeSystem/library-type

code: logic-library

Date: 2025-08-08 19:12:11+0000
Publisher: WHO
Description:

This library defines context-independent elements for Rubella used throughout the Immunization CPG

Related Artifacts:

Dependencies

Parameters:
NameTypeMinMaxIn/Out
PatientPatient01Out
Rubella Doses Administered to PatientImmunization0*Out
Rubella Primary Series Doses Administered to PatientImmunization0*Out
Number of Rubella Primary Series Doses Administeredinteger01Out
No rubella primary series dose was administeredboolean01Out
One rubella primary series dose was administeredboolean01Out
Client's age is less than 9 monthsboolean01Out
Client's age is more than or equal to 9 monthsboolean01Out
Client's age is less than 12 monthsboolean01Out
Client's age is more than or equal to 12 monthsboolean01Out
No live vaccine was administered in the last 4 weeksboolean01Out
Live vaccine was administered in the last 4 weeksboolean01Out
Live vaccine was administered in the last the 4 weeksboolean01Out
Content: text/cql

/*
  * Library: IMMZD2DTRubellaElements
  */
library IMMZD2DTRubellaElements

using FHIR version '4.0.1'
include FHIRHelpers version '4.0.1'

include WHOConcepts
include WHOCommon called WC
include WHOElements called WE

include IMMZCommon called Common
include IMMZConcepts called Concepts
include IMMZElements called Elements

context Patient

/*
@internal: Rubella containing Doses Administered to Patient
*/
define "Rubella Doses Administered to Patient":
  Elements."Doses Administered to Patient" I
  where
    I.vaccineCode in Concepts."Rubella-containing vaccines"

/*
@internal: Rubella containing Doses Administered to Patient that are in the Primary series
*/
define "Rubella Primary Series Doses Administered to Patient":
  "Rubella Doses Administered to Patient".seriesPrimary()

/*
@internal: Number of Rubella Primary Series doses
*/
define "Number of Rubella Primary Series Doses Administered":
  Count("Rubella Primary Series Doses Administered to Patient")


/*
@input: No rubella primary series dose was administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Rubella-containing vaccines" and "Type of dose" = "Primary series") = 0
@decision: Countries with high incidence and mortality from rubella
@decision: Countries with low incidence of rubella						
*/
define "No rubella primary series dose was administered":
  "Number of Rubella Primary Series Doses Administered" = 0

/*
@input: One rubella primary series dose was administered
@pseudocode: Count of vaccines administered (where "Vaccine type" = "Rubella-containing vaccines" and "Type of dose" = "Primary series") = 1
@decision: Countries with high incidence and mortality from rubella
@decision: Countries with low incidence of rubella						
*/
define "One rubella primary series dose was administered":
  "Number of Rubella Primary Series Doses Administered" = 1

/*
@input: Client's age is less than 9 months
@pseudocode: Today's date − "Date of birth" < 9 months
@decision: Countries with high incidence and mortality from rubella
*/
define "Client's age is less than 9 months":
  Elements."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 months
@decision: Countries with high incidence and mortality from rubella
*/
define "Client's age is more than or equal to 9 months":
  Elements."Current Patient Age In Months" >= 9

/*
@input: Client's age is less than 12 months
@pseudocode: Today's date − "Date of birth" < 12 months
@decision: Countries with low incidence of rubella						
*/
define "Client's age is less than 12 months":
  Elements."Current Patient Age In Months" < 12

/*
@input: Client's age is more than or equal to 12 months
@pseudocode: Today's date − "Date of birth" ≥ 12 months
@decision: Countries with low incidence of rubella						
*/
define "Client's age is more than or equal to 12 months":
  Elements."Current Patient Age In Months" >= 12

/*
@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 weeks
@decision: Countries with high incidence and mortality from rubella
@decision: Countries with low incidence of rubella						
*/
define "No live vaccine was administered in the last 4 weeks":
  Elements."No live vaccine was administered in the last 4 weeks"

/*
@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 weeks
@decision: Countries with high incidence and mortality from rubella
*/
define "Live vaccine was administered in the last 4 weeks":
  Elements."Live vaccine was administered in the last 4 weeks"

/*
@input: Live vaccine was administered in the last the 4 weeks
@pseudocode: Today's date − latest "Date and time of vaccination" (where "Live vaccine" = TRUE) < 4 weeks
@decision: Countries with low incidence of rubella						
*/
define "Live vaccine was administered in the last the 4 weeks":
  Elements."Live vaccine was administered in the last 4 weeks"
Content: application/elm+xml
Encoded data (34276 characters)