Short Description

Continue the testing and use of FHIR-based Quality Measures for use in Quality Measurement programs, including CMS, Gaps in Care (GIC) and Clinical Decision Support (CDS) Use Cases. The focus of this connectathon will be to:

  • Continue testing of Measure evaluation using US-Core 3.1.1 compliant FHIR servers
  • Test Measure Terminology Service capabilities, including version-specific expansion.
  • Test PlanDefinition $apply semantics
  • Test QI-Core Authoring Capabilities
  • Test of potential drug-drug interaction clinical decision support (PDDI CDS) at three points in the CPOE workflow: patient-view, order-select, and order-sign

Long Description

The Clinical Reasoning Track will continue focused testing of quality measures using data available from USCore 3.1.1 compliant FHIR servers:

There will also be tests of potential drug-drug interaction clinical decision support (PDDI CDS) at three points in the CPOE workflow:

  • PDDI CDS service subscription
  • PDDI CDS request at patient-view
  • The "basic" order-sign scenario in the PDDI CDS Implementation guilde
  • The "advanced" scenario that coordinates PDDI CDS at order-select and order-sign

Type

Test an Implementation Guide


Related Tracks?

Care Planning, Public Health, CDS Hooks, Da Vinci DEQM Gaps in Care and Vulcan Schedule of Activities

Call for participants

Providers, Payers, and other related HIT vendors


Track Prerequisites

By role for testing of quality measures:


By role for PDDI CDS:

  • Clinical data repository: R4
  • Clinical Reasoning Engine: CDS Hooks services for one potential drug-drug interaction use case
  • EHR client: able to call patient-view, order-select, and/or order-sign CDS Hooks referring to a patient whose data is accessible via an R4 FHIR server 

Track Lead(s)

Bryn Rhodes (testing of quality measures)

Richard Boyce (testing of PDDI CDS)


Track Lead Email(s)

Bryn Rhodes: bryn@databaseconsultinggroup.com or  fhir@icf.com 

Richard Boyce: rdb20@pitt.edu or boycerd@upmc.edu 


Specification Information

Implementation Guides:


Zulip stream

Testing of Quality Measures: https://chat.fhir.org/#narrow/stream/179220-cql 

PDDI CDS: https://chat.fhir.org/#narrow/stream/358049-PDDI_CDS


Track Kick off Call

