Situational Awareness for Novel Epidemic Response
1.0.1 - CI Build International flag

Situational Awareness for Novel Epidemic Response, published by HL7 International / Public Health. This guide is not an authorized publication; it is the continuous build for version 1.0.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-saner/ and changes regularly. See the Directory of published versions

Data Type Profile: MeasureCriteria - Detailed Descriptions

Draft as of 2024-01-25

Definitions for the MeasureCriteria data type profile.

Guidance on how to interpret the contents of this table can be found here

0. Expression
2. Expression.extension:alternateCriteria
Slice NamealternateCriteria
ShortOther expressions for computing the criterion
Control0..1
TypeExtension(Alternate criteria for performing a measure) (Extension Type: Expression(MeasureCriteria))
4. Expression.description
ShortDescribe what the criterion does to a human (non-engineer)
Control1..?
Must Supporttrue
6. Expression.name
Shortname should align with code.
Must Supporttrue
8. Expression.language
ShortProvide the language for the criterion
Must Supporttrue
10. Expression.expression
ShortA measure must describe how to automate the computation in an expression that can be evaluated in the specified language
Control1..?
Must Supporttrue

Guidance on how to interpret the contents of this table can be found here

0. Expression
Definition

A expression that is evaluated in a specified context and returns a value. The context of use of the expression must specify the context in which the expression is evaluated, and how the result of the expression is used.

ShortAn expression that can be used to generate a value
Control0..*
This element is affected by the following invariants: ele-1
Is Modifierfalse
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
exp-1: An expression or a reference must be provided (expression.exists() or reference.exists())
exp-1: An expression or a reference must be provided (expression.exists() or reference.exists())
2. Expression.extension:alternateCriteria
Slice NamealternateCriteria
Definition

Provides Alternate criteria for performing a measure, (e.g., CQL, Drools, et cetera)

ShortOther expressions for computing the criterion
Control0..1
TypeExtension(Alternate criteria for performing a measure) (Extension Type: Expression(MeasureCriteria))
Is Modifierfalse
Summaryfalse
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
4. Expression.description
Definition

A brief, natural language description of the condition that effectively communicates the intended semantics.

ShortDescribe what the criterion does to a human (non-engineer)Natural language description of the condition
Control10..1
Typestring
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Must Supporttrue
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
6. Expression.name
Definition

A short name assigned to the expression to allow for multiple reuse of the expression in the context where it is defined.

Shortname should align with code.Short name assigned to expression for reuse
Control0..1
Typeid
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Must Supporttrue
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
8. Expression.language
Definition

The media type of the language for the expression.

ShortProvide the language for the criteriontext/cql | text/fhirpath | application/x-fhir-query | etc.
Control1..1
BindingUnless not suitable, these codes SHALL be taken from ExpressionLanguagehttp://hl7.org/fhir/ValueSet/expression-language
(extensible to http://hl7.org/fhir/ValueSet/expression-language
Typecode
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Must Supporttrue
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
10. Expression.expression
Definition

An expression in the specified language that returns a value.

ShortA measure must describe how to automate the computation in an expression that can be evaluated in the specified languageExpression in specified language
Control10..1
Typestring
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Must Supporttrue
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))

Guidance on how to interpret the contents of this table can be found here

0. Expression
Definition

A expression that is evaluated in a specified context and returns a value. The context of use of the expression must specify the context in which the expression is evaluated, and how the result of the expression is used.

ShortAn expression that can be used to generate a value
Control0..*
This element is affected by the following invariants: ele-1
Is Modifierfalse
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
exp-1: An expression or a reference must be provided (expression.exists() or reference.exists())
2. Expression.id
Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

ShortUnique id for inter-element referencing
Control0..1
Typestring
Is Modifierfalse
XML FormatIn the XML format, this property is represented as an attribute.
Summaryfalse
4. Expression.extension
Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

ShortAdditional content defined by implementations
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Control0..*
TypeExtension
Is Modifierfalse
Summaryfalse
Alternate Namesextensions, user content
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
SlicingThis element introduces a set of slices on Expression.extension. The slices are unordered and Open, and can be differentiated using the following discriminators:
  • value @ url
6. Expression.extension:alternateCriteria
Slice NamealternateCriteria
Definition

Provides Alternate criteria for performing a measure, (e.g., CQL, Drools, et cetera)

ShortOther expressions for computing the criterion
Control0..1
TypeExtension(Alternate criteria for performing a measure) (Extension Type: Expression(MeasureCriteria))
Is Modifierfalse
Summaryfalse
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
8. Expression.description
Definition

A brief, natural language description of the condition that effectively communicates the intended semantics.

ShortDescribe what the criterion does to a human (non-engineer)
Control1..1
Typestring
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Must Supporttrue
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
10. Expression.name
Definition

A short name assigned to the expression to allow for multiple reuse of the expression in the context where it is defined.

Shortname should align with code.
Control0..1
Typeid
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Must Supporttrue
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
12. Expression.language
Definition

The media type of the language for the expression.

ShortProvide the language for the criterion
Control1..1
BindingUnless not suitable, these codes SHALL be taken from ExpressionLanguage
(extensible to http://hl7.org/fhir/ValueSet/expression-language
Typecode
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Must Supporttrue
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
14. Expression.expression
Definition

An expression in the specified language that returns a value.

ShortA measure must describe how to automate the computation in an expression that can be evaluated in the specified language
Control1..1
Typestring
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Must Supporttrue
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
16. Expression.reference
Definition

A URI that defines where the expression is found.

ShortWhere the expression is found
Comments

If both a reference and an expression is found, the reference SHALL point to the same expression.

Control0..1
Typeuri
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))