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).
Requirement | Test Case | Expected 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. |
|