Meeting details for all calls listed below (Wednesday's at 10 AM ET):
https://us02web.zoom.us/j/83645856405?pwd=OHJRdVVtb3BBQTdVaWp5UlBXUEdvUT09
Zoom meeting id: 836 4585 6405
Passcode: 552204

Connectathon Artifacts





System Roles

See below

Testing Scenario (quality measure):

Quality Measure Testing:

System roles:

  • Knowledge Repository
  • Terminology Server
  • Clinical Data Repository
  • Reporting System
  • Receiving System

Scenarios (Exam125FHIR and Exam130FHIR)

Individual and Summary Measure Report

Action: The reporting system uses data requirements from the knowledge repository and value sets from the terminology server to construct and issue FHIR queries against the clinical data repository to retrieve the data of interest for the measure and subject(s).

Action: The reporting system posts data gathered from the clinical data repository to the receiving system.

Action: The reporting system issues an $evaluate-measure  to the receiving system to calculate the measure and displays the results.

Precondition: The knowledge repository has measure and library resources loaded. The terminology server has value sets loaded. The clinical data repository has patient information loaded.

Measure content: Exam125FHIR Exam130FHIR

Test data: Exam125FHIR Exam130FHIR

Success Criteria:  The reporting system displays expected results for the selected measure and subject.

Bonus point: The reporting system displays expected population results for all test patients

Terminology Service Testing

NOTE: The NLM's R4 FHIR Terminology Service will be available for participants to use. Use of this server requires a current UMLS license, as well as access to the UAT instance for the FHIR R4 functionality. Please provide track leads with your UMLS user id so we can coordinate access to the UAT instance. Note also that the above version-specific expand scenario is currently only partially supported by the VSAC's FHIR instance, and testing should be focused on use of the R4 ValueSet resources returned.

BASE URI: https://uat-cts.nlm.nih.gov/fhir/r4
This UAT Base URI is no longer included on the FHIR Terminology Service for VSAC Resources as it has become a public page that points to the production servers. However, the capability statements and other important documentation are included on the FHIR Terminology Service for VSAC Resources page.

Using the UAT base URI, instead of our production server base URI  (https://cts.nlm.nih.gov/fhir/r4), allows our software engineers to respond to issues and make adjustments/corrects in real time, when possible, during the connectathon.

People who have requested UAT permissions will have permissions on the UAT server: https://uat-cts.nlm.nih.gov/fhir/r4, not necessarily on the production server: (https://cts.nlm.nih.gov/fhir/r4).

RequirementTest CaseExpected Outcome

Code System 1: Representation

  • url
  • url&version
  • name
  • status
  • experimental
  • publisher
  • description
  • caseSensitive

TODO (build URL and identify CodeSystem)

CodeSystem resources that conform to ShareableCodeSystem
Content as expected (validate url, version, name, title, experimental, status, publisher, description)

Source of truth for CodeSystem resources being:

  • FHIR specification (for ballot bound code systems)
  • terminology.hl7.org (for HL7 and external code systems)
Code System 3: Retrieve

Code System 4: Search by

  • url
  • url&version
  • identifier
  • name
  • title
  • description
  • code (exact match)


Code System 6: $lookup

Code System 7: $validate-code

Value Set 1: ShareableValueSet



Value Set 2: ComputableValueSet

Value Set 3: ExecutableValueSet

Value Set 4: PublishableValueSet

Value Set 5: Retrieve

Value Set 6: Search by:

  • url
  • url&version
  • identifier
  • name
  • title
  • status
  • description
  • code
  • offset


Value Set 8: $validate-code

  • url
  • valueSetVersion
  • activeOnly
  • displayLanguage
  • code
  • system
  • system-version
  • coding
  • codeableConcept
  • check-system-version
  • force-system-version


Value Set 9: $expand

  • url
  • valueSetVersion
  • activeOnly
  • displayLanguage
  • limitedExpansion
  • default-to-latest-version
  • system-version
  • cehck-system-version
  • force-system-version
  • manfiest
  • expansion
  • includeDraft


Quality Program 1: Representation

Quality Program 2: PublishableLibrary

Quality Program 3: Retrieve



Quality Program 5: $expand

Quality Program 7: $package

Quality Program 8: Release Manfiest

Server Operations 1: metadata?mode=terminology

Server Operations 2: Batch support



Clinical Decision Support Testing:

System roles:

  • Knowledge Repository
  • Terminology Server
  • Clinical Data Repository
  • Clinical Reasoning Engine
  • Healthworker Application

Scenarios (WHO Antenatal Care)

Routine Encounter Decision Support, Step 5 - Quick Check

Action: The healthworker application uses WHO Antenatal Care content from the knowledge repository and terminology server to facilitate delivery of guideline-based care as part of a routine pregnancy encounter. Specifically, the application displays the Questionnaire for Step 05 - Quick Check, pre-populating available data from the clinical data repository based on the current status of the patient.

Action: The user fills out the Quick Check questionnaire, indicating that no danger signs are present. The application issues a PlanDefinition/$apply with the results of the completed Questionnaire to the clinical reasoning engine

Action: The clinical reasoning engine processes the Quick Check PlanDefinition with the given input data and determines the contact can proceed as normal and returns the results.

Precondition: The knowledge repository has WHO ANC content loaded. The terminology server has WHO ANC value sets loaded. The clinical data repository has patient information loaded, and in the expected state of an in-progress routine pregnancy contact.

ANC content: https://build.fhir.org/ig/WorldHealthOrganization/smart-anc/downloads.html

Test data: https://build.fhir.org/ig/WorldHealthOrganization/smart-anc/examples-first-contact.html#step-05-quick-check

Success Criteria:  The healthworker application displays guidance provided by the clinical reasoning engine, indicating no danger signs are present and the contact can proceed as normal.

Bonus point: The healthworker application has content from multiple implementation guides loaded to demonstrate inter-leaving decision support based on the common process model described in CPG.
Bonus point: The healthworker application uses the new PlanDefinition/$apply semantics (i.e. no CarePlan returned, only a RequestGroup)

Variant: User indicates a symptom that is a danger sign, decision support returns referral to emergency department

Security and Privacy Considerations:

This track will use all synthetic data and open FHIR endpoints.


Testing Scenario (PDDI CDS):

PDDI CDS Clinical Decision Support Testing:

System roles:

  • Knowledge Repository
  • Terminology Server
  • Clinical Data Repository
  • Clinical Reasoning Engine
  • Healthworker Application

Scenarios (PDDI CDS)

Subscribe to CDS Services

Action: The healthworker application subscribes to PDDI CDS services from the clinical reasoning engine.   

Precondition:  The clinical reasoning engine has loaded the PDDI CDS services for patient-view, order-select, and order-sign (all to handle the warfarin-NSAIDS PDDI for this run).

Success Criteria:  The healthworker application receives a valid CDS Hooks service response listing all three services, including prefetch templates.

Example: CDS Service subscribe request: https://cds.ddi-cds.org/cqf-ruler-r4/cds-services 


Patient-view

Action: The healthworker application uses PDDI CDS from the clinical reasoning engine  to deliver suggestions about PDDIs based on data about a specific patient in the EHR at the time that a patient chart is loaded (patient-view). 

Precondition:  The clinical reasoning engine has loaded the PDDI CDS service for patient-view (warfarin-NSAIDS for this run). The clinical data repository has patient information loaded and has subscribed to the PDDI CDS service for patient-view. 

Success Criteria:  The healthworker application displays guidance provided by the clinical reasoning engine, indicating the appropriate branch of the PDDI CDS rule.

Example:

Pre-condition:

  • the patient has at least one MedicationStatement or MedicationRequest in the EHR within 100 days of "today" (the date the CDS request is made) that is one of the values listed in the "Warfarins" value set (VSAC '2.16.840.1.113762.1.4.1213.8') 
  • the patient has at least one MedicationStatement or MedicationRequest in the EHR within 100 days of "today" (the date the CDS request is made)  that is one of the values listed in "NSAIDs" value set (VSAC '2.16.840.1.113762.1.4.1213.9')

POST https://cds.ddi-cds.org/cqf-ruler-r4/cds-services/warfarin-nsaids-cds-patient-view

{
"hookInstance": "<id>",
"hook": "patient-view",
"fhirServer": "<FHIR SERVER WITH PATIENT DATA",
"fhirAuthorization": {
<AUTH INFORMATION>
"scope": "patient/*.* user/*.*",
"subject": "patient"
},
"userId": "Practitioner/<id>",
"patientId": "<id>",
"context": {
"userId": "Practitioner/<id>",
"patientId": "<id>",
"encounterId": "<id>"
}
}

Expected response: CDS Cards describing a potential DDI and suggesting management options.

The "basic" order-sign scenario - order-sign only 

 Action: The healthworker application uses PDDI CDS from the clinical reasoning engine  to deliver suggestions about PDDIs based on data about a specific patient in the EHR at the time that a new medication order is being signed (order-sign).

Precondition:  The clinical reasoning engine has loaded the PDDI CDS service for order-sign (warfarin-NSAIDS for this run). The clinical data repository has patient information loaded and has subscribed to the PDDI CDS service for order-sign. 

Success Criteria:  The healthworker application displays guidance provided by the clinical reasoning engine, indicating the appropriate branch of the PDDI CDS rule.

Example:

Pre-condition:

  • the patient has at least one MedicationStatement or MedicationRequest in the EHR within 100 days of "today" (the date the CDS request is made) that is one of the values listed in the "Warfarins" value set (VSAC '2.16.840.1.113762.1.4.1213.8') 
  • the patient has at least one MedicationStatement or MedicationRequest in the EHR within 100 days of "today" (the date the CDS request is made)  that is one of the values listed in "NSAIDs" value set (VSAC '2.16.840.1.113762.1.4.1213.9')

POST https://cds.ddi-cds.org/cqf-ruler-r4/cds-services/warfarin-nsaids-cds-sign

{
   "hookInstance": "<id>",
"hook": "order-sign",
"fhirServer": "<FHIR SERVER WITH PATIENT DATA",
"fhirAuthorization": {
<AUTH INFORMATION>
"scope": "patient/*.* user/*.*",
"subject": "patient"
},
"userId": "Practitioner/<id>",
"patientId": "<id>",
"context": {
"userId": "Practitioner/<id>",
"patientId": "<id>",
"encounterId": "<id>"
}
    "extension": {
    "pddi-configuration-items": {
        "filter-out-repeated-alerts": false,
        "show-evidence-support": true,
        "alert-non-serious": true
    }
    },
    "context": {
"userId": "Practitioner/<id>",
"patientId": "<id>",
"encounterId": "<id>"  
    "draftOrders": {
        "resourceType": "Bundle",
        "entry": [
        {
            "resource": {
            "resourceType": "MedicationRequest",
            "id":"test-ketorolac-med-request",
            "meta":{
                "lastUpdated":"2022-12-04T13:25:40.845-04:00"
            },
            "text":{
                "status":"generated",
                "div":"<div xmlns=\"http://www.w3.org/1999/xhtml\">Ketorolac Tromethamine 10 MG Oral Tablet (rxnorm: 830422) </div>"
            },            
            "authoredOn": "2022-12-04",
            "status":"draft",
            "intent":"order",
            "subject": {
              "reference": "Patient/<id>"
            },
            "dosageInstruction": [
                {
                "timing": {
                "repeat": {
                    "frequency": 1,
                    "period": 1,
                    "periodUnit": "d",
                    "boundsPeriod": {
                    "start": "2022-12-15"
                    }
                }
                },
                "doseAndRate": [
                {
                "doseQuantity": {
                    "value": 1,
                    "system": "http://unitsofmeasure.org",
                    "code": "{pill}"
                }
                }
                ]
            }
            ],
            "medicationCodeableConcept": {
                "coding": [
                {
                "display": "Ketorolac Tromethamine 10 MG Oral Tablet",
                "system": "http://www.nlm.nih.gov/research/umls/rxnorm",
                "code": "834022"
                }
                ],
                "text": "Ketorolac Tromethamine 10 MG Oral Tablet"
            }
            }
        }
        ]        
    }
    },
    "prefetch": {
    }
}

Expected response: CDS Cards describing a potential DDI and suggesting management options.


The "advanced" scenario - coordination of order-select and order-sign

Action: The healthworker application uses PDDI CDS from the clinical reasoning engine  to deliver suggestions about PDDIs based on data about a specific patient in the EHR at the time that a new medication order is being selected (order-select).

Precondition:  The clinical reasoning engine has loaded the PDDI CDS services for order-select and order-sign (warfarin-NSAIDS for this run). The clinical data repository has patient information loaded and has subscribed to the PDDI CDS service for order-sign. The healthworker application has configured the order-sign CDS Hook by setting the filter-out-repeated-alerts setting for pddi-configuration-items to "false" and the order-select CDS Hook by setting cache-for-order-sign-filtering to "true"

Success Criteria:  The healthworker application displays guidance provided by the clinical reasoning engine at order-select, indicating the appropriate branch of the PDDI CDS rule, but does not repeat the information at order-sign.

Pre-condition:

  • the patient has at least one MedicationStatement or MedicationRequest in the EHR within 100 days of "today" (the date the CDS request is made) that is one of the values listed in the "Warfarins" value set (VSAC '2.16.840.1.113762.1.4.1213.8') 
  • the patient has at least one MedicationStatement or MedicationRequest in the EHR within 100 days of "today" (the date the CDS request is made)  that is one of the values listed in "NSAIDs" value set (VSAC '2.16.840.1.113762.1.4.1213.9')

First POST

{
  "hookInstance": "<id>",
    "hook": "order-select",
  "fhirServer": "<FHIR SERVER>/fhir/",
    "fhirAuthorization": {
<AUTH INFO>
      "scope": "patient/*.* user/*.*",
        "subject": "patient"
    },
  "userId": "Practitioner/<id>",
  "patientId": "<id>",
    "extension": {
    "pddi-configuration-items": {
        "cache-for-order-sign-filtering": true,
        "show-evidence-support": true,
        "alert-non-serious": true
    }
    },
    "context": {
  "userId": "Practitioner/<id>",
  "patientId": "<id>",
  "encounterId": "<id>",
    "selections": [
        "MedicationRequest/ketorolac-draft-order-test"
    ],
    "draftOrders": {
        "resourceType": "Bundle",
        "entry": [
        {
        "resource": {
            "resourceType": "MedicationRequest",
            "id": "ketorolac-draft-order-test",
            "authoredOn": "2022-12-11",
            "status": "draft",
            "subject": {
          "reference": "Patient/<id>"
            },
            "dosageInstruction": [
            {
            "doseQuantity": {
                "value": 1,
                "system": "http://unitsofmeasure.org",
                "code": "{pill}"
            },
            "timing": {
                "repeat": {
                "frequency": 1,
                "period": 1,
                "periodUnit": "d"
                }
            }
            }
            ],
            "medicationCodeableConcept": {
            "text": "Ketorolac Tromethamine 10 MG Oral Tablet",
            "coding": [
                {
                "display": "Ketorolac Tromethamine 10 MG Oral Tablet",
                "system": "http://www.nlm.nih.gov/research/umls/rxnorm",
                "code": "834022"
            }
            ]
            }
        }
            }
        ]
    }
    },
    "prefetch": {
    "item2": {
        "resourceType": "Bundle",
      "id": "<id>",
        "meta": {
        "lastUpdated": "2021-05-01T09:38:54.162+00:00"
        },
        "type": "searchset",
        "total": 1,
        "link": [
        {
        "relation": "self",
        "url": "<FHIR SERVER>/fhir/Condition?patient=1496"
            }
        ],
        "entry": [
        {
        "fullUrl": "<FHIR SERVER>/fhir/Condition/140000",
        "resource": {
            "resourceType": "Condition",
          "id": "<id>",
            "meta": {
            "versionId": "1",
            "lastUpdated": "2021-05-01T09:04:41.038+00:00"
            },
            "clinicalStatus": "active",
            "verificationStatus": "differential",
            "code": {
            "coding": [
                {
                "system": "http://snomed.info/sct",
                "code": "12847006",
                "display": "Acute duodenal ulcer with hemorrhage"
            }
            ]
            },
            "subject": {
          "reference": "Patient/<id>"
            },
            "recordedDate": "2021-05-01"
        },
        "search": {
            "mode": "match"
        }
            }
        ]
    },
    "item4": {
        "resourceType": "Bundle",
      "id": "<id>",
        "meta": {
        "lastUpdated": "2022-12-04T07:45:43.383+00:00"
        },
        "type": "searchset",
        "total": 1,
        "link": [
        {
        "relation": "self",
      "url": "<FHIR SERVER>/fhir/MedicationStatement/_search"
            }
        ],
        "entry": [
        {
      "fullUrl": "<FHIR SERVER>/fhir/MedicationStatement/160003",
        "resource": {
            "resourceType": "MedicationStatement",
          "id": "<id>",
            "status": "active",
            "medicationCodeableConcept": {
            "coding": [
                {
                "system": "http://www.nlm.nih.gov/research/umls/rxnorm",
                "code": "855324",
                "display": "Warfarin Sodium 4 MG Oral Tablet"
            }
            ]
            },
            "subject": {
          "reference": "Patient/<id>"
            },
            "effectivePeriod": {
            "start": "2022-12-03T00:00:00+00:00",
            "end": "2023-04-27T00:00:00+00:00"
            },
            "dosage": [
            {
            "text": "4 times daily",
            "doseAndRate": [
                {
                "doseQuantity": {
                "value": 30.0
                }
            }
            ]
            }
            ]
        }
            }
        ]
    }
    }
}

Second POST https://cds.ddi-cds.org/cqf-ruler-r4/cds-services/warfarin-nsaids-cds-sign

  • POST Body would be the same as for the "basic" scenario above but with "filter-out-repeated-alerts": false

Expected response: CDS Cards describing a potential DDI and suggesting management options.

Security and Privacy Considerations:

This track will use all synthetic data and open FHIR endpoints.