Quality Measure Implementation Guide (STU5)
5.0.0-ballot2 - ballot United States of America flag

Quality Measure Implementation Guide (STU5), published by HL7 International / Clinical Quality Information. This guide is not an authorized publication; it is the continuous build for version 5.0.0-ballot2 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/cqf-measures/ and changes regularly. See the Directory of published versions

Resource Profile: CQFM Computable Measure

Official URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/computable-measure-cqfm Version: 4.0.0
Active as of 2024-04-09 Computable Name: CQFMComputableMeasure

The CQFM Computable Measure Profile describes minimum expectations for a computable electronic Clinical Quality Measure (eCQM), including the use of a computable library, and the use of expressions or identifiers for all criteria.

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from Measure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Measure SC 0..* Measure A quality measure definition
cmp-1: Population basis must be specified at the root, or on each group
cmp-2: Scoring must be specified at the root, or on each group
cmp-3: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-4: Improvement notation must be specified for scoring types other than cohort
cmp-5: If type is specified at the root, it may not be specified on any group
cmp-6: If riskAdjustment is specified at the root, it may not be specified on any group
cmp-7: If rateAggregation is specified at the root, it may not be specified on any group
... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population

... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
... effectiveDataRequirements S 0..1 canonical(CRMI Module Definition Library) Effective required data for evaluation
URL: http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-effectiveDataRequirements
... subject[x] S 0..1 CodeableConcept, Reference(Group) E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
... library S 0..* canonical(CRMI Computable Library) Logic used by the measure
... scoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
Binding: MeasureScoring (extensible)
... type SC 0..* CodeableConcept process | outcome | structure | patient-reported-outcome | composite
... riskAdjustment C 0..1 string How risk adjustment is applied for this measure
... rateAggregation C 0..1 string How is rate aggregation performed for this measure
... improvementNotation SC 0..1 CodeableConcept increase | decrease
Binding: MeasureImprovementNotation (required)
... group SC 0..* BackboneElement Population criteria group
cmp-8: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-9: Improvement notation must be specified for scoring types other than cohort
.... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population

.... scoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring
Binding: MeasureScoring (extensible): How the measure calculation is performed

.... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
.... scoringPrecision 0..1 positiveInt Number of decimal places
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringPrecision
.... compositeScoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-compositeScoring
Binding: CompositeMeasureScoring (extensible): How the composite measure calculation is performed

.... component SC 0..* RelatedArtifact What artifact
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-component
.... type C 0..* CodeableConcept process | outcome | structure | patient-reported-outcome
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type
Binding: MeasureType (extensible): Indicates whether the measure is used to examine a process, an outcome over time, a patient-reported outcome, or a structure measure such as utilization.


.... riskAdjustment C 0..1 string How risk adjustment is applied for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment
.... rateAggregation C 0..1 string How is rate aggregation performed for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation
.... improvementNotation SC 0..1 CodeableConcept increase | decrease
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation
Binding: MeasureImprovementNotation (required): Indicates how to interpret the calculated score of the measure

.... population SC 0..* BackboneElement Population criteria
cmp-32: Computable measures must use text/cql-expression or text/cql-identifier for all criteria
.... stratifier SC 0..* BackboneElement Stratifier criteria for the measure
cmp-33: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
..... appliesTo 0..* CodeableConcept Which population should this stratification apply to? If none is specified, the stratification applies to all populations in the group.
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-appliesTo
Binding: MeasurePopulationType (extensible): Indicates the population


..... component SC 0..* BackboneElement Stratifier criteria component for the measure
cmp-34: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
... supplementalData SC 0..* BackboneElement What other data should be reported with the measure
cmp-35: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Measure.scoringextensibleMeasureScoring
http://terminology.hl7.org/ValueSet/measure-scoring
Measure.improvementNotationrequiredMeasureImprovementNotation
http://terminology.hl7.org/ValueSet/measure-improvement-notation

Constraints

IdGradePath(s)DetailsRequirements
cmp-1errorMeasurePopulation basis must be specified at the root, or on each group
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists()).allTrue()
cmp-2errorMeasureScoring must be specified at the root, or on each group
: scoring.exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()).allTrue()
cmp-3errorMeasureScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies scoring.exists()
cmp-4errorMeasureImprovement notation must be specified for scoring types other than cohort
: scoring.exists() and scoring in ('proportion' | 'ratio' | 'continuous-variable') implies improvementNotation.exists()
cmp-5errorMeasureIf type is specified at the root, it may not be specified on any group
: type.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type').exists()).allFalse()
cmp-6errorMeasureIf riskAdjustment is specified at the root, it may not be specified on any group
: riskAdjustment.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment').exists()).allFalse()
cmp-7errorMeasureIf rateAggregation is specified at the root, it may not be specified on any group
: rateAggregation.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation').exists()).allFalse()
cmp-8errorMeasure.groupScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()
cmp-9errorMeasure.groupImprovement notation must be specified for scoring types other than cohort
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists() and extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').value in ('proportion' | 'ratio' | 'continuous-variable') implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation').exists()
cmp-32errorMeasure.group.populationComputable measures must use text/cql-expression or text/cql-identifier for all criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier')
cmp-33errorMeasure.group.stratifierComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-34errorMeasure.group.stratifier.componentComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-35errorMeasure.supplementalDataComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
NameFlagsCard.TypeDescription & Constraintsdoco
.. Measure SC 0..* Measure A quality measure definition
mea-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
mea-1: Stratifier SHALL be either a single criteria or a set of criteria components
cmp-1: Population basis must be specified at the root, or on each group
cmp-2: Scoring must be specified at the root, or on each group
cmp-3: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-4: Improvement notation must be specified for scoring types other than cohort
cmp-5: If type is specified at the root, it may not be specified on any group
cmp-6: If riskAdjustment is specified at the root, it may not be specified on any group
cmp-7: If rateAggregation is specified at the root, it may not be specified on any group
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population


... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
... scoringPrecision 0..1 positiveInt Number of decimal places
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringPrecision
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... subject[x] S 0..1 E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
Binding: SubjectType (extensible): The possible types of subjects for a measure (E.g. Patient, Practitioner, Organization, Location, etc.).

.... subjectCodeableConcept CodeableConcept
.... subjectReference Reference(Group)
... library S 0..* canonical(CRMI Computable Library) Logic used by the measure
... scoring SΣC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
Binding: MeasureScoring (extensible)
... type SΣC 0..* CodeableConcept process | outcome | structure | patient-reported-outcome | composite
Binding: MeasureType (extensible): The type of measure (includes codes from 2.16.840.1.113883.1.11.20368).


... riskAdjustment ΣC 0..1 string How risk adjustment is applied for this measure
... rateAggregation ΣC 0..1 string How is rate aggregation performed for this measure
... improvementNotation SΣC 0..1 CodeableConcept increase | decrease
Binding: MeasureImprovementNotation (required)
... group SC 0..* BackboneElement Population criteria group
cmp-8: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-9: Improvement notation must be specified for scoring types other than cohort
.... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population


.... scoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring
Binding: MeasureScoring (extensible): How the measure calculation is performed


.... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
.... scoringPrecision 0..1 positiveInt Number of decimal places
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringPrecision
.... compositeScoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-compositeScoring
Binding: CompositeMeasureScoring (extensible): How the composite measure calculation is performed


.... component SC 0..* RelatedArtifact What artifact
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-component
.... type C 0..* CodeableConcept process | outcome | structure | patient-reported-outcome
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type
Binding: MeasureType (extensible): Indicates whether the measure is used to examine a process, an outcome over time, a patient-reported outcome, or a structure measure such as utilization.


.... riskAdjustment C 0..1 string How risk adjustment is applied for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment
.... rateAggregation C 0..1 string How is rate aggregation performed for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation
.... improvementNotation SC 0..1 CodeableConcept increase | decrease
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation
Binding: MeasureImprovementNotation (required): Indicates how to interpret the calculated score of the measure


.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... population SC 0..* BackboneElement Population criteria
cmp-32: Computable measures must use text/cql-expression or text/cql-identifier for all criteria
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... criteria 1..1 Expression The criteria that defines this population
.... stratifier SC 0..* BackboneElement Stratifier criteria for the measure
cmp-33: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
..... appliesTo 0..* CodeableConcept Which population should this stratification apply to? If none is specified, the stratification applies to all populations in the group.
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-appliesTo
Binding: MeasurePopulationType (extensible): Indicates the population


..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... component SC 0..* BackboneElement Stratifier criteria component for the measure
cmp-34: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
...... criteria 1..1 Expression Component of how the measure should be stratified
... supplementalData SC 0..* BackboneElement What other data should be reported with the measure
cmp-35: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... criteria 1..1 Expression Expression describing additional data to be reported

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Measure.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
Measure.subject[x]extensibleSubjectType
http://hl7.org/fhir/ValueSet/subject-type
from the FHIR Standard
Measure.scoringextensibleMeasureScoring
http://terminology.hl7.org/ValueSet/measure-scoring
Measure.typeextensibleMeasureType
http://hl7.org/fhir/ValueSet/measure-type
from the FHIR Standard
Measure.improvementNotationrequiredMeasureImprovementNotation
http://terminology.hl7.org/ValueSet/measure-improvement-notation

Constraints

