This page is part of the Using CQL with FHIR Implementation Guide (v3.0.0-ballot: STU 3 Ballot) based on FHIR (HL7® FHIR® Standard) R4. This version is a pre-release. The current official version is 2.0.0. For a full list of available versions, see the Directory of published versions
Changes
This page details changes made in each version of the Using CQL with FHIR Implementation Guide.
STU3 Ballot (version 3.0.0-ballot)
Compatible, Substantive Changes
- FHIR-44779: Added support for relatedRequirements in data requirements
- FHIR-48655: Adopted CRMI artifactEndpointConfigurable patterns for operations throughout
- FHIR-50831: Required single context libraries
- FHIR-51076: Specified how messages are returned on successful execution
- FHIR-51084: Added support for Integer Intervals
- FHIR-51454: Identifiers should be usable as "code" values
- FHIR-51539: Add a resolve namespace capability
- FHIR-52834: Require Library resources to match IG base canonical
- FHIR-53031: Surface namespace in the library resource
- FHIR-53435: Allow for date values in toInterval
- FHIR-53463: Consider defining age fluent functions
- FHIR-53580: Add translator parameter
- FHIR-55977: Support Time Intervals
- FHIR-56046: Provide timezone evaluation guidance
- FHIR-56226: Add mapping for Intervals of Integer, Decimal, and Long
- FHIR-56396: Define CQLGroupDefinition and $evaluate operation
- FHIR-56426: Support describing the selectivity of an expression
- FHIR-57261: Add evaluatedResource references to Group result
- FHIR-57264: Document that type specifiers must be fully qualified
- FHIR-57487: Add assertedDate for Condition and AllergyIntolerance
- FHIR-57488: Document use of .getValue() vs .value
- FHIR-57875: Add fluent function for patient SPCU extension
- FHIR-58069: Add support for subjectGroup
Non-Substantive Changes
- FHIR-45518: Add example dependencies on IPS and QICore
- FHIR-51191: Document the need to check for no rejected tasks on a positive request
- FHIR-52862: Clarify parameters in $cql operation
- FHIR-52863: Add data-absent-reason documentation
- FHIR-53026: Provide guidance on behavior of FHIR Quantity with respect to calendar units
- FHIR-53146: Add best-practice discussion on use of date and time values
- FHIR-53147: Add general language about writing CQL against FHIR
- FHIR-53198: Clarify namespace is implied by the containing IG
- FHIR-53575: Document best practices for date/time values
- FHIR-56174: Allow isEmptyList, isEmptyTuple, and cqlType in Extension
- FHIR-56227: Correct mapping of Long to String as only the string (not an L)
- FHIR-56266: Clarify that cqf-cqlType extension must be provided on list and tuple types
- FHIR-56804: Provide guidance on how to interpret a data requirement in terms of a FHIR API request
- FHIR-57260: Reference precision extensions in the evaluation result profile
- FHIR-57614: Alias Naming
STU2 Publication (version 2.0.0)
Non-Compatible Changes
- FHIR-50821: Added support for inline libraries in Library/$evaluate
- FHIR-49606: Required version in narrative if present in the CQL/ELM media type
- FHIR-49603: Clarified library versioning conformance requirement
Compatible, Substantive Changes
- FHIR-50721: Incorporated USCoreCommon functions that are not USCore specific
- FHIR-50473: Added mapping for BackboneElement and Extension and documented with examples
- FHIR-50215: Added guidance on the use of the cqf-libraryAlias extension
- FHIR-50172: Added precision to the mapping of quantity, decimal, and date/time values
- FHIR-50050: Added includePrivate to the Library/$evaluate operation
- FHIR-48683: Added support for parameter constraints
- FHIR-48618: Added support empty tuple
- FHIR-48365: Added ModelInfo settings outside the context of a StructureDefinition
- FHIR-46559: Include child library expression results in Library/$evaluate
Non-Substantive Changes
- FHIR-49740: Clarified ability for in-line expressions to reference declarations in libraries in context
- FHIR-49626: Corrected label of changes page
- FHIR-49625: Submitted "Plain Language Summary about this Guide"
- FHIR-49605: Provided rationale for best-practice, rather than requirement, for version declaration in media types
- FHIR-49604: Added rationale and language to library-level identifiers conformance requirement
- FHIR-49475: Explain USCore-ModelInfo
- FHIR-49379: Clarified representation in narrative sections for code systems, values sets, and codes
- FHIR-49378: Corrected mistaken lettering in conformance requirements
- FHIR-49317: Punctuation, Spelling, Spacing corrections
- FHIR-49316: Clarified release language
- FHIR-49315: Clarified terminology-valued types and elements
- FHIR-49314: Corrected label of changes page
- FHIR-49195: Clarified how profile names are constructed in ModelInfo
- FHIR-49150: Updated examples and conventions for fluent function use
- FHIR-49138: Updated SNOMED CT version in example
- FHIR-49103: Added guidance regarding contains as a terminological operator
- FHIR-49076: Corrected links to historical IGs that include previously released material
- FHIR-48647: Clarified top-level expression mapping for parameters and data requirements
- FHIR-45598: Clarified activity extent description and examples
STU2 Ballot (version 2.0.0-ballot)
- FHIR-48919: Updated discussion of negation to address rejected proposals use case and added activity extent discussion. Applied (here)
- FHIR-48819: Documented fluent function naming convention. Applied (here)
- FHIR-48814: Updated examples that did not follow naming conventions. Applied (here)
- FHIR-48641: Added FHIRHelpers and FHIRCommon libraries. Applied (here)
- FHIR-48529: Noted difference in precision between CQL and FHIR date/time types. Applied (here)
- FHIR-48332: Noted Long mapping to integer64 is only available in R5 and above. Applied (here)
- FHIR-46423: Added guidance on library name length. Applied (here)
- FHIR-46112: Clarified mapping for lists of lists. Applied (here)
- FHIR-45580: Expanded guidance on use of terminologies. Applied (here)
- FHIR-45579: Updated missing information example to improve flow. Applied (here)
STU1 Publication (version 1.0.0)
The following changes were made as a result of comments received in the 1.0.0-ballot
NOTE: This changelist is inclusive of changes published in the 1.0.0-snapshot version
Non-Compatible Changes
Compatible, Substantive Changes
- FHIR-43885: A Conformance Requirement that SHOULD be followed is confusing Applied (here)
- FHIR-43780: Relax prohibition against string-based membership testing Applied (here)
- FHIR-43698: Conformance requirement 2.10 - provide example Applied (here)
Non-Substantive Changes
- FHIR-45296: QA review fixes
- FHIR-45273: Added guidance on using expressions in artifacts (Applied here)
- FHIR-44666: Documented ModelInfo usage
- FHIR-44551: Added examples of using CQL parameters (Applied here)
- FHIR-44548: Large number of technical corrections Applied (here), (here), (here), (here), and (here)
- FHIR-44541: Attributes versus Elements (Applied here)
- FHIR-44512: add link to cqf-notDoneValueSet (Applied here)
- FHIR-44113: Consider updating examples to align with Conformance Requirement 2.14 Applied (here), (here), and (here)
- FHIR-44099: FHIR version of code structure does not include the term "using" Applied (here)
- FHIR-44091: Missing period (Applied here)
- FHIR-44090: Consider including the terminology operators link (Applied here)
- FHIR-44089: Value set is written 5 different ways Changes applied in the whole section (here)
- FHIR-44087: Missing periods (Applied here)
- FHIR-44086: Confusing Terminology Applied (here)
- FHIR-44082: Incomplete Sentence Applied (here)
- FHIR-44079: Missing period (Applied here)
- FHIR-44077: Too many spaces before colon (Applied here)
- FHIR-44075: Conflicting information about underscores Applied (here)
- FHIR-44073: Incorporated ModelInfo guidance from QICore Applied (here)
- FHIR-44072: Incorporated Patterns guidance from QICore Applied (here)
- FHIR-44071: Updated negation guidance (here)
- FHIR-44069: "When" should be lower case Applied (here)
- FHIR-44066: Should Health Level 7 be upper class Applied (here)
- FHIR-44065: Misspelling of "Explain" in Status: Summary Applied (here)
- FHIR-44063: Consider adding an acronyms page Applied (here), (here), (here), and (here)
- FHIR-44061: Removed multiple periods in banner
- FHIR-44059: Additional documentation on scope and purpose (Applied here)
- FHIR-43931: Fixed incomplete sentence
- FHIR-43915: Clarify double-braces / context in FHIR Query Pattern extension Applied (here)
- FHIR-43901: Created new ModelInfoSettings profile (Applied here)
- FHIR-43886: CQL Library Evaluate: return parameter doesn't always return all expressions (Applied here)
- FHIR-43882: Added additional details to 2.18.2 to note profiles are StructureDefinitions with derivation set to constraint
- FHIR-43881: Typos: package, csn Applied (here)
- FHIR-43877: Conflict in Mime Type version guidance and Library profiles Applied (here), (here), (here), (here), and (here)
- FHIR-43795: Clarified Tuple and List type representation (Applied here)
- FHIR-43794: Clarified top-level expressions can return tuples and lists (Applied here)
- FHIR-43793: Clarify FHIR Type Mapping for List and Tuple types (Applied here)
- FHIR-43789: Fixed a typo in 2.14
- FHIR-43787: Added Link to and example usage of cqf-notDoneValueSet (Applied here)
- FHIR-43786: Clarified data type names section (Applied here)
- FHIR-43785: Define or Replace "Initial Case" (Applied here)
- FHIR-43783: Clarify purpose of "Representation in Narrative" section Applied (here)
- FHIR-43777: Convert text link to hyperlink (Applied here)
- FHIR-43774: Fixed incomplete sentence in nested libraries (Applied here)
- FHIR-43765: Clarified terminologies are examples only (Applied here)
- FHIR-43764: Clarified description of prefetchData.data (Applied here)
- FHIR-43763: Clarified description of prefetchData.key (Applied here)
- FHIR-43760: Clarified description of prefetchData.data (Applied here)
- FHIR-43759: Clarified description of prefetchData.key (Applied here)
- FHIR-43758: Added binding to CQL Access Modifier (Applied here)
- FHIR-43755: Added guidance on absence of isRetrievable extension (Applied here)
- FHIR-43754: Added guidance on absence of isIncluded extension (Applied here)
- FHIR-43752: Added missing extension references (Applied here)
- FHIR-43747: Added a dependency slice to relatedArtifact in the CQLModule profile
- FHIR-43742: Consider tightening ELM Library profile requirements w/ invariants Applied (here, here)
- FHIR-43741: CQL Module: Consider using invariant to require parameters have defaultValue or cqlType (Applied here)
- FHIR-43740: CQL Module: Clarify inputParameters extension vs Library.parameter element (Applied here)
- FHIR-43739: Tightened CQLModelInfo profile (Applied here)
- FHIR-43738: Tightened CQLLibrary profile (Applied here)
- FHIR-43737: Clarify use of data absent reason codes in CQL Evaluation Result Applied (here)
- FHIR-43734: Mismatch between CQL Capability Statement profile and example Applied (here)
- FHIR-43733: Typo: A library profiles Applied (here)
- FHIR-43732: Incorrect reference to CRMI IG Applied (here)
- FHIR-43731: Page listing does not match menu Applied (here) and in menu.xml
- FHIR-43703: Updated example in Concepts to include a code from another system
- FHIR-43666: Fixed incomplete sentence
- FHIR-43665: Clarified conformance requirement 1.1 (Applied here)
- FHIR-43582: Added -version to the CQL naming convention conformance requirement 2.18
- FHIR-43581: Clarified negation guidance
- FHIR-43480: Typo in Conformance Requirement 2.17
- FHIR-43479: Removed quotes from parameters in the example in 2.8
- FHIR-43439: Clarified human readable representation of codes
- FHIR-43436: Finished sentence on 2.1.2
- FHIR-43425: Fixed reference to CRMI
- FHIR-43418: Typo fixes on using CQL page
- FHIR-43340: Clarified modelInfoSettings
Initial STU 1 Ballot Changes (version 1.0.0-ballot)
This is the first ballot of this implementation guide in this form, but the content has been balloted and published in multiple prior implementation guides, including:
The following changes were made as a result of ballot comments received in the September 2023 ballot of the Canonical Resource Management Infrastructure IG. One of those comments was the suggestion to break this CQL-specific content out into its own implementation guide; this IG is the result of that change.
- FHIR-43076: Use a dataAbsentReason extension to indicate missing results
- FHIR-43075: Add guidance on missing information
- FHIR-42921: Consider requiring the use of a SignatureLevel higher than none
- FHIR-42574: Libraries are not required for CQL
- FHIR-42573: Explaing conformance requirement 4.12
- FHIR-42571: Representation in a Library needs clarification
- FHIR-42570: Code URI expectation inconsistent
- FHIR-42569: What is "knowledge artifact CQL"?
- FHIR-42568: Why so much discussion about VSAC in an international spec?
- FHIR-42567: Use a value set avoiding OIDs
- FHIR-42566: Update location of code system URIs
- FHIR-42565: How is the association between a namespace and URI established?
- FHIR-42562: Put versioning stuff together
- FHIR-42561: Explain identifier rules
- FHIR-42560: Better explain library declarations
- FHIR-42559: Clarify language around CQL artifacts
- FHIR-41869: No content in this ModelInfo section of Using CQL
- FHIR-41868: Provide more context in examples