Data Exchange For Quality Measures Implementation Guide
4.0.0 - STU4 United States of America flag

Data Exchange For Quality Measures Implementation Guide, published by HL7 International / Clinical Quality Information. This guide is not an authorized publication; it is the continuous build for version 4.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/davinci-deqm/ and changes regularly. See the Directory of published versions

OperationDefinition: Care Gaps Operation

Official URL: http://hl7.org/fhir/us/davinci-deqm/OperationDefinition/care-gaps Version: 4.0.0
Draft as of 2021-04-23 Computable Name: CareGaps

The care-gaps operation is used to determine gaps in care for a specified gaps through period based on the results of quality measures.

Conformance Requirement 1:
In addition to the required parameters, a caller of the $care-gaps operation SHALL provide subject|practitioner|organization, which could be one of the following:

  • A $care-gaps operation SHALL provide a subject; OR
  • A $care-gaps operation SHALL provide an organization; OR
  • A $care-gaps operation SHALL provide a practitioner and an organization

URL: [base]/Measure/$care-gaps

Parameters

UseNameScopeCardinalityTypeBindingDocumentation
INperiodStart1..1date

The start of a gaps through period. This may be the start of the measurement period defined by a measure, or a customized desired performance period start date determined by a payer, a provider, a measure program, and etc.

INperiodEnd1..1date

The end of a gaps through period (the gaps through date). The gaps through date could be a past date or a future date. For example, today's date is 2020-06-18, 1) if periodEnd date is 2020-09-30, it returns gaps through 2020-09-30, and 2) if the periodEnd date is 2020-05-31, it returns gaps through 2020-05-31.

INtopic0..*string
(token)

The category of the measures that is of interest for the care gaps report. This references the topic element in the Measure resource. Examples of topic may be screening measures, HEDIS measure domains, chronic disease measures. For example, setting topic to be a screening caregory will run care gaps on all screening measures. Topic may also be a "value set" that is defined with a list of domains/categories, etc. Topic examples: "screening", "pediatric". When multiple topics are provided, it is expected to be union of measures in those topics. Note that the type of this parameter is a string with a search type of token, so the $care-gaps operation has only simple input parameters and may be invoked using GET.

INsubject0..1string
(reference)

Subject will be a reference to either Patient QI Core Patient or Group DEQM Gaps In Care Group Profile. Must provide either Patient/123 or Group/123, cannot simply provide 123. If only 123 is provided, then the operation would not know if it is a Patient reference or a Group reference.

INpractitioner0..1string
(reference)

Reference to a practitioner QI Core Practitioner for which the gaps in care report will be created. For a practitioner focused gaps in care report, this is a required In Parameter. The Server needs to make sure that practitioner is authorized to get the gaps in care report for and know what measures the practitioner are eligible or qualified.

INorganization0..1string
(reference)

Reference to an organization QI Core Organization for which the gaps in care report will be created. For a provider organization focused gaps in care report, this is a required In Parameter.

INstatus1..*codeDEQM Gaps In Care Gap Status Value Set (Extensible)

Indicates status of a care gap. For both open and closed gaps, two seperate status parameters must be provided. For a positive proportion measure, gap means the patient is not in the numerator. For an inverse (negative) proportion measure (e.g., Diabetes: Hemoglobin A1c (HbA1c) Poor Control (> 9%)), gap means the patient is in the numerator.

INmeasureId0..*id

The id of a Measure resource that is on the server for which the gaps in care will be reported. E.g., the id of the Measure resource for Breast Cancer Screening measure.

INmeasureIdentifier0..*string
(token)

The business identifier of a measure for which the gaps in care will be reported. E.g., CMS125 is a CMS assigned identifier for the Breast Cancer Screening eCQM in their system. Note that the type of this parameter is a string with a search type of token, so the $care-gaps operation has only simple input parameters and may be invoked using GET.

INmeasureUrl0..*canonical

This the the URL of a measure for which the gaps in care will be reported. A measure URL is specified in the url element of the Measure resource. The measure URL remains the same when the measure is stored on different servers.

INprogram0..*string
(token)

The programs that a provider (either practitioner or provider organization) participates in, e.g., risk based, value based, or other performance program such as CMS Merit-based Incentive Payment Program (MIPS), Hospital Quality Reporting (HQR) programs. Program is represented in the Measure using element useContext. When the code attribute of useContext is program, then the value attribute of useContext represents a specific program. Note that the type of this parameter is a string with a search type of token, so the $care-gaps operation has only simple input parameters and may be invoked using GET.

OUTreturn0..*Bundle