IdGradePath(s)DetailsRequirements
cmp-1errorMeasurePopulation basis must be specified at the root, or on each group
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists()).allTrue()
cmp-2errorMeasureScoring must be specified at the root, or on each group
: scoring.exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()).allTrue()
cmp-3errorMeasureScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies scoring.exists()
cmp-4errorMeasureImprovement notation must be specified for scoring types other than cohort
: scoring.exists() and scoring in ('proportion' | 'ratio' | 'continuous-variable') implies improvementNotation.exists()
cmp-5errorMeasureIf type is specified at the root, it may not be specified on any group
: type.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type').exists()).allFalse()
cmp-6errorMeasureIf riskAdjustment is specified at the root, it may not be specified on any group
: riskAdjustment.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment').exists()).allFalse()
cmp-7errorMeasureIf rateAggregation is specified at the root, it may not be specified on any group
: rateAggregation.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation').exists()).allFalse()
cmp-8errorMeasure.groupScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()
cmp-9errorMeasure.groupImprovement notation must be specified for scoring types other than cohort
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists() and extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').value in ('proportion' | 'ratio' | 'continuous-variable') implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation').exists()
cmp-32errorMeasure.group.populationComputable measures must use text/cql-expression or text/cql-identifier for all criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier')
cmp-33errorMeasure.group.stratifierComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-34errorMeasure.group.stratifier.componentComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-35errorMeasure.supplementalDataComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
dom-2errorMeasureIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMeasureIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorMeasureIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorMeasureIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMeasureA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
mea-0warningMeasureName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
mea-1errorMeasureStratifier SHALL be either a single criteria or a set of criteria components
: group.stratifier.all((code | description | criteria).exists() xor component.exists())
NameFlagsCard.TypeDescription & Constraintsdoco
.. Measure SC 0..* Measure A quality measure definition
mea-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
mea-1: Stratifier SHALL be either a single criteria or a set of criteria components
cmp-1: Population basis must be specified at the root, or on each group
cmp-2: Scoring must be specified at the root, or on each group
cmp-3: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-4: Improvement notation must be specified for scoring types other than cohort
cmp-5: If type is specified at the root, it may not be specified on any group
cmp-6: If riskAdjustment is specified at the root, it may not be specified on any group
cmp-7: If rateAggregation is specified at the root, it may not be specified on any group
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population


... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
... effectiveDataRequirements S 0..1 canonical(CRMI Module Definition Library) Effective required data for evaluation
URL: http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-effectiveDataRequirements
... scoringPrecision 0..1 positiveInt Number of decimal places
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringPrecision
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... url Σ 0..1 uri Canonical identifier for this measure, represented as a URI (globally unique)
... identifier Σ 0..* Identifier Additional identifier for the measure
... version Σ 0..1 string Business version of the measure
... name ΣC 0..1 string Name for this measure (computer friendly)
... title Σ 0..1 string Name for this measure (human friendly)
... subtitle 0..1 string Subordinate title of the measure
... status ?!Σ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... experimental Σ 0..1 boolean For testing purposes, not real usage
... subject[x] S 0..1 E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
Binding: SubjectType (extensible): The possible types of subjects for a measure (E.g. Patient, Practitioner, Organization, Location, etc.).

