Skip to content

Cooking with CQL Examples Sessions 51 100

Bryn Rhodes edited this page Aug 11, 2026 · 1 revision

Cooking with CQL Examples - Sessions 51-100

This page contains the examples from Cooking with CQL sessions 51 through 100, in reverse chronological order. See Cooking with CQL Examples for the complete session index and the most recent sessions, and Cooking with CQL Examples - Sessions 1-50 for earlier sessions.

Session Index

Session Date Topics
100 2026-04-23 Cohort definitions in quality measurement; ballot reminders
99 2026-03-26 Using US Common in measures; US Realm Connectathon; CQL US ballot reminder
98 2026-02-26 CQL US Common ballot review; Liquid template updates; implications of null predicate testing
97 2026-01-22 Pregnancy, imaging, mammography, and Claim/ExplanationOfBenefit patterns; QDM support; IG Publisher support for measure processing
96 2025-12-04 Age and value-based stratifiers; timing best practices; patient age calculation, allergy, and observation patterns
95 2025-09-25 CQL R2 ballot results; CT scan representation; CQL US review; Connectathon 40 report
94 2025-07-24 CQL R2 ballot review; measure narrative review; Reference.type caveat; timezone testing; estimated denominator measures
93 2025-06-26 CAUTI rates and standardized infection ratios (SIR)
92 2025-05-22 Derived model info support; US Core 7.0.0 and QI-Core 7.0.0; FHIRCommon, USCoreCommon, QICoreCommon
91 2025-04-24 CQL 2.0 feature review; CQL Cheat Sheet; Common CQL Assets for FHIR (US-Based) ballot
90 2025-03-27 CQL errata publication; claim diagnosis and principal procedure; QI-Core 6 change review
89 2025-01-23 QI-Core 6 uplift: CQL uplift, test case uplift, MADiE measure creation from QI-Core 4
88 2024-12-12 Activity extent; negation in FHIR; claim diagnosis; Using CQL With FHIR ballot
87 2024-10-24 Identifying acute kidney injury (CMS-832); CQL errata update
86 2024-09-19 Deep dive on stratifiers (principal diagnosis, gender, age group)
85 2024-07-25 Equality, equivalence, and nulls; consecutive SpO2 readings; terminology in CQL; medication daily dose
84 2024-06-27 Deep dive on sub-queries; allergy/intolerance category filter; aggregates with empty lists; aggregate clause
83 2024-05-30 Medication ordered and doNotPerform; Condition bodySite; primary code paths; overlaps before; quantity comparison
82 2024-04-25 Test on ART; HIV assay decision logic; HIV measure (tests vs. patients tested)
81 2024-03-28 Aggregate functions in CQL
80 2024-02-22 US Commons IG review; Using CQL With FHIR IG review; CQL next steps
79 2024-01-25 FHIRHelpers walkthrough; recently submitted issues (CQLIT-421/422/423)
78 2023-11-30 PC-07 numerator reporting; CMS1218 postoperative respiratory failure occurrence issue
77 2023-09-28 VS Code CQL plugin user guide
76 2023-07-27 Direct-reference-code encounters; MedicationRequest with Medication references
75 2023-06-22 Deep dive: intervals and lists
74 2023-05-25 Fluent functions; US Core tests in CQL
73 2023-04-27 Troubleshooting CQL expressions
72 2023-03-23 Deep dive: queries (retrieves, clauses, sub-clauses, singletons)
71 2023-02-23 Deep dive: operators and functions; UCUM units
70 2023-01-26 Authoring patterns by resource type
69 2022-12-01 Building shareable CQL: colorectal cancer screening example
68 2022-10-27 Deep dive on types, values, and choices
67 2022-09-29 Negation in QI-Core
66 2022-07-28 QI-Core profile elements and patterns
65 2022-06-23 CQL authoring using the VS Code plugin
64 2022-05-26 Shared library translations from the AU 2022 QDM publication
63 2022-04-28 Beginning CQL
62 2022-03-24 Community acquired pneumonia severity scores (CURB-65 and CRB-65)
61 2022-02-24 Aggregates, grouping, and having
60 2022-01-27 CQL errata review; QI-Core authoring review
59 2021-12-02 Cumulative medication duration in FHIR
58 2021-10-28 Shared CQL library repository concept; fluent functions
57 2021-09-16 Age calculations in QDM and FHIR; cumulative medication duration in QDM; UCUM best practice
56 2021-07-29 FHIR references; open source tooling stack; Library/$evaluate and $cql operations
55 2021-06-24 Blood pressure; age calculation; immunization not done
54 2021-05-27 Cumulative medication duration in FHIR; patterns and practices; stratification
53 2021-04-22 TSH testing monitoring; expand interval; resolving and tracing FHIR references; CQL exercises
52 2021-03-24 TSH testing every 8 weeks; bleeding events; composite measures with mixed-basis components
51 2021-02-25 Cumulative medication duration in FHIR; calculating months; week or wk?

