Using CQL With FHIR
3.0.0-ballot - STU 3 Ballot

Using CQL With FHIR - Downloaded Version null See the Directory of published versions

## Extensions

Page standards status: Trial-use | Highlight text changes?

### ModelInfo Extensions

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

Extension | Description | FMM
--- | --- | ---
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

### CQL-Related Extensions

These extensions provide capabilities related to the use of CQL with Fast Healthcare Interoperability Resources (FHIR) knowledge artifacts.

Extension | Description | FMM
--- | --- | ---
Characteristic Expression | An expression that defines the criteria for group membership. This extension can only be used on a Group resource with a membership of definitional. When this expression is used, the Group resource cannot have any characteristic elements; this mechanism is exclusive with characteristics. The result of the expression SHALL be boolean-valued. The expression SHALL be parameterized with a %context variable that represents the subject being tested for membership. If evaluation of the expression results in true, the subject is considered a member of the group. | 3
Code Options | A logical reference (e.g. a reference to ValueSet.url) to a value set/version that identifies a set of possible coded values representing possible activities for request or event resources. | 3
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 Empty Tuple | Indicates that the value of the parameter or extension is an empty tuple. 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 tuple. The type of the value element used should be boolean. | 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
Logic Definition | Represents a specific logic definition used by the artifact. When logic is referenced from knowledge artifacts, this extension allows each referenced definition to be represented independently so that consumers know which specific expressions are being referenced (i.e. not all expressions in a given library are always used), as well as allows processing applications (such as narrative generation) to easily surface the definitions to provide capabilities such as navigation. | 2
Messages | An OperationOutcome that contains any information, warning, and/or error messages that were generated while processing an operation such as $evaluate or $prepopulate. | 3
Related Requirement | Allows relationships to be established between data requirements. For example, a Medication data requirement that depends on a MedicationRequest data requirement. | 1
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

### Extensions Defined in This Guide

These extensions are defined by this implementation guide.

Extension | Description | FMM
--- | --- | ---
CQL Evaluated Resource | A resource referenced during the evaluation of the logic used to determine membership of the entity. | 1
CQL FHIR Query Pattern Coverage | Describes the extent to which the FHIR query patterns given for a data requirement cover the criteria of that data requirement. See FHIR Query Patterns for guidance on constructing query patterns and determining coverage. | 1
CQL Namespace | The CQL namespace of the CQL library. For Library resources packaged in FHIR NPM Packages, this SHALL be the packageId of the package. | 1
CQL Namespace URI | The CQL namespace URI of the CQL library. For Library resources packaged in FHIR NPM Packages, this SHALL be the base canonical of the package. | 1
CQL Selectivity | Describes the selectivity of a set of data requirements with respect to a particular expression. | 1
Time HasOffset | Indicates whether the datetime value being represented included a timezone offset. False indicates that the value being exchanged does not have a timezone offset, but the FHIR representation requires it. | 1