.... subjectCodeableConcept CodeableConcept
.... subjectReference Reference(Group)
... date Σ 0..1 dateTime Date last changed
... publisher Σ 0..1 string Name of the publisher (organization or individual)
... contact Σ 0..* ContactDetail Contact details for the publisher
... description Σ 0..1 markdown Natural language description of the measure
... useContext Σ 0..* UsageContext The context that the content is intended to support
... jurisdiction Σ 0..* CodeableConcept Intended jurisdiction for measure (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.


... purpose 0..1 markdown Why this measure is defined
... usage 0..1 string Describes the clinical usage of the measure
... copyright 0..1 markdown Use and/or publishing restrictions
... approvalDate 0..1 date When the measure was approved by publisher
... lastReviewDate 0..1 date When the measure was last reviewed
... effectivePeriod Σ 0..1 Period When the measure is expected to be used
... topic 0..* CodeableConcept The category of the measure, such as Education, Treatment, Assessment, etc.
Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering.


... author 0..* ContactDetail Who authored the content
... editor 0..* ContactDetail Who edited the content
... reviewer 0..* ContactDetail Who reviewed the content
... endorser 0..* ContactDetail Who endorsed the content
... relatedArtifact 0..* RelatedArtifact Additional documentation, citations, etc.
... library S 0..* canonical(CRMI Computable Library) Logic used by the measure
... disclaimer Σ 0..1 markdown Disclaimer for use of the measure or its referenced content
... scoring SΣC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
Binding: MeasureScoring (extensible)
... compositeScoring Σ 0..1 CodeableConcept opportunity | all-or-nothing | linear | weighted
Binding: CompositeMeasureScoring (extensible): The composite scoring method of the measure.

... type SΣC 0..* CodeableConcept process | outcome | structure | patient-reported-outcome | composite
Binding: MeasureType (extensible): The type of measure (includes codes from 2.16.840.1.113883.1.11.20368).


... riskAdjustment ΣC 0..1 string How risk adjustment is applied for this measure
... rateAggregation ΣC 0..1 string How is rate aggregation performed for this measure
... rationale Σ 0..1 markdown Detailed description of why the measure exists
... clinicalRecommendationStatement Σ 0..1 markdown Summary of clinical guidelines
... improvementNotation SΣC 0..1 CodeableConcept increase | decrease
Binding: MeasureImprovementNotation (required)
... definition Σ 0..* markdown Defined terms used in the measure documentation
... guidance Σ 0..1 markdown Additional guidance for implementers
... group SC 0..* BackboneElement Population criteria group
cmp-8: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-9: Improvement notation must be specified for scoring types other than cohort
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population


.... scoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring
Binding: MeasureScoring (extensible): How the measure calculation is performed


.... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
.... scoringPrecision 0..1 positiveInt Number of decimal places
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringPrecision
.... compositeScoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-compositeScoring
Binding: CompositeMeasureScoring (extensible): How the composite measure calculation is performed


.... component SC 0..* RelatedArtifact What artifact
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-component
.... type C 0..* CodeableConcept process | outcome | structure | patient-reported-outcome
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type
Binding: MeasureType (extensible): Indicates whether the measure is used to examine a process, an outcome over time, a patient-reported outcome, or a structure measure such as utilization.


.... riskAdjustment C 0..1 string How risk adjustment is applied for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment
.... rateAggregation C 0..1 string How is rate aggregation performed for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation
.... improvementNotation SC 0..1 CodeableConcept increase | decrease
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation
Binding: MeasureImprovementNotation (required): Indicates how to interpret the calculated score of the measure


.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code 0..1 CodeableConcept Meaning of the group
.... description 0..1 string Summary description
.... population SC 0..* BackboneElement Population criteria
cmp-32: Computable measures must use text/cql-expression or text/cql-identifier for all criteria
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 0..1 CodeableConcept initial-population | numerator | numerator-exclusion | denominator | denominator-exclusion | denominator-exception | measure-population | measure-population-exclusion | measure-observation
Binding: MeasurePopulationType (extensible): The type of population.

..... description 0..1 string The human readable description of this population criteria
..... criteria 1..1 Expression The criteria that defines this population
.... stratifier SC 0..* BackboneElement Stratifier criteria for the measure
cmp-33: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... appliesTo 0..* CodeableConcept Which population should this stratification apply to? If none is specified, the stratification applies to all populations in the group.
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-appliesTo
Binding: MeasurePopulationType (extensible): Indicates the population


..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 0..1 CodeableConcept Meaning of the stratifier
..... description 0..1 string The human readable description of this stratifier
..... criteria 0..1 Expression How the measure should be stratified
..... component SC 0..* BackboneElement Stratifier criteria component for the measure
cmp-34: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
...... code 0..1 CodeableConcept Meaning of the stratifier component
...... description 0..1 string The human readable description of this stratifier component
...... criteria 1..1 Expression Component of how the measure should be stratified
... supplementalData SC 0..* BackboneElement What other data should be reported with the measure
cmp-35: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code 0..1 CodeableConcept Meaning of the supplemental data
.... usage 0..* CodeableConcept supplemental-data | risk-adjustment-factor
Binding: MeasureDataUsage (extensible): The intended usage for supplemental data elements in the measure.


.... description 0..1 string The human readable description of this supplemental data
.... criteria 1..1 Expression Expression describing additional data to be reported

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Measure.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Measure.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
Measure.subject[x]extensibleSubjectType
http://hl7.org/fhir/ValueSet/subject-type
from the FHIR Standard
Measure.jurisdictionextensibleJurisdiction ValueSet
http://hl7.org/fhir/ValueSet/jurisdiction
from the FHIR Standard
Measure.topicexampleDefinitionTopic
http://hl7.org/fhir/ValueSet/definition-topic
from the FHIR Standard
Measure.scoringextensibleMeasureScoring
http://terminology.hl7.org/ValueSet/measure-scoring
Measure.compositeScoringextensibleCompositeMeasureScoring
http://hl7.org/fhir/ValueSet/composite-measure-scoring
from the FHIR Standard
Measure.typeextensibleMeasureType
http://hl7.org/fhir/ValueSet/measure-type
from the FHIR Standard
Measure.improvementNotationrequiredMeasureImprovementNotation
http://terminology.hl7.org/ValueSet/measure-improvement-notation
Measure.group.population.codeextensibleMeasurePopulationType
http://hl7.org/fhir/ValueSet/measure-population
from the FHIR Standard
Measure.supplementalData.usageextensibleMeasureDataUsage
http://hl7.org/fhir/ValueSet/measure-data-usage
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
cmp-1errorMeasurePopulation basis must be specified at the root, or on each group
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists()).allTrue()
cmp-2errorMeasureScoring must be specified at the root, or on each group
: scoring.exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()).allTrue()
cmp-3errorMeasureScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies scoring.exists()
cmp-4errorMeasureImprovement notation must be specified for scoring types other than cohort
: scoring.exists() and scoring in ('proportion' | 'ratio' | 'continuous-variable') implies improvementNotation.exists()
cmp-5errorMeasureIf type is specified at the root, it may not be specified on any group
: type.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type').exists()).allFalse()
cmp-6errorMeasureIf riskAdjustment is specified at the root, it may not be specified on any group
: riskAdjustment.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment').exists()).allFalse()
cmp-7errorMeasureIf rateAggregation is specified at the root, it may not be specified on any group
: rateAggregation.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation').exists()).allFalse()
cmp-8errorMeasure.groupScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()
cmp-9errorMeasure.groupImprovement notation must be specified for scoring types other than cohort
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists() and extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').value in ('proportion' | 'ratio' | 'continuous-variable') implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation').exists()
cmp-32errorMeasure.group.populationComputable measures must use text/cql-expression or text/cql-identifier for all criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier')
cmp-33errorMeasure.group.stratifierComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-34errorMeasure.group.stratifier.componentComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-35errorMeasure.supplementalDataComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
dom-2errorMeasureIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMeasureIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorMeasureIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorMeasureIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMeasureA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
mea-0warningMeasureName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
mea-1errorMeasureStratifier SHALL be either a single criteria or a set of criteria components
: group.stratifier.all((code | description | criteria).exists() xor component.exists())