Cooking with CQL - Session 100 - 2026-04-23

Agenda:

  1. Announcements
  2. Ballot Reminders
  3. Cohort Definitions in Quality Measurement

Cooking with CQL - Session 99 - 2026-03-26

Agenda:

  1. US Realm Connectathon
  2. CQL US Ballot Reminder
  3. Using US Common in Measures

Cooking with CQL - Session 98 - 2026-02-26

Agenda:

  1. Upcoming Connectathons
  2. CQL US Common Ballot Review
  3. Liquid Template Updates
  4. Implications of Null Predicate Testing

Cooking with CQL - Session 97 - 2026-01-22

Agenda:

  1. Connectathon Highlights
  2. CMS dQM Public Comment Review Period
  3. FHIR IG Publisher Support for Measure Processing
  4. Pregnancy Patterns
  5. Imaging Patterns
  6. Mammography Patterns
  7. Claim and Explanation of Benefit Patterns
  8. QDM Support
  • Examples
  • Recording
    • 4:29 - Agenda
    • 5:14 - Connectathon Highlights
    • 8:36 - CMS dQM Public Comment Review Period
    • 9:50 - FHIR IG Publisher Support for Measure Processing
    • 13:15 - Pregnancy Patterns
    • 15:57 - Imaging Patterns
    • 19:11 - Claim and Explanation of Benefit Patterns
    • 27:08 - Mammography Patterns
    • 38:20 - QDM Support

Cooking with CQL - Session 96 - 2025-12-04

Agenda:

  1. Age Stratifier Example:
    1. 1 week, 1 month, 1 year: How to characterize
  2. Value-based Stratifiers for non-subject-based measures
  3. Timing best-practice documentation
  4. Patient age calculation patterns
  5. Allergy patterns
  6. Observation patterns
  • Examples
  • Recording
    • 4:05 – Agenda
    • Announcements:
      • 4:44 – January 2026 Ballots
      • 7:09 – Connectathon 41 Report
    • 8:42 – Measure Stratification Summary
      • 10:06 – Age Stratifier example
    • 12:28 – Value-based Stratifiers for non-subject-based measures
    • 25:03 – Timing best-practice documentation
    • 31:38 – Patient age calculation patterns
    • 40:07 – Allergy patterns
    • 46:19 – Observation patterns

Cooking with CQL - Session 95 - 2025-09-25

Agenda:

  1. Connectathon 40 Report
  2. CQL R2 Ballot Results
  3. CT Scan Representation
  4. CQL US Review

Cooking with CQL - Session 94 - 2025-07-24

Agenda:

  1. CMS Connectathon Report
  2. CQL R2 Ballot Review
  3. Measure Narrative Review
  4. Reference.type Caveat
  5. Timezone Testing
  6. Estimated Denominator Measures

Cooking with CQL - Session 93 - 2025-06-26

Agenda:

  1. CMS Connectathon Outreach
  2. CAUTI: https://www.cdc.gov/nhsn/pdfs/pscmanual/7psccauticurrent.pdf

Cooking with CQL - Session 92 - 2025-05-22

Agenda:

  1. Derived Model Info Support
  2. USCore 7.0.0 and QICore 7.0.0
  3. FHIRCommon, USCoreCommon, QICoreCommon
  • Examples
  • Recording
    • 3:30 - Derived Model Info Support
    • 12:07 - QI-Core 7.0 and US Core 7.0 Update
      • 12:43 - Narrative Summaries
      • 13:58 - QI Elements
      • 14:43 - Negation Profiles
      • 18:02 - Derived Model Info
    • 23:55 - Common Libraries – FHIRCommon, USCoreCommon, QICoreCommon
      • 29:01 - FHIRCommon Changes
      • 31:54 - USCoreCommon Changes
      • 32:40 - QICoreCommon Changes

Cooking with CQL - Session 91 - 2025-04-24

