Tags: cqframework/clinical_quality_language
Tags
CQL Engine v5 (#1755) * WIP * Type compatibility checking * Small changes * Clean up tests * detekt fix * Cleanup * Argument type check * KDocs * KDocs * Formatting * Tests for `FhirModelResolver.toCqlValue()` * Add tests for `is` * Replace Java `Class<T>` with type QNames * Docs * Docs * Simplify engine environment class * Docs * Use safe cast to `Iterable<T>` * Helper methods for `CqlClassInstance` * CQL value hierarchy in Kotlin classes in the engine * New sealed `Value` interface for CQL values (incl. new `Boolean`, `Integer`, `Long`, `Decimal`, `String`, and `List` classes) (#1751) * Sealed class hierarchy for CQL types * Sealed Value interface for CQL values * Cleanup * Initial implementation of FHIR model resolver in JS (#1754) Initial implementation of FHIR model resolver in JS. JS-export CQL value classes, CQL type classes. Type hints for expression results. * Filter out nulls in the `codes` input to Retrieve https://cql.hl7.org/04-logicalspecification.html#retrieve * Ignore "id" elements when checking FHIR complex types for equivalence (#1779) * #1778 Ignore "id" elements when checking FHIR complex types for equivalence * Run detekt * `Value.toString()` returns the CVL representation of the CQL value (#1782) #1781 `Value.toString()` returns the CVL representation of the CQL value * Proposal for improved CQL value representation and v5 migration guide (#1787) v5 migration guide * Handle null `state` in `EquivalentEvaluator`
Feature/add debugger support (#1786) * add support for breakpoint handling to the engine EvaulationVistitor * add breakpoint handler hooks with onExpressionDefEvaluated callback * remove the redundant onAfterExpression override * revert State parameters/contextValues to v4.8 Any? signatures 6b082c3 cleanly merged v5 type changes (Value? and String?) into State.kt. Revert to Any? to stay compatible with cqf-fhir-cr on v4.8 signatures. * add onExpressionDefEntered callback with call-site tracking * wire onExpressionDefEntered/Evaluated callbacks into FunctionRef evaluation and State * spotless apply
Added selective requirements implementation (#1757) * Added support for parameterized terminology-valued data requirements * Improved data requirements inference and reporting, especially for non-valueset terminology filters. Added query selectivity determination Added an CqlCompilerOption to support whether or not to report query selectivity Added query selectivity extension output to DataRequirementProcessor * Apply suggestion from @antvaset Co-authored-by: Anton Vasetenkov <antvaset@gmail.com> * Update Src/java/elm-fhir/src/main/kotlin/org/cqframework/cql/elm/requirements/ElmQuerySelectivity.kt Co-authored-by: Anton Vasetenkov <antvaset@gmail.com> * Added implicit context query when determining selectivity * Additional functionality and test cases --------- Co-authored-by: Bryn Rhodes <bryn@alphora.com> Co-authored-by: JP <jonathan.i.percival@gmail.com> Co-authored-by: Anton Vasetenkov <antvaset@gmail.com>
PreviousNext