Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Clinical Quality Framework is an effort to “identify, develop, and harmonize standards that promote integration and reuse between Clinical Decision Support (CDS) and Clinical Quality Measurement (CQM)” (see http://wiki.hl7.org/index.php?title=Clinical_Quality_Framework). The framework defines a large breadth of use cases, requirements, and tools. CQF-Ruler, a project by the Database Consulting Group, is an open source project that has several CQF tools in the form of API endpoints. The HSPC Logica Sandbox Manager has implemented the CQF-Ruler project into our STU3 FHIR server for all users to try out.

Endpoints

In these examples, I’ll be using a sandbox I called cqfruler.

...

Code Block
POST https://api-v5-stu3.hspconsortiumlogicahealth.org/cqfruler/data

$submit-data

This endpoint allows users to submit FHIR data to a “payer”. The operation requires a Parameter resource that contains a list of resources you’d like to submit (see http://build.fhir.org/ig/Healthedata1/DaVinci/OperationDefinition-submit-data.html).

Code Block
POST https://api-v5-stu3.hspconsortiumlogicahealth.org/cqfruler/open/Measure/measure-mrp/$submit-data
--- REQUEST BODY ---
[use content in submit-data-parameter-resource.json]

The server will return a "transaction-response" bundle showing whether the resources were successfully created in the server.

$evaluate-measure

This endpoint “calculate[s] the measure for the given patient, or all patients if no patient is supplied” (see https://www.hl7.org/fhir/measure-operations.html). In this example we provide a patient, as well as a period which the api uses to limit its evaluation.

Code Block
https://api-v5-stu3.hspconsortiumlogicahealth.org/cqfruler/open/Measure/measure-asf/$evaluate-measure?periodStart=2003-01-01&periodEnd=2003-12-31&patient=Patient/Patient-6529

The server will return a MeasureReport resource summarizing the evaluation.

$care-gaps

This endpoint is used to “determine gaps-in-care based on the results of quality measures” (see http://build.fhir.org/operation-measure-care-gaps.html). This example uses the same parameters as above but includes a “topic” parameter which is used to determine which measures are included in the report.

Code Block
GET https://api-v5-stu3.hspconsortiumlogicahealth.org/cqfruler/open/Measure/$care-gaps?periodStart=1997-01-01&periodEnd=1997-12-31&patient=Patient/Patient-6523&topic=Preventive%20Care%20and%20Screening

The server will return a bundle summarizing the results of each measure found.

$apply

This endpoint “applies” either an ActivityDefinition or PlanDefinition resource to a given context. The context is given in the parameters of the url call. In these examples, only patient is used although others are available (see https://www.hl7.org/fhir/activitydefinition-operations.html and https://www.hl7.org/fhir/plandefinition-operations.html).

Code Block
GET https://api-v5-stu3.hspconsortiumlogicahealth.org/cqfruler/open/ActivityDefinition/ad-apply-example/$apply?patient=Patient-12214

...

Code Block
GET https://api-v5-stu3.hspconsortiumlogicahealth.org/cqfruler/open/PlanDefinition/apply-example/$apply?patient=Patient-12214

The server will return a CarePlan resource.

$data-requirements

This endpoint “aggregates and returns the parameters and data requirements for a resource and all its dependencies as a single module definition” (see https://www.hl7.org/fhir/library-operations.html).

Code Block
GET https://api-v5-stu3.hspconsortiumlogicahealth.org/cqfruler/open/Measure/measure-asf/$data-requirements?periodStart=2018-07-06&periodEnd=2018-09-06

...