The $care-gaps operation returns Parameters resource, containing zero or more document bundles that conform to the DEQM Gaps In Care Bundle Profile. Note that the result of the $care-gaps operation must be returned using the Parameters resource, even when the result contains only one bundle, because the cardinality of the return parameter is specified as 0..*.

The effect of invoking this operation is to calculate a measure or a set of measures based on the In Parameters provided and to return Parameters resource containing one or more document bundles describing the gaps in care results of each measure, for the specified gaps through period and for the given subject (a patient or a group of patients). Because more than one bundle may be returned, the operation parameter must always be returned. Note that it is up to the Server to determine whether or not the generated gaps in care report is persisted. If the Server does not persist the results, the operation does not affect state and can be invoked with a GET. Note that this operation is intended to replace the existing base Measure $care-gaps operation in FHIR R5.

Notes:

Examples:

Request:

  • Request evaluation of the CMS130 measure (with measureId EXM130-7.3.000) over a gaps through period of the first 3 months of 2014, with open gaps, for patient 124.
GET [base]/Measure/$care-gaps?measureId=EXM130-7.3.000&periodStart=2014-01&periodEnd=2014-03&status=open-gap&subject=Patient/124

Request:

  • Request the first example with a topic of 57024-2.

  • Request the first example with a topic of the code “treatment” in the valueset “definition-topic”.

GET [base]/Measure/$care-gaps?measureId=EXM130-7.3.000&periodStart=2014-01&periodEnd=2014-03&status=open-gap&subject=Patient/124&topic=57024-2

GET [base]/Measure/$care-gaps?measureId=EXM130-7.3.000&periodStart=2014-01&periodEnd=2014-03&status=open-gap&subject=Patient/124&topic=http://hl7.org/fhir/ValueSet/definition-topic|treatment

Request:

  • Request the first example with a subject of group 124.
GET [base]/Measure/$care-gaps?measureId=EXM130-7.3.000&periodStart=2014-01&periodEnd=2014-03&status=open-gap&subject=Group/124

Request:

  • Request evaluation with a status of open gap.

  • Request evaluation with a status of closed gap.

  • Request evaluation with a status of open or closed gap.

GET [base]/Measure/$care-gaps?measureId=EXM130-7.3.000&periodStart=2014-01&periodEnd=2014-03&subject=Patient/124&status=open-gap
GET [base]/Measure/$care-gaps?measureId=EXM130-7.3.000&periodStart=2014-01&periodEnd=2014-03&subject=Patient/124&status=closed-gap
GET [base]/Measure/$care-gaps?measureId=EXM130-7.3.000&periodStart=2014-01&periodEnd=2014-03&subject=Patient/124&status=open-gap&status=closed-gap

Request:

  • Request the first example with a measureIdentifier.

  • Request the first example with a measureUrl.

GET [base]/Measure/$care-gaps?measureIdentifier=http://hl7.org/fhir/cqi/ecqm/Measure/Identifier/cms|130&periodStart=2014-01&periodEnd=2014-03&status=open-gap&subject=Patient/124
GET [base]/Measure/$care-gaps?measureUrl=http://hl7.org/fhir/us/cqfmeasures/Measure/EXM130|7.3.000&periodStart=2014-01&periodEnd=2014-03&status=open-gap&subject=Patient/124

Request:

  • Request the first example with an organization instead of a subject.

  • Request the first example with a practitioner and an organization instead of a subject.

GET [base]/Measure/$care-gaps?measureIdentifier=http://hl7.org/fhir/cqi/ecqm/Measure/Identifier/cms|130&periodStart=2014-01&periodEnd=2014-03&status=open-gap&organization=Organization/124
GET [base]/Measure/$care-gaps?measureUrl=http://hl7.org/fhir/us/cqfmeasures/Measure/EXM130|7.3.000&periodStart=2014-01&periodEnd=2014-03&status=open-gap&&organization=Organization/124&practitioner=Practitioner/124

Request:

  • Request the first example with a program of eligible-provider.

  • Request the first example with a program of the code “mips” in the valueset “quality-programs”.

GET [base]/Measure/$care-gaps?measureId=EXM130-7.3.000&periodStart=2014-01&periodEnd=2014-03&status=open-gap&subject=Patient/124&program=eligible-provider
GET [base]/Measure/$care-gaps?measureId=EXM130-7.3.000&periodStart=2014-01&periodEnd=2014-03&status=open-gap&subject=Patient/124&program=http://hl7.org/fhir/us/cqfmeasures/CodeSystem/quality-programs|mips