Details
-
Change Request
-
Resolution: Persuasive
-
Medium
-
Using CQL With FHIR (FHIR)
-
1.0.0-ballot
-
Clinical Decision Support
-
CQL ImplementationGuide
-
8.6.1
-
-
Chris Moesel / Juliet Rubini : 23-0-0
-
Enhancement
-
Non-substantive
Description
The cqf-modelInfoSettings extension represents ModelInfo settings via a Parameters resource. This Parameters resource, however, has no constraints – so there is no formal/computable guidance regarding what parameter names to use.
The CQL ImplementationGuide Example, however, contains a ModelInfo settings Parameters instance with parameters for modelName, modelUrl, patientClassName, patientBirthDatePropertyName, targetQualifier, and targetUrl.
If there is an expected set of parameter names, it would be helpful to implementers if they were formally specified in a value set and then bound to Parameters.parameter.name in a ModelInfoSettings profile on Parameter. Using an extensible binding would ensure consistency across implementations while still allowing for additional implementation-specific parameters.
The following FSH demonstrates what I am suggesting:
Profile: ModelInfoSettings Id: cql-modelinfosettings Parent: Parameters Title: "ModelInfo Settings" Description: "ModelInfo settings expressed using FHIR Parameters" * parameter.name from ModelInfoSettingsParameters (extensible)ValueSet: ModelInfoSettingsParameters Id: cql-modelinfosettingsparameters Title: "ModelInfo Settings Parameters" Description: "A set of parameter names commonly used for ModelInfo settings" * include codes from system ModelInfoSettingsParameterCodesCodeSystem: ModelInfoSettingsParameterCodes Id: cql-modelinfosettingsparametercodes Title: "ModelInfo Settings Parameter Codes" Description: "A set of parameter names commonly used for ModelInfo settings" * #modelName "Model name" "The model name represented as a string" * #modelUrl "Model URL" "The model URL represented as a string" * #patientClassName "Patient class name" "The patient class name represented as a string" * #patientBirthDatePropertyName "Patient birthdate property name" "The patient birthdate property name represented as a string" * #targetQualifier "Target qualifier" "The target qualifier represented as a string" * #targetUrl "Target URL" "The target URL represented as a string"
The cqf-modelInfoSettings extension could then constrain value[x] to be a reference to the ModelInfoSettings profile:
// In the cqf-modelInfoSettings extension
* value[x] only Reference($ModelInfoSettings)
Or it could be specified in the CQL ImplementationGuide profile if you prefer to leave the base extension definition unconstrained:
// In the cql-implementationguide profile
* extension[modelInfoSettings].valueReference only Reference($ModelInfoSettings)
Attachments
Issue Links
- is voted on by
-
BALLOT-58392 Affirmative - Paul Denning : 2024-Jan-FHIR IG CQL E1 STU
- Balloted
-
BALLOT-60932 Affirmative - Mark Kramer : 2024-Jan-FHIR IG CQL E1 STU
- Balloted
-
BALLOT-60969 Affirmative - Yunwei Wang : 2024-Jan-FHIR IG CQL E1 STU
- Balloted