Describe the issue
The FHIR Clinical Practice Guidelines IG defines the CPGExecutableValueSet profile to allow the use of pre-expanded ValueSets (i.e. they already have the "expansion" element defined) in scenarios where that's advantageous. A few use cases:
CQL authoring where an author is defining a simple test ValueSet
CQL evaluation where pre-expansion has performance benefits
ValueSets where loading the entire CodeSystem would be restricted by licensing
Currently if a ValueSet is loaded into HAPI the with the "expansion" element already defined that value is ignored and the expansion is computed based on the available CodeSystems and will either return empty or fail if the appropriate CodeSystem is not loaded.
Concretely, this change means making HAPI "trust" ValueSets which already have the "expansion" element defined and use the element directly when doing expansions.
Considerations:
Maybe the "trust" behavior should be configurable
Maybe the "trust" period should be configurable
Maybe this should only apply to ValueSets with the CPGExecutableValueSet extensions explicitly defined
Environment (please complete the following information):
The "trust" behavior was implemented and is currently not configurable. If a ValueSet is loaded with a pre-expanded set of codes, that pre-expansion will be used for CQL/Measure evaluation.
Describe the issue The FHIR Clinical Practice Guidelines IG defines the CPGExecutableValueSet profile to allow the use of pre-expanded ValueSets (i.e. they already have the "expansion" element defined) in scenarios where that's advantageous. A few use cases:
Several IGs use this profile to define test cases for their content: Connectathon Opioid CDS R4
Currently if a ValueSet is loaded into HAPI the with the "expansion" element already defined that value is ignored and the expansion is computed based on the available CodeSystems and will either return empty or fail if the appropriate CodeSystem is not loaded.
Concretely, this change means making HAPI "trust" ValueSets which already have the "expansion" element defined and use the element directly when doing expansions.
Considerations:
Environment (please complete the following information):