Using CQL with FHIR
1.0.0 - STU1 International flag

Using CQL with FHIR, published by HL7 International / Clinical Decision Support. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/cql-ig/ and changes regularly. See the Directory of published versions

Extensions

ModelInfo Extensions

These extensions provide the ability to configure the way that ModelInfo should be produced for a given extension, profile, or implementation guide.

ExtensionDescriptionFMM
ModelInfo Is Included

Specifies whether the profile should be included in the model info constructed for an artifact collection such as an implementation guide. If this extension is not present, included is true by default for resources and profiles, but not data types (unless they are indirectly referenced by included resources or profiles). Note that even if isIncluded is false for a resource or profile, it will still be included in model info if it is a required dependency of some other included resource, profile, or data type.

1
ModelInfo Is Retrievable

Specifies whether the class constructed for the profile should be marked as retrievable in the model info (meaning whether or not it can appear as the target of a retrieve expression). If this value is not specified, retrievable is true for resources and false for data types.

1
ModelInfo Label

Specifies the label for the class constructed in the model info for the profile (i.e. an alternative, user-friendly name that can be used as the identifier for the class in Clinical Quality Language (CQL) expressions).

1
ModelInfo Primary Code Path

Specifies the primary code path for the class constructed in the model info for the profile (i.e. the path to the code-valued element on the resource that should be used as the default terminology filter when no terminology target is specified in a CQL retrieve).

1
ModelInfo Settings

Specifies the settings to be used for constructing modelinfo from profile definitions.

1
ExtensionDescriptionFMM
CQL Access Modifier

Surfaces the CQL access modifier of the parameter definition on which it appears.

1
CQL Options

Specifies a parameters (contained) resource that identifies the options for the CQL-to-ELM translator associated with the CQL content.

1
CQL Type

Surfaces the CQL type of the parameter definition on which it appears.

1
Default Value

Provides a default value for a parameter definition.

3
Direct Reference Code

Defines a code directly referenced by artifact logic, as opposed to a value set. Direct reference codes may be the target of data requirements.

2
FHIR Query Pattern

A FHIR Query URL pattern that corresponds to the data specified by the data requirement. If multiple FHIR Query URLs are present, they each contribute to the data specified by the data requirement (i.e. the union of the results of the FHIR Queries represents the complete data for the data requirement). This is not a resolvable URL, in that it will contain 1) No base canonical (i.e. it's a relative query), and 2) Parameters using tokens that are delimited using double-braces (i.e. context parameters). These context parameters are available based solely on the subjectType, according to the following: Patient: context.patientId, Practitioner: context.practitionerId, Organization: context.organizationId, Location: context.locationId, Device: context.deviceId. For example, for a Library with a subjectType of Patient, the context parameter `context.patientId` will be used as a token to be replaced with the `id` of the Patient in context. This extension is used primarily to address the use case for satisfying a data requirement for a single subject. However, the query pattern could also be used to satisfy population level requests by removing the subject-level filter from the query.

3
Input Parameters

Specifies the input parameters to the operation (such as a test case description or a data requirements or evaluate operation).

2
Is Empty List

Indicates that the value of the parameter is an empty list. Because the parameter element of a Parameters resource must have a value, the value element must be present with either an actual value, or an extension, this extension supports the case when the actual parameter value being represented is an empty list. The type of the value element used should be appropriate to the element type of the list-valued expression.

1
Is Selective

Allows a given data requirement to be identified as "selective", meaning that it can be used as an additive criteria to filter a population. A selective data requirement is guaranteed to define a subset (not necessarily proper) of the initial population of an artifact. If multiple data requirements are marked selective, they all apply (i.e. AND semantics).

3
Not Done ValueSet

A logical reference (e.g. a reference to ValueSet.url) to a value set/version that identifies a set of possible coded values representing activities that were not requested, ordered, or performed.

3
Supported CQL Version

Indicates that the server supports the given version of Clinical Quality Language (CQL). Valid values are major.minor and optionally the patch version of any published version of the CQL specification.

2
Value Filter

Allows additional value-based filters to be specified as part of a data requirement.

3