Differential View

This structure is derived from Measure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Measure SC 0..* Measure A quality measure definition
cmp-1: Population basis must be specified at the root, or on each group
cmp-2: Scoring must be specified at the root, or on each group
cmp-3: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-4: Improvement notation must be specified for scoring types other than cohort
cmp-5: If type is specified at the root, it may not be specified on any group
cmp-6: If riskAdjustment is specified at the root, it may not be specified on any group
cmp-7: If rateAggregation is specified at the root, it may not be specified on any group
... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population

... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
... effectiveDataRequirements S 0..1 canonical(CRMI Module Definition Library) Effective required data for evaluation
URL: http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-effectiveDataRequirements
... subject[x] S 0..1 CodeableConcept, Reference(Group) E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
... library S 0..* canonical(CRMI Computable Library) Logic used by the measure
... scoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
Binding: MeasureScoring (extensible)
... type SC 0..* CodeableConcept process | outcome | structure | patient-reported-outcome | composite
... riskAdjustment C 0..1 string How risk adjustment is applied for this measure
... rateAggregation C 0..1 string How is rate aggregation performed for this measure
... improvementNotation SC 0..1 CodeableConcept increase | decrease
Binding: MeasureImprovementNotation (required)
... group SC 0..* BackboneElement Population criteria group
cmp-8: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-9: Improvement notation must be specified for scoring types other than cohort
.... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population

.... scoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring
Binding: MeasureScoring (extensible): How the measure calculation is performed

.... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
.... scoringPrecision 0..1 positiveInt Number of decimal places
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringPrecision
.... compositeScoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-compositeScoring
Binding: CompositeMeasureScoring (extensible): How the composite measure calculation is performed

.... component SC 0..* RelatedArtifact What artifact
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-component
.... type C 0..* CodeableConcept process | outcome | structure | patient-reported-outcome
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type
Binding: MeasureType (extensible): Indicates whether the measure is used to examine a process, an outcome over time, a patient-reported outcome, or a structure measure such as utilization.


.... riskAdjustment C 0..1 string How risk adjustment is applied for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment
.... rateAggregation C 0..1 string How is rate aggregation performed for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation
.... improvementNotation SC 0..1 CodeableConcept increase | decrease
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation
Binding: MeasureImprovementNotation (required): Indicates how to interpret the calculated score of the measure

.... population SC 0..* BackboneElement Population criteria
cmp-32: Computable measures must use text/cql-expression or text/cql-identifier for all criteria
.... stratifier SC 0..* BackboneElement Stratifier criteria for the measure
cmp-33: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
..... appliesTo 0..* CodeableConcept Which population should this stratification apply to? If none is specified, the stratification applies to all populations in the group.
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-appliesTo
Binding: MeasurePopulationType (extensible): Indicates the population


..... component SC 0..* BackboneElement Stratifier criteria component for the measure
cmp-34: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
... supplementalData SC 0..* BackboneElement What other data should be reported with the measure
cmp-35: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Measure.scoringextensibleMeasureScoring
http://terminology.hl7.org/ValueSet/measure-scoring
Measure.improvementNotationrequiredMeasureImprovementNotation
http://terminology.hl7.org/ValueSet/measure-improvement-notation

Constraints

IdGradePath(s)DetailsRequirements
cmp-1errorMeasurePopulation basis must be specified at the root, or on each group
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists()).allTrue()
cmp-2errorMeasureScoring must be specified at the root, or on each group
: scoring.exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()).allTrue()
cmp-3errorMeasureScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies scoring.exists()
cmp-4errorMeasureImprovement notation must be specified for scoring types other than cohort
: scoring.exists() and scoring in ('proportion' | 'ratio' | 'continuous-variable') implies improvementNotation.exists()
cmp-5errorMeasureIf type is specified at the root, it may not be specified on any group
: type.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type').exists()).allFalse()
cmp-6errorMeasureIf riskAdjustment is specified at the root, it may not be specified on any group
: riskAdjustment.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment').exists()).allFalse()
cmp-7errorMeasureIf rateAggregation is specified at the root, it may not be specified on any group
: rateAggregation.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation').exists()).allFalse()
cmp-8errorMeasure.groupScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()
cmp-9errorMeasure.groupImprovement notation must be specified for scoring types other than cohort
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists() and extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').value in ('proportion' | 'ratio' | 'continuous-variable') implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation').exists()
cmp-32errorMeasure.group.populationComputable measures must use text/cql-expression or text/cql-identifier for all criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier')
cmp-33errorMeasure.group.stratifierComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-34errorMeasure.group.stratifier.componentComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-35errorMeasure.supplementalDataComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Measure SC 0..* Measure A quality measure definition
mea-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
mea-1: Stratifier SHALL be either a single criteria or a set of criteria components
cmp-1: Population basis must be specified at the root, or on each group
cmp-2: Scoring must be specified at the root, or on each group
cmp-3: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-4: Improvement notation must be specified for scoring types other than cohort
cmp-5: If type is specified at the root, it may not be specified on any group
cmp-6: If riskAdjustment is specified at the root, it may not be specified on any group
cmp-7: If rateAggregation is specified at the root, it may not be specified on any group
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population


... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
... scoringPrecision 0..1 positiveInt Number of decimal places
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringPrecision
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... subject[x] S 0..1 E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
Binding: SubjectType (extensible): The possible types of subjects for a measure (E.g. Patient, Practitioner, Organization, Location, etc.).

.... subjectCodeableConcept CodeableConcept
.... subjectReference Reference(Group)
... library S 0..* canonical(CRMI Computable Library) Logic used by the measure
... scoring SΣC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
Binding: MeasureScoring (extensible)
... type SΣC 0..* CodeableConcept process | outcome | structure | patient-reported-outcome | composite
Binding: MeasureType (extensible): The type of measure (includes codes from 2.16.840.1.113883.1.11.20368).


... riskAdjustment ΣC 0..1 string How risk adjustment is applied for this measure
... rateAggregation ΣC 0..1 string How is rate aggregation performed for this measure
... improvementNotation SΣC 0..1 CodeableConcept increase | decrease
Binding: MeasureImprovementNotation (required)
... group SC 0..* BackboneElement Population criteria group
cmp-8: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-9: Improvement notation must be specified for scoring types other than cohort
.... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population


.... scoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring
Binding: MeasureScoring (extensible): How the measure calculation is performed


.... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
.... scoringPrecision 0..1 positiveInt Number of decimal places
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringPrecision
.... compositeScoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-compositeScoring
Binding: CompositeMeasureScoring (extensible): How the composite measure calculation is performed


.... component SC 0..* RelatedArtifact What artifact
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-component
.... type C 0..* CodeableConcept process | outcome | structure | patient-reported-outcome
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type
Binding: MeasureType (extensible): Indicates whether the measure is used to examine a process, an outcome over time, a patient-reported outcome, or a structure measure such as utilization.


.... riskAdjustment C 0..1 string How risk adjustment is applied for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment
.... rateAggregation C 0..1 string How is rate aggregation performed for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation
.... improvementNotation SC 0..1 CodeableConcept increase | decrease
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation
Binding: MeasureImprovementNotation (required): Indicates how to interpret the calculated score of the measure


.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... population SC 0..* BackboneElement Population criteria
cmp-32: Computable measures must use text/cql-expression or text/cql-identifier for all criteria
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... criteria 1..1 Expression The criteria that defines this population
.... stratifier SC 0..* BackboneElement Stratifier criteria for the measure
cmp-33: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
..... appliesTo 0..* CodeableConcept Which population should this stratification apply to? If none is specified, the stratification applies to all populations in the group.
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-appliesTo
Binding: MeasurePopulationType (extensible): Indicates the population


..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... component SC 0..* BackboneElement Stratifier criteria component for the measure
cmp-34: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
...... criteria 1..1 Expression Component of how the measure should be stratified
... supplementalData SC 0..* BackboneElement What other data should be reported with the measure
cmp-35: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... criteria 1..1 Expression Expression describing additional data to be reported

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Measure.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
Measure.subject[x]extensibleSubjectType
http://hl7.org/fhir/ValueSet/subject-type
from the FHIR Standard
Measure.scoringextensibleMeasureScoring
http://terminology.hl7.org/ValueSet/measure-scoring
Measure.typeextensibleMeasureType
http://hl7.org/fhir/ValueSet/measure-type
from the FHIR Standard
Measure.improvementNotationrequiredMeasureImprovementNotation
http://terminology.hl7.org/ValueSet/measure-improvement-notation

Constraints

IdGradePath(s)DetailsRequirements
cmp-1errorMeasurePopulation basis must be specified at the root, or on each group
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists()).allTrue()
cmp-2errorMeasureScoring must be specified at the root, or on each group
: scoring.exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()).allTrue()
cmp-3errorMeasureScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies scoring.exists()
cmp-4errorMeasureImprovement notation must be specified for scoring types other than cohort
: scoring.exists() and scoring in ('proportion' | 'ratio' | 'continuous-variable') implies improvementNotation.exists()
cmp-5errorMeasureIf type is specified at the root, it may not be specified on any group
: type.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type').exists()).allFalse()
cmp-6errorMeasureIf riskAdjustment is specified at the root, it may not be specified on any group
: riskAdjustment.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment').exists()).allFalse()
cmp-7errorMeasureIf rateAggregation is specified at the root, it may not be specified on any group
: rateAggregation.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation').exists()).allFalse()
cmp-8errorMeasure.groupScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()
cmp-9errorMeasure.groupImprovement notation must be specified for scoring types other than cohort
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists() and extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').value in ('proportion' | 'ratio' | 'continuous-variable') implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation').exists()
cmp-32errorMeasure.group.populationComputable measures must use text/cql-expression or text/cql-identifier for all criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier')
cmp-33errorMeasure.group.stratifierComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-34errorMeasure.group.stratifier.componentComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-35errorMeasure.supplementalDataComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
dom-2errorMeasureIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMeasureIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorMeasureIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorMeasureIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMeasureA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
mea-0warningMeasureName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
mea-1errorMeasureStratifier SHALL be either a single criteria or a set of criteria components
: group.stratifier.all((code | description | criteria).exists() xor component.exists())

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Measure SC 0..* Measure A quality measure definition
mea-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
mea-1: Stratifier SHALL be either a single criteria or a set of criteria components
cmp-1: Population basis must be specified at the root, or on each group
cmp-2: Scoring must be specified at the root, or on each group
cmp-3: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-4: Improvement notation must be specified for scoring types other than cohort
cmp-5: If type is specified at the root, it may not be specified on any group
cmp-6: If riskAdjustment is specified at the root, it may not be specified on any group
cmp-7: If rateAggregation is specified at the root, it may not be specified on any group
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population


... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
... effectiveDataRequirements S 0..1 canonical(CRMI Module Definition Library) Effective required data for evaluation
URL: http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-effectiveDataRequirements
... scoringPrecision 0..1 positiveInt Number of decimal places
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringPrecision
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... url Σ 0..1 uri Canonical identifier for this measure, represented as a URI (globally unique)
... identifier Σ 0..* Identifier Additional identifier for the measure
... version Σ 0..1 string Business version of the measure
... name ΣC 0..1 string Name for this measure (computer friendly)
... title Σ 0..1 string Name for this measure (human friendly)
... subtitle 0..1 string Subordinate title of the measure
... status ?!Σ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... experimental Σ 0..1 boolean For testing purposes, not real usage
... subject[x] S 0..1 E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
Binding: SubjectType (extensible): The possible types of subjects for a measure (E.g. Patient, Practitioner, Organization, Location, etc.).

.... subjectCodeableConcept CodeableConcept
.... subjectReference Reference(Group)
... date Σ 0..1 dateTime Date last changed
... publisher Σ 0..1 string Name of the publisher (organization or individual)
... contact Σ 0..* ContactDetail Contact details for the publisher
... description Σ 0..1 markdown Natural language description of the measure
... useContext Σ 0..* UsageContext The context that the content is intended to support
... jurisdiction Σ 0..* CodeableConcept Intended jurisdiction for measure (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.


... purpose 0..1 markdown Why this measure is defined
... usage 0..1 string Describes the clinical usage of the measure
... copyright 0..1 markdown Use and/or publishing restrictions
... approvalDate 0..1 date When the measure was approved by publisher
... lastReviewDate 0..1 date When the measure was last reviewed
... effectivePeriod Σ 0..1 Period When the measure is expected to be used
... topic 0..* CodeableConcept The category of the measure, such as Education, Treatment, Assessment, etc.
Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering.


... author 0..* ContactDetail Who authored the content
... editor 0..* ContactDetail Who edited the content
... reviewer 0..* ContactDetail Who reviewed the content
... endorser 0..* ContactDetail Who endorsed the content
... relatedArtifact 0..* RelatedArtifact Additional documentation, citations, etc.
... library S 0..* canonical(CRMI Computable Library) Logic used by the measure
... disclaimer Σ 0..1 markdown Disclaimer for use of the measure or its referenced content
... scoring SΣC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
Binding: MeasureScoring (extensible)
... compositeScoring Σ 0..1 CodeableConcept opportunity | all-or-nothing | linear | weighted
Binding: CompositeMeasureScoring (extensible): The composite scoring method of the measure.

... type SΣC 0..* CodeableConcept process | outcome | structure | patient-reported-outcome | composite
Binding: MeasureType (extensible): The type of measure (includes codes from 2.16.840.1.113883.1.11.20368).


... riskAdjustment ΣC 0..1 string How risk adjustment is applied for this measure
... rateAggregation ΣC 0..1 string How is rate aggregation performed for this measure
... rationale Σ 0..1 markdown Detailed description of why the measure exists
... clinicalRecommendationStatement Σ 0..1 markdown Summary of clinical guidelines
... improvementNotation SΣC 0..1 CodeableConcept increase | decrease
Binding: MeasureImprovementNotation (required)
... definition Σ 0..* markdown Defined terms used in the measure documentation
... guidance Σ 0..1 markdown Additional guidance for implementers
... group SC 0..* BackboneElement Population criteria group
cmp-8: Scoring unit may only be specified at the root if the scoring is also specified at the root
cmp-9: Improvement notation must be specified for scoring types other than cohort
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... populationBasis SC 0..1 code What type of population
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis
Binding: FHIRAllTypes (required): The type of elements in the population


.... scoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring
Binding: MeasureScoring (extensible): How the measure calculation is performed


.... scoringUnit SC 0..1 CodeableConcept What units?
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit
.... scoringPrecision 0..1 positiveInt Number of decimal places
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringPrecision
.... compositeScoring SC 0..1 CodeableConcept proportion | ratio | continuous-variable | cohort
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-compositeScoring
Binding: CompositeMeasureScoring (extensible): How the composite measure calculation is performed


.... component SC 0..* RelatedArtifact What artifact
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-component
.... type C 0..* CodeableConcept process | outcome | structure | patient-reported-outcome
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type
Binding: MeasureType (extensible): Indicates whether the measure is used to examine a process, an outcome over time, a patient-reported outcome, or a structure measure such as utilization.


.... riskAdjustment C 0..1 string How risk adjustment is applied for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment
.... rateAggregation C 0..1 string How is rate aggregation performed for this measure
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation
.... improvementNotation SC 0..1 CodeableConcept increase | decrease
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation
Binding: MeasureImprovementNotation (required): Indicates how to interpret the calculated score of the measure


.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code 0..1 CodeableConcept Meaning of the group
.... description 0..1 string Summary description
.... population SC 0..* BackboneElement Population criteria
cmp-32: Computable measures must use text/cql-expression or text/cql-identifier for all criteria
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 0..1 CodeableConcept initial-population | numerator | numerator-exclusion | denominator | denominator-exclusion | denominator-exception | measure-population | measure-population-exclusion | measure-observation
Binding: MeasurePopulationType (extensible): The type of population.

..... description 0..1 string The human readable description of this population criteria
..... criteria 1..1 Expression The criteria that defines this population
.... stratifier SC 0..* BackboneElement Stratifier criteria for the measure
cmp-33: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... appliesTo 0..* CodeableConcept Which population should this stratification apply to? If none is specified, the stratification applies to all populations in the group.
URL: http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-appliesTo
Binding: MeasurePopulationType (extensible): Indicates the population


..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 0..1 CodeableConcept Meaning of the stratifier
..... description 0..1 string The human readable description of this stratifier
..... criteria 0..1 Expression How the measure should be stratified
..... component SC 0..* BackboneElement Stratifier criteria component for the measure
cmp-34: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
...... code 0..1 CodeableConcept Meaning of the stratifier component
...... description 0..1 string The human readable description of this stratifier component
...... criteria 1..1 Expression Component of how the measure should be stratified
... supplementalData SC 0..* BackboneElement What other data should be reported with the measure
cmp-35: Computable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code 0..1 CodeableConcept Meaning of the supplemental data
.... usage 0..* CodeableConcept supplemental-data | risk-adjustment-factor
Binding: MeasureDataUsage (extensible): The intended usage for supplemental data elements in the measure.


.... description 0..1 string The human readable description of this supplemental data
.... criteria 1..1 Expression Expression describing additional data to be reported

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Measure.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Measure.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
Measure.subject[x]extensibleSubjectType
http://hl7.org/fhir/ValueSet/subject-type
from the FHIR Standard
Measure.jurisdictionextensibleJurisdiction ValueSet
http://hl7.org/fhir/ValueSet/jurisdiction
from the FHIR Standard
Measure.topicexampleDefinitionTopic
http://hl7.org/fhir/ValueSet/definition-topic
from the FHIR Standard
Measure.scoringextensibleMeasureScoring
http://terminology.hl7.org/ValueSet/measure-scoring
Measure.compositeScoringextensibleCompositeMeasureScoring
http://hl7.org/fhir/ValueSet/composite-measure-scoring
from the FHIR Standard
Measure.typeextensibleMeasureType
http://hl7.org/fhir/ValueSet/measure-type
from the FHIR Standard
Measure.improvementNotationrequiredMeasureImprovementNotation
http://terminology.hl7.org/ValueSet/measure-improvement-notation
Measure.group.population.codeextensibleMeasurePopulationType
http://hl7.org/fhir/ValueSet/measure-population
from the FHIR Standard
Measure.supplementalData.usageextensibleMeasureDataUsage
http://hl7.org/fhir/ValueSet/measure-data-usage
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
cmp-1errorMeasurePopulation basis must be specified at the root, or on each group
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis').exists()).allTrue()
cmp-2errorMeasureScoring must be specified at the root, or on each group
: scoring.exists() or group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()).allTrue()
cmp-3errorMeasureScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies scoring.exists()
cmp-4errorMeasureImprovement notation must be specified for scoring types other than cohort
: scoring.exists() and scoring in ('proportion' | 'ratio' | 'continuous-variable') implies improvementNotation.exists()
cmp-5errorMeasureIf type is specified at the root, it may not be specified on any group
: type.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type').exists()).allFalse()
cmp-6errorMeasureIf riskAdjustment is specified at the root, it may not be specified on any group
: riskAdjustment.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-riskAdjustment').exists()).allFalse()
cmp-7errorMeasureIf rateAggregation is specified at the root, it may not be specified on any group
: rateAggregation.exists() implies group.select(extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation').exists()).allFalse()
cmp-8errorMeasure.groupScoring unit may only be specified at the root if the scoring is also specified at the root
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoringUnit').exists() implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists()
cmp-9errorMeasure.groupImprovement notation must be specified for scoring types other than cohort
: extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').exists() and extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring').value in ('proportion' | 'ratio' | 'continuous-variable') implies extension('http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation').exists()
cmp-32errorMeasure.group.populationComputable measures must use text/cql-expression or text/cql-identifier for all criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier')
cmp-33errorMeasure.group.stratifierComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-34errorMeasure.group.stratifier.componentComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all stratifier component criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
cmp-35errorMeasure.supplementalDataComputable measures must use text/cql-expression, text/cql-identifier, or text/fhirpath for all supplemental data criteria
: criteria.language in ('text/cql-expression' | 'text/cql-identifier' | 'text/fhirpath')
dom-2errorMeasureIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMeasureIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorMeasureIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorMeasureIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMeasureA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
mea-0warningMeasureName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
mea-1errorMeasureStratifier SHALL be either a single criteria or a set of criteria components
: group.stratifier.all((code | description | criteria).exists() xor component.exists())

 

Other representations of profile: CSV, Excel, Schematron