Skip to content

Commit

Permalink
Update indicator CQL and related resources (#32)
Browse files Browse the repository at this point in the history
* Added updated template CQL

* Updated measures and libraries

* Publishing from develop branch

* Sanitized  measure descriptions
  • Loading branch information
pmanko authored Jul 12, 2024
1 parent e66c8c9 commit 742fa01
Show file tree
Hide file tree
Showing 287 changed files with 9,456 additions and 3,711 deletions.
3 changes: 1 addition & 2 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,8 @@ name: Deploy to Github Pages

# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches: [ main ]
branches: [ develop ]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
Expand Down
24 changes: 15 additions & 9 deletions input/cql/HIVB2DT.cql → input/cql/HIVB2DTLogic.cql
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
/*
* Library: HIV.B2.DT
* Check for signs of serious illness
* Consolidated guidelines on HIV prevention, testing, treatment, service delivery and monitoring: recommendations for a public health approach (2021) Chapter 5: Advanced HIV Disease. Figure 5.1: Algorithm for providing a package of care for people with advanced HIV disease.
* Should this just be for anyone with HIV?
* Wouldn't other disease domains also code for general exam?
*/

library HIVB2DT
/**
Library: HIV.B2.DT Logic
@DecisionID: HIV.B2.DT
@BusinessRule:
@Trigger:
@Description:
Check for signs of serious illness
Consolidated guidelines on HIV prevention, testing, treatment, service delivery and monitoring: recommendations for a public health approach (2021) Chapter 5: Advanced HIV Disease. Figure 5.1: Algorithm for providing a package of care for people with advanced HIV disease.
Should this just be for anyone with HIV?
Wouldn't other disease domains also code for general exam?
*/

library HIVB2DTLogic

using FHIR version '4.0.1'

Expand Down
20 changes: 14 additions & 6 deletions input/cql/HIVB7DT.cql → input/cql/HIVB7DTLogic.cql
Original file line number Diff line number Diff line change
@@ -1,10 +1,18 @@
/*
* Library: HIV.B7.DT Test Using Algorithm
* WHO standard testing strategy for HIV-1 diagnosis (among people ≥18 months of age)
* HIV.B7 Test for HIV using testing algorithm, HIV.C4 Test for HIV using testing algorithm, HIV.D.11 Retest using HIV strategy
*/
/**
Library: HIV.B7.DT Logic
@DecisionID: HIV.B7.DT
@BusinessRule:
@Trigger:
@Description:
Test Using Algorithm
WHO standard testing strategy for HIV-1 diagnosis (among people ≥18 months of age)
HIV.B7 Test for HIV using testing algorithm, HIV.C4 Test for HIV using testing algorithm, HIV.D.11 Retest using HIV strategy
*/

library HIVB7DT
library HIVB7DTLogic

using FHIR version '4.0.1'

Expand Down
2 changes: 1 addition & 1 deletion input/cql/HIVConceptsCustom.cql
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
library HIVConcepts_custom
library HIVConceptsCustom

codesystem "ConditionCategoryCodes": 'http://terminology.hl7.org/CodeSystem/condition-category'
codesystem "ConditionClinicalStatusCodes": 'http://terminology.hl7.org/CodeSystem/condition-clinical'
Expand Down
95 changes: 66 additions & 29 deletions input/cql/HIVIND11Logic.cql
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/*
/**
* Library: HIV.IND.11 Logic
* Ref No: PRV.11
* Short Name: OAMT coverage
Expand All @@ -14,40 +14,41 @@
* Denominator Exclusions:
*
* Disaggregations:
* • Gender (female, male, other*)
* • Age (<25, 25+ years)
* • Provider type (key population-led or community-led organization, public sector provider, other entities such as private for-profit and not-for-profit organizations, including faith-based, international, nongovernmental)
* • Setting: facility-based service (including hospitals, health clinics, general practice offices, etc.) or community-based service (including drop-in centres, community service delivery points, mobile clinics or vans, outreach teams, community support groups, etc.)
* • Cities and other administrative regions of epidemiologic importance
*
* • Gender (female, male, other*)
* • Age (<25, 25+ years)
* • Provider type (key population-led or community-led organization, public sector provider, other entities such as private for-profit and not-for-profit organizations, including faith-based, international, nongovernmental)
* • Setting: facility-based service (including hospitals, health clinics, general practice offices, etc.) or community-based service (including drop-in centres, community service delivery points, mobile clinics or vans, outreach teams, community support groups, etc.)
* • Cities and other administrative regions of epidemiologic importance
*
* Disaggregation Elements: Gender | Age (<25, 25+ years)
*
* Numerator and Denominator Elements:
* Currently on OAMT | Key population member type | Reporting date
* Currently on OAMT
* Key population member type
* Reporting date
*
* Reference: Consolidated guidelines on person-centred HIV strategic information: strengthening routine data for impact. Geneva: World Health Organization; 2022
*
* Data Concepts:
*
* HIV.A.DE17: Age | Calculated age (number of years) of the client based on date of birth
* HIV.A.DE18: Gender* | Gender of the client*
* HIV.A.DE19: Female | Client identifies as female
* HIV.A.DE20: Male | Client identifies as male
* HIV.A.DE21: Transgender male | Client identifies as transgender male
* HIV.A.DE22: Transgender female | Client identifies as transgender female
* HIV.A.DE23: Other | Additional category
* HIV.B.DE50: Key population member type* | The type of key population that the client is included in
* HIV.B.DE51: Sex worker | Client is a sex worker
* HIV.B.DE52: Men who have sex with men | Client is a man who has sex with men
* HIV.B.DE53: Trans and gender-diverse people | Client identifies as trans and gender-diverse
* HIV.B.DE54: People who inject drugs | Client is a person who injects drugs
* HIV.B.DE55: People living in prisons and other closed settings | Client lives in a prison or another closed setting
* HIV.E.DE114: Key population member type* | The type of key population that the infant's mother is included in
* HIV.E.DE115: Sex worker | Infant's mother is a sex worker
* HIV.E.DE116: People who inject drugs | Infant's mother is a person who injects drugs
* HIV.E.DE117: Trans and gender-diverse people | Infant's mother identifies as trans and gender-diverse
* HIV.E.DE118: People living in prisons and other closed setting | Infant's mother is in a prison or closed setting
* HIV.PRV.DE20: Currently on OAMT | Client is currently on opioid agonist maintenance treatment (OAMT) at reporting date, defined according to country/program to account for medication dispensed and LTFU criterion
* HIV.A.DE17: Age | Calculated age (number of years) of the client based on date of birth
* HIV.A.DE18: Gender* | Gender of the client*
* HIV.A.DE19: Female | Client identifies as female
* HIV.A.DE20: Male | Client identifies as male
* HIV.A.DE21: Transgender male | Client identifies as transgender male
* HIV.A.DE22: Transgender female | Client identifies as transgender female
* HIV.A.DE23: Other | Additional category
* HIV.B.DE50: Key population member type* | The type of key population that the client is included in
* HIV.B.DE51: Sex worker | Client is a sex worker
* HIV.B.DE52: Men who have sex with men | Client is a man who has sex with men
* HIV.B.DE53: Trans and gender-diverse people | Client identifies as trans and gender-diverse
* HIV.B.DE54: People who inject drugs | Client is a person who injects drugs
* HIV.B.DE55: People living in prisons and other closed settings | Client lives in a prison or another closed setting
* HIV.E.DE114: Key population member type* | The type of key population that the infant's mother is included in
* HIV.E.DE115: Sex worker | Infant's mother is a sex worker
* HIV.E.DE116: People who inject drugs | Infant's mother is a person who injects drugs
* HIV.E.DE117: Trans and gender-diverse people | Infant's mother identifies as trans and gender-diverse
* HIV.E.DE118: People living in prisons and other closed setting | Infant's mother is in a prison or closed setting
* HIV.PRV.DE20: Currently on OAMT | Client is currently on opioid agonist maintenance treatment (OAMT) at reporting date, defined according to country/program to account for medication dispensed and LTFU criterion
* HIV.Config.DE22: Reporting date | Reporting date, for surveys performed on a specific date
*
* Additional Context
Expand All @@ -65,7 +66,43 @@ using FHIR version '4.0.1'

include HIVCommon version '0.0.1' called HIC
include FHIRHelpers version '4.0.1'
include WHOCommon called WCom
include FHIRCommon called FC
include WHOCommon called WCom

// Indicator Definition
parameter "Measurement Period" Interval<Date> default Interval[@2023-01-01, @2023-01-30]

context Patient
/* Populations */

/*
*Initial Population
*/

define "Initial Population":
true

/**
* Numerator
*
* Definition: Number of people on OAMT at specified census date
* Calculation: Number of clients with "Key population member type"='People who inject drugs' AND "Currently on OAMT"=True for a specific "Reporting date"
*/

define "Numerator":
true


/**
* Denominator
*
* Definition: a) Programme/service provider level: number of opioid dependent people accessing service | b) Population level: population size estimate of opioid dependent people in relevant geographic area
* Calculation: Programme/service provider level: | COUNT of opioid dependent people accessing service | | Population level: | *Estimated population size of opioid dependent people in relevant geographic area
*/

define "Denominator":
true


/* end Populations */

89 changes: 64 additions & 25 deletions input/cql/HIVIND12Logic.cql
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/*
/**
* Library: HIV.IND.12 Logic
* Ref No: PRV.12
* Short Name: Total person-years on OAMT
Expand All @@ -14,36 +14,39 @@
* Denominator Exclusions:
*
* Disaggregations:
* • Gender (female, male, other*)
* • Age (15–19, 20–24, 25–49, 50+ years)
* • Provider type (key population-led or community-led organization, public sector provider, other entities such as private for-profit and not-for-profit organizations, including faith-based, international, nongovernmental)
* • Setting: facility-based service (including hospitals, health clinics, general practice offices, etc.) or community-based service (including drop-in centres, community service delivery points, mobile clinics or vans, outreach teams, community support groups, etc.)
* • Cities and other administrative regions of epidemiologic importance
*
* • Gender (female, male, other*)
* • Age (15–19, 20–24, 25–49, 50+ years)
* • Provider type (key population-led or community-led organization, public sector provider, other entities such as private for-profit and not-for-profit organizations, including faith-based, international, nongovernmental)
* • Setting: facility-based service (including hospitals, health clinics, general practice offices, etc.) or community-based service (including drop-in centres, community service delivery points, mobile clinics or vans, outreach teams, community support groups, etc.)
* • Cities and other administrative regions of epidemiologic importance
*
* Disaggregation Elements: Gender | Age
*
* Numerator and Denominator Elements:
* Date OAMT initiated | Date of loss to follow-up or OAMT stopped | Medications prescribed | Reporting period end date | Reporting period start date
* Date OAMT initiated
* Date of loss to follow-up or OAMT stopped
* Medications prescribed
* Reporting period end date
* Reporting period start date
*
* Reference: Consolidated guidelines on person-centred HIV strategic information: strengthening routine data for impact. Geneva: World Health Organization; 2022
*
* Data Concepts:
*
* HIV.A.DE17: Age | Calculated age (number of years) of the client based on date of birth
* HIV.A.DE18: Gender* | Gender of the client*
* HIV.A.DE19: Female | Client identifies as female
* HIV.A.DE20: Male | Client identifies as male
* HIV.A.DE21: Transgender male | Client identifies as transgender male
* HIV.A.DE22: Transgender female | Client identifies as transgender female
* HIV.A.DE23: Other | Additional category
* HIV.C.DE75: Medications prescribed | Medications the client was prescribed
* HIV.C.DE76: PrEP for HIV prevention | Client was prescribed pre-exposure prophylaxis (PrEP) for HIV prevention
* HIV.C.DE77: PEP for HIV prevention | Client was prescribed post-exposure prophylaxis (PEP) for HIV prevention
* HIV.C.DE78: Other | Client was prescribed other medications
* HIV.D.DE457: Medications prescribed | Name or regimen code of all other medications prescribed during the visit
* HIV.PRV.DE17: Date OAMT initiated | Date client initiated opioid agonist maintenance treatment (OAMT)
* HIV.PRV.DE25: Date of loss to follow-up or OAMT stopped | Date of loss to follow-up or opioid agonist maintenance treatment (OAMT) stopped
* HIV.Config.DE20: Reporting period end date | End date of the reporting period
* HIV.A.DE17: Age | Calculated age (number of years) of the client based on date of birth
* HIV.A.DE18: Gender* | Gender of the client*
* HIV.A.DE19: Female | Client identifies as female
* HIV.A.DE20: Male | Client identifies as male
* HIV.A.DE21: Transgender male | Client identifies as transgender male
* HIV.A.DE22: Transgender female | Client identifies as transgender female
* HIV.A.DE23: Other | Additional category
* HIV.C.DE75: Medications prescribed | Medications the client was prescribed
* HIV.C.DE76: PrEP for HIV prevention | Client was prescribed pre-exposure prophylaxis (PrEP) for HIV prevention
* HIV.C.DE77: PEP for HIV prevention | Client was prescribed post-exposure prophylaxis (PEP) for HIV prevention
* HIV.C.DE78: Other | Client was prescribed other medications
* HIV.D.DE457: Medications prescribed | Name or regimen code of all other medications prescribed during the visit
* HIV.PRV.DE17: Date OAMT initiated | Date client initiated opioid agonist maintenance treatment (OAMT)
* HIV.PRV.DE25: Date of loss to follow-up or OAMT stopped | Date of loss to follow-up or opioid agonist maintenance treatment (OAMT) stopped
* HIV.Config.DE20: Reporting period end date | End date of the reporting period
* HIV.Config.DE21: Reporting period start date | Start date of the reporting period
*
* Additional Context
Expand All @@ -61,7 +64,43 @@ using FHIR version '4.0.1'

include HIVCommon version '0.0.1' called HIC
include FHIRHelpers version '4.0.1'
include WHOCommon called WCom
include FHIRCommon called FC
include WHOCommon called WCom

// Indicator Definition
parameter "Measurement Period" Interval<Date> default Interval[@2023-01-01, @2023-01-30]

context Patient
/* Populations */

/*
*Initial Population
*/

define "Initial Population":
true

/**
* Numerator
*
* Definition: Total PYFU on OAMT during defined reporting period. | Calculated from the sum of the time on OAMT of each OAMT recipient during the reporting period.
* Calculation: SUM of [DIFFERENCE in MIN("Date OAMT initiated", "Reporting period start date") and MAX("Date of loss to follow-up or OAMT stopped", "Reporting period end date")] for all clients with "Medications prescribed" IN 'Methadone', 'Buprenorphine'
*/

define "Numerator":
true


/**
* Denominator
*
* Definition: a) Programme/service provider level: estimated PYFU for all opioid dependent people accessing service during defined reporting period | b) Population level: estimated PYFU for total population of opioid dependent people in relevant geographic area during defined reporting period
* Calculation: Service level: Not calculated in DAK | | Population denominator: | *Estimated PYFU for all opioid-dependent people accessing service during defined reporting period | | Note: Can be reported only as numerator; by population or service level if these denominator estimates available.
*/

define "Denominator":
true


/* end Populations */

Loading

0 comments on commit 742fa01

Please sign in to comment.