Agenda:

  1. Reminder: CQL Common Assets for FHIR (US-Based) is currently in Ballot (https://hl7.org/fhir/us/cql/2025May/)
  2. CQL Cheat Sheet
  3. CQL 2.0 Feature Review
  • Examples
  • Recording
    • 3:41 - Reminder: CQL Common Assets for FHIR (US based) – Ballot
    • 4:57 - CQL Cheat Sheet
    • 5:40 - CQL 2.0 Feature Review Overview
      • 8:19 - Normative Candidates
      • 13:40 - New Features for Trial Use
        • 13:49 - Conformance
        • 16:20 - Formalized Error Reporting
        • 19:25 - Formalized JSON Serialization
        • 21:27 - FHIRPath Updates
        • 23:45 - Language Features
          • 23:50 - Default Comparison Precision
          • 25:59 - Additional Terminology Operators
          • 30:18 - Support Type Declarations
          • 35:56 - Improved Library Organization and Usage
        • 39:00 - Improved Implementer Support
          • 39:05 - Simplifying ELM
          • 40:08 - Standard Libraries

Cooking with CQL - Session 90 - 2025-3-27

Agenda:

  1. CQL Errata (Publication)
  2. Common CQL Assets for FHIR, US-Based (Upcoming Ballot)
  3. Claim Diagnosis and Principal Procedure
  4. Reprise QICore 6 Change Review
  • Examples
  • Recording
    • 4:20 - CQL Errata
    • 5:22 - Common CQL Assets for FHIR, US-based (Upcoming Ballot)
    • 6:55 - Claim Diagnosis and Principal Procedure
    • 45:45 - Reprise QI-Core 6.0.0 Change Review

Cooking with CQL - Session 89 - 2025-1-23

Agenda:

  1. Introduction and CQL/FHIR Background as Evolving eCQM Standards
  2. QI-Core 6 Uplift Presentation
  3. MADiE Measure Creation with QI-Core 6.0.0
  4. CQL Uplift
  5. Test Case Uplift
  6. MADiE Presentation -Drafting QI-Core 6 measures from QI-Core 4
  • Examples
  • Recording
    • 1:18 - Introduction and CQL/FHIR Background as Evolving eCQM Standards
    • 3:48 - QI-Core 6 Uplift Presentation
    • 10:31 - MADiE Measure Creation with QI-Core 6.0.0
    • 12:22 - CQL Uplift
    • 23:03 - Test Case Uplift
    • 42:15 - MADiE Presentation -Drafting QI-Core 6 measures from QI-Core 4

Cooking with CQL - Session 88 - 2024-12-12

Agenda:

  1. Connectathon Reminder
  2. Using CQL With FHIR Ballot
  3. Activity Extent
  4. Negation in FHIR
  5. Claim Diagnosis
  • Examples
  • Recording
    • 1:18 - Introduction and CQL/FHIR Background as Evolving eCQM Standards
    • 4:19 - FHIR Connectathon Reminder Information (Jan 14-16, 2025)
    • 4:54 - Using CQL With FHIR Ballot
    • 5:41 - Activity Extent with examples
    • 10:17 - Negation in FHIR & Use Cases
    • 17:13 - Claim Diagnoses (change between QI-Core 4 & QI-Core 6)
      • 24:07 - Question – What is the rationale needed for the claim diagnoses variable to constrain the WHERE statement sequence?
      • 38:49 - Question - Clarify the measure intent to capture the profile called condition encounter diagnoses. Has the model for claims diagnoses and encounter diagnoses changed?

Cooking with CQL - Session 87 - 2024-10-24

Agenda:

  1. CQL Errata Update
  2. Identifying Acute Kidney Injury
  • Examples
  • Recording
    • 1:18 - Introduction and CQL-FHIR Background as Evolving eCQM Standards
    • 3:57 - CQL Errata Updated Publication Information
    • 4:40 - Measure Acute Kidney Injury (issues & proposed updates to logic for CMS-832 using QDM 5.6)
      • 9:40 - Question regarding High/Low Creatinine test within the “Encounter with 1.5 Times Serum Creatinine Increase” expression
      • 12:50 - Question regarding comparing the HighCreatinineTest.result.value to the function within the “Encounter with 2 Times Serum Creatinine Increase” expression
      • 14:57 - Analysis of actual test data between Inpatient Hospitalization Days and Serum Creatinine Values: two scenarios identifying issues (Powerpoint)
        • 18:39 - Scenario 2 - discussion and questions regarding meaning of test data.
      • 23:37 - Review of issues using scenarios 1-3
      • 25:25 - Proposed Updates to address the issues
      • 28:16 - Question – Is it pulling one or multiple serum creatinine values?
      • 29:12 - Question – Do you need a sort by if using “EarliestOf” function?
      • 34:58 - Question – On Powerpoint scenario 2, could there be an overlapping of days for validation?
      • 39:32 - Other Considerations
      • 43:51 - Question – If referencing two different data types, (i.e., medication order and medication active), can you call a function using the entire data element name or do you have to use an alias name?

Cooking with CQL - Session 86 - 2024-09-19

Agenda:

  1. Deep Dive on Stratifiers
  • Examples
  • Recording
    • 1:17 - Introduction and CQL/FHIR Background as Evolving eCQM Standards
    • 4:32 - Stratifiers within CQM specifications in FHIR
    • 11:10 - Stratifying by Principal Diagnosis
    • 14:03 - Example – Stratifying by Gender
    • 22:45 - Example - Stratifying by Age Group and Gender

Cooking with CQL - Session 85 - 2024-07-25

Agenda:

  1. Equality, Equivalence, and Nulls in CQL
  2. Consecutive SPO2 Readings
  3. Terminology in CQL
  4. Medication Daily Dose

Cooking with CQL - Session 84 - 2024-06-27

Agenda:

  1. Comment Period on Public Draft FHIR-based eCQMs for EH
  2. CMS Connectathon
  3. CQL Cheat Sheet
  4. Deep Dive on Sub-Queries
  5. Allergy/Intolerance Category Filter
  6. Aggregates with Empty Lists
  7. Aggregate Clause Question
  • Examples
  • Recording
    • 4:24 - Announcements
    • 7:46 - Differences in QDM Export File Structure from MAT to MADiE
    • 12:28 - CQL Cheat Sheet
    • 13:10 - Deep Dive on Sub-Queries
    • 22:36 - Allergy/Intolerance Category Filter
    • 24:54 - Aggregates with Empty Lists
    • 27:16 - Aggregate Clause Question

Cooking with CQL - Session 83 - 2024-05-30

Agenda:

  1. CQLIT-447 - Medication Ordered pattern and doNotPerform
  2. CQLIT-448 - Condition bodysite
  3. CQLIT-449 - Medication-related resources primary code path usage in retrieves
  4. CQLIT-450 - QICore Primary Code Path
  5. CQLIT-460 - Overlaps before clarification
  6. Quantity Comparison Question
  • Examples
  • Recording
    • 4:38 - Medication Ordered pattern and doNotPerform
    • 6:48 - CQLIT-448 - Condition bodysite
    • 11:50 - CQLIT-449 - Medication-related resources primary code path usage in retrieve?
      • 14:49 – Question: What are the markdown files?
      • 16:04 – Question: Do we need a ‘medication in’ for best practice for the Medication administration profile retrieve
    • 19:15 - CQLIT-450 - QICore Primary Code Path
    • 21:49 - CQLIT-460 - Overlaps before clarification
      • 25:36 – Question: Where would we find the updated information to the specification regarding overlaps operator and the comparison of two interval values using a complete set of operations?
    • 29:01 - Quantity Comparison Question

Cooking with CQL - Session 82 - 2024-04-25

Agenda:

  1. Test on ART - Community Question
  2. HIV Assay - Community Question
  3. HIV Measure - Community Question
  • Examples
  • Recording
    • 4:49 – Question on representation of Stopping ART at Facility during the Measurement Period
      • 7:47 – TestOnART examples
    • 12:00 – Question on HIV Assay Decision Logic
      • 12:19 – TestHIVAssay
        • 12:22 – triggeredBy example
        • 14:00 – Well Known Documentation Tags (link) example
        • 15:43 – Identifier Conventions (link) example
        • 17:01 – Formatting Conventions (link) example
        • 18:08 – FHIR References examples
          • 20:16 – Fluent functions in FHIR References
            • 22:10 – Question regarding Fluent Functions having the same name indicating it would be overloaded
            • 22:26 – Question regarding Fluent Function being included in FHIRCommon library
        • 26:04 – Terminology for determining Assay 1 test
        • 27:09 – ValueSet Usage
        • 29:08 – Additional Filtering
        • 31:01 – Patient Age
        • 32:06 – Terminology Followup Question – Is there a way I can define that Custom valueset that contains a List of specific codes within CQL or does it need to be an actual valueset I have already defined outside CQL?
        • 34:05 – Updated Queries
      • 36:57 – Question/Discussion on HIV Measure Logic related to enumerating the number of HIV tests vs. the number of people tested
        • 39:16 – Context features of CQL (link)
        • 40:01 – Retrieve Context of CQL (link)
        • 42:28 – TestHIVMeasure example – Define “Resulted HIV Test”
          • 42:49 – First Measure - Number of HIV Tests
          • 44:09 – Second Measure – Percentage of patients that were tested
        • 45:21 – Question – Where do you define “Active HIV Diagnosis”?
        • 46:23 – Question - Why wouldn’t you define “Active HIV Diagnosis” with a condition right away to make sure it’s applicable to the measurement period?

Cooking with CQL - Session 81 - 2024-03-28

Agenda:

  1. Aggregate Functions in CQL
  • Examples
  • Recording
    • 4:05 – Introduction to Aggregates in CQL
    • 6:46 – Aggregate Capabilities
      • 6:55 – Count
      • 7:06 – AllTrue/AnyTrue
      • 7:41 – Sum
      • 7:57 – Min
      • 8:16 – Max
      • 8:27 – Average
      • 9:02 – Median/Mode
      • 9:45 – Product
      • 10:02 – GeometricMean
      • 10:10 – Standard Deviation/Variance/Population Deviation/Population Variance
    • 10:50 – Review of Observation Resource in FHIR
    • Questions regarding Aggregate Queries:
      • 12:33 – How many observations does this patient have?
      • 13:55 – How many observations have an encounter?
      • 14:06 – How many different kinds of observations does this patient have?
      • 14:50 – Question: How will a duplicate observation kind type be counted?
      • 17:07 – How many of each kind of observation does this patient have?
      • 18:43 – Which kinds of observations have more than one observation?
      • 20:12 – How many kinds of observations have more than one observation?
      • 21:09 – For each kind of observation with more than one observation, what is the date and result of the most recent observation?
    • 22:23 – Execute/Results – Aggregate Answers

Cooking with CQL - Session 80 - 2024-02-22

Agenda:

  1. US Commons IG Review
  2. Using CQL With FHIR IG Review
  3. CQL Next Steps Review
  • Examples
  • Recording
    • 5:25 – US Commons IG Review
      • 9:20 – USCoreElements Library
        • 11:21 – Examples for building out forms
          • 11:32 – Humana Uniform Pharmacy Prior Authorization Request
          • 16:04 – Genetic Molecular Testing Prior Authorization Request
          • 17:27 – Medical Benefit Outpatient Drug Authorization Form
        • 19:28 – Testing the Questionnaire Content
          • 19:51 – Unit Testing – Patient Examples for Use Cases
          • 20:42 – Integration Testing – Postman API Testing Tool
    • 25:05 – Using CQL with FHIR IG
      • 27:24 – Conformance Criteria and Best Practice
      • 28:47 – CQL-related Profiles
      • 30:51 – CQL-related Operations
        • 30:55 – Library/$evaluate
        • 31:52 – $cql
        • 32:36 – CQL Evaluation Service
      • 33:26 – CQL ModelInfo
    • 35:13 – Proposed CQL Changes/CQL-Next

Cooking with CQL - Session 79 - 2024-01-25

Agenda - Review FHIRHelpers and examples of recently submitted issues

  • Examples
  • Recording
    • 4:14 – Agenda
    • 4:56 – FHIR Helpers: Markdown file
    • 5:40 – FHIR Helpers: FHIR and CQL
    • 7:46 – FHIR Helpers: Library Declarations
    • 8:11 – FHIR Helpers: ToInterval(FHIR.Period)
    • 8:44 – FHIR Helpers: ToCalendarUnit
    • 8:58 – FHIR Helpers: ToQuantity
    • 10:00 – FHIR Helpers: ToQuantityIgnoringComparator
    • 10:22 – FHIR Helpers: ToInterval(FHIR.Quantity)
    • 10:46 – FHIR Helpers: ToRatio
    • 10:53 – FHIR Helpers: ToInterval(FHIR.Range)
    • 10:58 – FHIR Helpers: ToCode
    • 11:07 – FHIR Helpers: ToConcept
    • 11:23 – FHIR Helpers: ToValueSet
    • 11:36 – FHIR Helpers: Conversion of Choice
    • 12:38 – FHIR Helpers: Resolving References and FHIR Path Support
    • 13:13 – FHIR Helpers: Slicing/Modifiers/Terminology Functions
    • 13:40 – FHIR Helpers: ToString
    • 15:31 – CQLIT-423: Day precision without expression containing 'date less than 1 day before date'
    • 17:54 – CQLIT-422: Bonnie unexpected coverage 99% QDM NCQA
    • 19:31 – CQLIT 421: Guidance in correcting the statement “Encounter with First Systolic Blood Pressure”
    • 21:23 – Library ThreeConditions

Cooking with CQL - Session 78 - 2023-11-30

Agenda - Review examples of recently submitted issues

  • Examples
  • Recording
    • 5:08 – PC-07 – Numerator reporting
      • 6:18 – Background: Numerator
      • 7:49 – Assessment
      • 8:16 – Recommendations for Approaches
      • 12:45 – Question: Operator Case Approach
      • 15:41 – Questions: Is “EncounterCondition” considered a function?
      • 16:58 – Discussion: Will multiple conditions and procedures be returned?
      • 30:44 – Question: Are these supplemental data elements?
      • 34:15 – Question: Return all encounter diagnoses that are not POA?
      • 37:15 – Question: What does the return result look like?
    • 43:20 – Discussion on CMS1218 Hospital Harm-Postoperative Respiratory Failure, Occurrence Issue with Numerator-Jira Ticket CQLIT-424

Cooking with CQL - Session 77 - 2023-09-28

Agenda - Review of the VS Code CQL Plugin User Guide

  • Examples
  • Recording
    • 4:26 - VS Code CQL Plugin User Guide (User Guide · cqframework/vscode-cql Wiki · GitHub)
    • 4:35 - Installing Visual Studio (VS) Code (Link to install VS Code)
    • 5:03 – Installing CQFramework Clinical Quality Language Extension
    • 7:01 - Features
      • 8:43 – Executing CQL
      • 10:59 - Viewing ELM
      • 12:17 – CQL Project Structure
    • 14:20 – CQL Options
    • 15:30 - Cloning a Repository
    • 19:11 – Making Changes to a Library
    • 20:38 - Committing Changes to a Library
    • 23:15 - Pulling Changes from the Repository
    • 24:57 - Using Terminology
    • 29:49 - Adding Test Data
    • 33:16 - Running Test Cases

Cooking with CQL - Session 76 - 2023-07-27

Agenda - Accessing Encounters with Direct-reference codes and MedicationRequests with Medication references

  • Examples
  • Recording
    • 4:09 – Set up
    • 5:02 – Direct Reference Code Encounters in QI-Core
    • 10:40 – QI-Core Primary Code Path Discussion
    • 18:50 – DRC approaches for QI-Core Encounter
    • 40:12 – QI-Core Medication Request Medication Element

Please refer to updated information on the QI-Core 4.1.1 patterns page for the latest guidance for medication requests.

Cooking with CQL - Session 75 - 2023-06-22

Agenda - Deep Dive - Intervals and Lists

  • Examples
  • Recording
    • 4:01 – Interval Values
    • 14:07 – List Values
    • 18:58 – Aggregates (List of Values)
    • 20:30 – Lists of Strings
    • 21:05 – Lists of Lists
    • 22:15 – List of Intervals
    • 25:05 – CQL IT Tracker Questions
    • 30:59 – Question Regarding Search Paths

Cooking with CQL - Session 74 - 2023-05-25

Agenda - Fluent Functions

  • Examples
  • Recording
    • 4:20 - Deep Dive on Fluent Functions
    • 12:32 - Using Fluent Functions using expressions with common patterns
    • 16:53 – US Core Tests in CQL
      • 18:54 – US Core Elements - Allergy and Intolerance Profile
      • 31:00 – US Core Elements – Conditions
      • 33:45 – US Core Elements – Laboratory Results
      • 34:42 – US Core Elements – Medication Request
      • 41:08 – US Core Elements – Smoking Status

Cooking with CQL - Session 73 - 2023-04-27

Agenda - Troubleshooting CQL Expressions

  • Examples
  • Recording
    • 4:05 – Medication Request Example
      • 7:45 – Inpatient Criteria Testing
      • 12:41 – Qualifying Encounters
      • 36:23 – Message Operator
    • 45:53 – Announcement: Session 67 Recording is now available on GitHub
    • 46:56 – General Questions

Cooking with CQL - Session 72 - 2023-03-23

Agenda - Deep Dive - Queries

  • Examples
  • Recording
    • 4:19 – Query intro and setup
    • 5:09 – Retrieves
    • 9:30 – Query definition
    • 10:40- Query Clauses
    • 13:21 – With and Without clause
    • 16:22 – Sort clause
    • 18:08 – From clause
    • 23:18 – Sub-clauses
    • 28:53 – Let clause
    • 33:07 – Singleton queries
    • 38:36 – Questions and Answers

Cooking with CQL - Session 71 - 2023-02-23

Agenda - Deep Dive - Operators and Functions

  • Examples
  • Recording
    • 4:15 – Operators and Functions in CQL
    • 5:58 – Comparison Operators
    • 7:14 – Equality vs Equivalence
    • 9:06 – Arithmetic
    • 10:28 – Rounding and Exponents
    • 11:26 – String Manipulation
    • 14:14 – Date and Time Comparison
    • 15:07 – Date and Time Arithmetic
    • 16:50 – Calendar Durations vs UCUM Units
    • 17:10 – Duration and Difference
    • 18:15 – Conditionals
    • 20:24 – Operator Precedence
    • 24:16 – Types of UCUM – Basic, Extended, and Arbitrary

Cooking with CQL - Session 70 - 2023-01-26

Agenda - Authoring Patterns

  • Examples
  • Recording
    • 4:00 – Authoring Patterns Wiki Page
    • 8:16 – Patient expression logic
    • 14:01 – Encounters expression logic
    • 16:21 – Conditions expression logic
    • 25:23 – Observations expression logic
    • 27:53 – Medications expression logic
    • 33:47 – Procedures expression logic
    • 34:07 – Devices expression logic
    • 35:02 – Allergies expression logic
    • 35:34 – Immunization examples

Cooking with CQL - Session 69 - 2022-12-01

Agenda - Building Shareable CQL - Colorectal Cancer Screening Example

  • Examples
  • Cooking with CQL Q&A
    • Value set links in Clinical Quality Language
    • Abbreviation 'Cs' as an alias
    • 'Most recent' versus 'last' in Clinical Quality Language
    • Clinical Quality Language evaluation service
  • Recording
    • 5:50 - Colorectal Cancer Screening Example
    • 9:54 - Flexible Sigmoidoscopy
    • 13:28 - Value Set Links in CQL
    • 14:48 - Abbreviation 'Cs' as an alias
    • 19:37 - Constructing a Rationale
    • 20:23 - Use of 'Most recent' versus 'last' in CQL
    • 26:21 - Review 2021 Update of Colorectal Cancer: Screening Recommendation
    • 32:55 - Applying 2021 Update of Colorectal Cancer: Screening Recommendation in CQL
    • 37:00 - CQL Evaluation Service

Cooking with CQL - Session 68 - 2022-10-27

Agenda - Deep Dive on Types, Values, and Choices

  • Examples
  • Cooking with CQL Q&A
    • Operational logic in Clinical Quality Language
    • Casting with choice statements in Clinical Quality Language
    • Using choice types in Clinical Quality Language

Cooking with CQL - Session 67 - 2022-09-29

Negation in QI Core

  • Examples
  • Cooking with CQL Q&A
    • D.code reference in "Venous Foot Pumps (VFP)"
    • Querying for Instances of negation using QI-Core
    • Difference in meaning between two General Not Done defining statements
    • Direct reference code in negation
    • Importance of being able to query using QI-Core
    • Use of direct reference codes for the negation expression in QDM measure
    • Measuring negation using QI-Core
    • Use of negation in future FHIR updates
    • Testing negation in QI-Core at the September 2022 Connectathon
    • Status information on negation in QI-Core
  • Recording
    • 4:00 – Types of Negation
    • 5:18 – Documentation of Events Not Done (What, When, Why, Negation)
    • 7:26 – What did not occur element
    • 8:35 – Negation Modeled in QI Core
    • 10:49 – Two Main Types of Criteria for Negation
    • 11:36 – General Not Done
    • 14:59 – Q & A regarding General Not Done, value sets and reference codes
    • 24:40 – Specific Not Done (direct reference code)
    • 36:50 – Q & A regarding General Not done DeviceNotRequested
    • 37:44 – New Quality Improvement Artifact Approach: Enforcing a profile on a retrieve
    • 40:09 – Q & A regarding New Quality Improvement Artifact Approach
    • 49:33 – Q & A regarding Profile Informed Authoring release

Cooking with CQL - Session 66 - 2022-07-28

Review QICore Profile Elements and Patterns

  • Examples
  • Cooking with CQL Q&A
    • Capturing principal diagnosis in the Quality Improvement (QI)-Core 5.0 release
    • September 2022 Connectathon testing
    • Building measures for testing for the September 2022 Connectathon

Cooking with CQL - Session 65 - 2022-06-23

This session will review CQL authoring using the VS Code plugin

Cooking with CQL - Session 64 - 2022-05-26

This session will review the current proposed translations of shared libraries from the AU 2022 QDM publication

See the ecqm-content-r4-2022 repository for content for this session

  • Examples
  • Cooking with CQL Q&A
    • Execution error using Global Common Functions in Fast Interoperability Resources® (FHIR®) 4.0
    • Writing a measure using Quality Improvement (QI)-Core in Fast Interoperability Resources® (FHIR®) 4.0
    • Measure run using Quality Improvement (QI)-Core
    • Locating 2022 electronic clinical quality measures (eCQMs)

Cooking with CQL - Session 63 - 2022-04-28

Based on requests from participants, this session will be a beginner's introduction to CQL

  1. Beginning CQL
  • Examples
  • Cooking with CQL Q&A
    • Fast Healthcare Interoperability Resources® (FHIR®) encounter in a JAVA implementation
    • Double quotes in Clinical Quality Language 1.5 Library
    • AgeInYearsAt function in the Clinical Quality Language 1.5 Library

Cooking with CQL - Session 62 - 2022-03-24

Topics:

  1. Community Acquired Pneumonia (CAP) Severity Scores (CURB-65 and CRB-65)
  • Examples
  • No Cooking with CQL Q&As from the 2022-03-24 session

Cooking with CQL - Session 61 - 2022-02-24

Topics:

  1. Aggregates, Grouping, and Having
  2. Cooking with CQL Wiki and Feedback Request
  • Examples
  • Cooking with CQL Q&A
    • CountOfListOfNulls vs. LengthOfListOfNulls functions
    • List Type specifiers in CQL
    • Use of the group by clause in CQL

Cooking with CQL - Session 60 - 2022-01-27

Topics:

  1. CQL Errata Review
  2. QICore Authoring Review
  • Examples
  • Cooking with CQL Q&A
    • Value Set functions in CQL Library v1.5
    • Profile Authoring in FHIR resources
    • Measure Authoring Development Integrated Environment (MADiE) support profile authoring

Cooking with CQL - Session 59 - 2021-12-02

Topics:

  1. Cumulative Medication Duration in FHIR
  • Examples
  • Cooking with CQL Q&A
    • CumulativeMedicationsDuration data model
    • CumulativeMedicationsDuration - MedicationRequestPeriod function
    • CumulativeMedicationsDuration - Atom plug-in for Medication Dispense Data
    • CumulativeMedicationsDuration - Collapse Interval per day
    • MedicationDispensePeriod - Dispense.relevantdatetime

Cooking with CQL - Session 58 - 2021-10-28

Topics:

  1. Focused on gathering community and stakeholder feedback on the concept of a shared CQL library repository
  2. Fluent Functions
  • Examples
  • Cooking with CQL Q&A
    • Fluent function - arithmetic operators
    • Fluent function - normalize interval
    • Fluent function - extensions in MAT
    • Fluent function - QDM specification
    • Fluent function - shared library
    • Fluent function - defining intervals
    • Fluent function - data requirements
    • Fluent function - libraries with the same name
    • Fluent function - overloading

Cooking with CQL - Session 57 - 2021-09-16

Topics:

  1. Age Calculations in QDM and FHIR
  2. Cumulative Medication Duration Calculations in QDM
    • fix for durationInDays as a Quantity
    • fix for authorDatetime if start boundary is unspecified
  3. UCUM Best Practice
  • Examples
  • Cooking with CQL Q&A
    • CumulativeMedicationsDuration - calculating age and evaluating it against two integers
    • CumulativeMedicationsDuration - combined and split doses
    • CumulativeMedicationsDuration - metric dosing (mg/dose) instead of tablets or capsules
    • CumulativeMedicationsDuration - tapering medications
    • CumulativeMedicationsDuration - date/time vs just date
    • CumulativeMedicationsDuration - authorDatetime vs just date
    • MedicationOrderPeriod vs MedicationDispensePeriod when calculating CumulativeMedicationsDuration
    • $cql operation and test case representation/packaging
    • Pharmacy Workgroup - harmonizing NCDCP and FHIR

Cooking with CQL - Session 56 - 2021-07-29

Topics:

  1. HL7/CMS Connectathon Review/Connectathon 28 CFP
  2. FHIR References Overview/Examples
  3. Open Source Tooling Stack Review
  4. Using Library/$evaluate and $cql Operations
  • Examples
  • Cooking with CQL Q&A
    • Library resource refresh tooling process
    • IG refresh process
    • Testing support for the Quality Measure IG
    • Reference and the identifier resource patterns
    • Resolving references within bundles

Cooking with CQL - Session 55 - 2021-06-24

Topics:

  1. Blood Pressure Example
  2. Age Calculation Example
  3. Immunization Not Done Example
  • Examples
  • Cooking with CQL Q&A
    • FHIRHelpers.ToDate(Patient.birthDate) - Global Common Library v5.0 to calculate age
    • Influenza Vaccine measure (CMS 147) - negation rationale pattern for Immunization Not Done queries
    • ImmunizationNotDoneExample - define “Influenza Vaccine Not Administered”
    • Difference between "GetBaseExtensions", "GetExtensions", and "GetExtension"

Cooking with CQL - Session 54 - 2021-05-27

Topics:

  1. Cumulative Medication Duration in FHIR
  2. Patterns and Practices
  3. Stratification
  • Examples
  • Cooking with CQL Q&A
    • Using FHIR - Cumulative Medication Duration
    • Using FHIR - Cumulative Medication Duration within the define function of the MedicationDispensePeriod
    • Using FHIR - Cumulative Medication Duration with a RolloutIntervals function
    • Measure Logic in CQL - Stratification

Cooking with CQL - Session 53 - 2021-04-22

Topics:

  1. TSH Testing Monitoring
  2. Expand Interval Examples
  3. Resolving and Tracing FHIR References in CQL
  4. CQL Exercises
  • Examples
  • Cooking with CQL Q&A
    • Queries in CQL - Immune Check Inhibitor (ICI) therapy with Thyroid Stimulating Hormone (TSH) testing in overlapping measurement periods
    • Queries in CQL - Therapy.relevantPeriod
    • Queries in CQL - Immune Check Inhibitor (ICI) therapy Bins - expand operator
    • Queries in CQL - library to illustrate patterns for accessing FHIR through references
    • General CQL - CQL vs FHIRv4.0 nested structure

Cooking with CQL - Session 52 - 2021-03-24

Topics:

  1. TSH Testing Every 8 Weeks
  2. Bleeding Events
  3. Composite Measure Calculation with mixed-basis components
  • Examples
  • Cooking with CQL Q&A
    • Queries in CQL - Immune Check Inhibitor (ICI) therapies Expressions
    • Queries in CQL - TST Testing very 8 Weeks
    • Measure Logic in CQL - Bleeding Events Encounters

Cooking with CQL - Session 51 - 2021-02-25

Topics:

  1. Cumulative Medication Duration in FHIR
  2. Calculating Months
  3. Week or wk?
  • Examples
  • Cooking with CQL Q&A
    • Date and Time Calculation - Calculating the overall expected duration (days) of a medication request in FHIR (periodUnit)
    • Date and Time Calculation - Calculating the cumulative period or start date for a single medication request in FHIR (validityPeriod or authoredOn)

Wiki Index

Home

Authoring Patterns - QICore v4.1.1

Authoring Patterns - QICore v5.0.0

Authoring Patterns - QICore v6.0.0

Authoring Measures in CQL

Composite Measure Development

Cooking with CQL Examples

Cooking with CQL Q&A All Categories
Additional Q&A Examples

CQL 1.3 Impact Guidance

CQL Error Messages

Developers Introduction to CQL

Discussion Items

Example Measures

Formatting and Usage Topics

Formatting Conventions

Library Versioning

Negation in QDM

QDM Known Issues

Specific Occurrences

Specifying Population Criteria

Supplemental Data Elements

Terminology in CQL

Translator Options For Measure Development

Unions in CQL

Clone this wiki locally