[MADIE-1976] Folder UUID does not match Patient/id in FHIR test case exports Created: 07/19/24  Updated: 10/03/24  Resolved: 07/31/24

Status: Closed
Project: MADiE Issue Tracker
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug/Issue Priority: Minor
Reporter: Paul Denning Assignee: Chandra Bartleman
Resolution: Deferred for Future Release Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Zip Archive CMS74FHIR-v0.0.002-FHIR4-TestCases.zip    
Issue Links:
Blocking
Blocks MADIE-1879 Consider not using fully numeric reso... Closed
Tool: MADiE
Tool Version: QI-Core
Measure Model: QI-Core/CQL
Impact: Complicates testing outside of MADiE.
Help Desk Use Only Labels: DEV
MADiE Release Version: MADiE 2.0.4
Submitter Resolution Confirmed: Yes

 Description   

For example, CMS74FHIR-v0.0.002-FHIR4-TestCases.ziphas folder 3d962304-b248-4e8b-9e42-b382a5b4754c but inside that folder the test case bundle has a patient resource with 2e999536-bc87-4ffc-9979-cffd86bf928a.  The folder and Patient.id should match.  Also the README.txt should use the correct UUIDs which match the folder and Patient.id.



 Comments   
Comment by Paul Denning [ 10/03/24 ]

Looks good!

CMS74FHIR-v0.0.002-FHIR4-TestCases>grep -A 1 resourceType */*.json | grep -A 1 Patient | grep id.:
04d34ff1-968e-4ad9-9c61-250ddd6a5828/CMS74FHIR-v0.0.002-NUMPass-FlourideAppProcsJan1AndDec31OfMP.json-      "id": "04d34ff1-968e-4ad9-9c61-250ddd6a5828",
05b311bd-7a73-4949-8dc3-35c0037503ad/CMS74FHIR-v0.0.002-IPFail-20yrsWithOralEvalEncDec31B4MP.json-      "id": "05b311bd-7a73-4949-8dc3-35c0037503ad",
11400976-3c1b-42ec-8d60-f29252f553b6/CMS74FHIR-v0.0.002-IPFail-11mo30daysWithOralEvalEncJan1OfMP.json-      "id": "11400976-3c1b-42ec-8d60-f29252f553b6",
1f9df3c7-191e-4260-9115-dc10bfcdbee3/CMS74FHIR-v0.0.002-DENEXFail-DischargeToHomeInpatient.json-      "id": "1f9df3c7-191e-4260-9115-dc10bfcdbee3",
222141c3-c8c7-48b6-a354-d816b6bbaa41/CMS74FHIR-v0.0.002-IPFail-21yrsWithOralEvalEncJan1OfMP.json-      "id": "222141c3-c8c7-48b6-a354-d816b6bbaa41",
31bee4bc-9ca4-4d84-9f1a-a6a6d2d3fac0/CMS74FHIR-v0.0.002-DENEXPass-HospiceServicesEndOnDec31OfMP.json-      "id": "31bee4bc-9ca4-4d84-9f1a-a6a6d2d3fac0",
3d962304-b248-4e8b-9e42-b382a5b4754c/CMS74FHIR-v0.0.002-NUMFail-FlourideAppProcsDec31B4MP.json-      "id": "3d962304-b248-4e8b-9e42-b382a5b4754c",
499fd8d2-0a68-4d27-a194-c61aae97e492/CMS74FHIR-v0.0.002-DENEXPass-HospiceProcedureOverlapsMP.json-      "id": "499fd8d2-0a68-4d27-a194-c61aae97e492",
4c5a69b7-007e-41b8-9607-fd0b97ef271d/CMS74FHIR-v0.0.002-DENEXFail-HospiceServicesEndOnJan1AfterMP.json-      "id": "4c5a69b7-007e-41b8-9607-fd0b97ef271d",
4fc1e663-46e6-4159-853d-b2dbb146b2ac/CMS74FHIR-v0.0.002-DENEXPass-HospiceServicesEndOnJan1OfMP.json-      "id": "4fc1e663-46e6-4159-853d-b2dbb146b2ac",
675a057f-26ea-4e4f-8b94-dc3c05763f39/CMS74FHIR-v0.0.002-Strat2Pass-6yrsWithOralEvalEncJan1OfMP.json-      "id": "675a057f-26ea-4e4f-8b94-dc3c05763f39",
70208367-16df-46d6-b49c-c1e31b7e1d5f/CMS74FHIR-v0.0.002-DENEXPass-HospiceEncOverlapsMP.json-      "id": "70208367-16df-46d6-b49c-c1e31b7e1d5f",
848d64c5-3228-455d-b168-2172a0d93a3a/CMS74FHIR-v0.0.002-DENEXFail-HospiceServicesEndOnDec31B4MP.json-      "id": "848d64c5-3228-455d-b168-2172a0d93a3a",
88696ecd-d24d-44f6-a0c7-a0fc78f6c556/CMS74FHIR-v0.0.002-IPFail-20yrsWithOralEvalEncJan1AfterMP.json-      "id": "88696ecd-d24d-44f6-a0c7-a0fc78f6c556",
890dbdad-7466-494d-966b-a20515508db5/CMS74FHIR-v0.0.002-DENEXPass-HospiceObsValueIsYes.json-      "id": "890dbdad-7466-494d-966b-a20515508db5",
8980b94a-4c69-4ca2-8546-c5a586cb6aba/CMS74FHIR-v0.0.002-IPPass-1yrWithOralEvalEncJan1OfMP.json-      "id": "8980b94a-4c69-4ca2-8546-c5a586cb6aba",
96c38952-91cc-468c-b16b-32386bb312ec/CMS74FHIR-v0.0.002-DENEXPass-HospiceServiceRequestCompleted.json-      "id": "96c38952-91cc-468c-b16b-32386bb312ec",
e428789b-b5ca-4d15-9a7b-4f527303fc9e/CMS74FHIR-v0.0.002-NUMFail-FlourideAppProcsJan1AfterMP.json-      "id": "e428789b-b5ca-4d15-9a7b-4f527303fc9e",
ed7ad3f4-507a-4980-aefa-7d6a8baafaa2/CMS74FHIR-v0.0.002-IPPass-20yrsWithOralEvalEncDec31OfMP.json-      "id": "ed7ad3f4-507a-4980-aefa-7d6a8baafaa2",
fe5f3172-5263-4498-b1ba-0d62de7455ef/CMS74FHIR-v0.0.002-DENEXPass-HospiceDiagnosisStartsDuringMP.json-      "id": "fe5f3172-5263-4498-b1ba-0d62de7455ef",
Comment by Christina Biggs [ 10/02/24 ]

The MADiE 2.0.4 release on 10/2 should solve this issue.  Please try again and if appropriate, please set Submitter Resolution Confirmed to "Yes".

Comment by Paul Denning [ 09/05/24 ]

As I understand it, when FHIR test cases are exported from MADiE, it is desirable to be able to execute the CQL in VS Code, and have those exported test cases function without much more work.  As noted in an earlier comment, https://github.com/cqframework/sample-content-ig?tab=readme-ov-file#directory-structure describes the directory structure for that to work. https://github.com/cqframework/vscode-cql/wiki/User-Guide#executing-cql and https://github.com/cqframework/vscode-cql/wiki/User-Guide#cql-project-structure also describe it. 

"Within the library folder, there is a folder for each "test case", in the form of a Patient (the execution only supports patient context execution at this point). The folder must have the same id as the patient (that's how the evaluator knows what the patient id is)."

If I create a test case and I enter the Patient.id = "foo", when I save it, MADiE changes the Patient.id to a uuid. MADiE does not change the other ids for the non-Patient resources, but it does change references to the Patient to use the new Patient.id.  When exported, currently MADiE changes the Patient.id again to a new uuid; I don't think this change was requested or is necessary.  The export can use the same Patient.id that MADiE assigned when the test case was first saved. The export also changes the id's of all resources in the bundle, and uses the new id's in any references. When MADiE saves the test case, it also changes the fullUrl to use https://madie/cms.gov/ as its root for all entries in the test case bundle.
The important thing for running in VS Code is for the folder that contains a test case bundle to be named with the value of the Patient.id in the test case. Whether that is the UUID that MADiE creates when the test case is first saved, or a different UUID created on export does not really matter in terms of using the test case export with VS Code.

 

Comment by Christina Biggs [ 09/05/24 ]

p9g we are working on implementing this enhancement right now but we have a question.  Currently MADiE creates a patient ID when the user creates the test case, and then (at community request a while back) when the user exports the test case, we replace that patient ID with a newly created UUID (just for the export, we do not save it back in the JSON in MADiE, the original patient ID is retained in the JSON in MADiE).  So for naming the export folder - should we use the newly created UUID (the one created on export) or the one that was originally created when the test case was created (and will remain in the JSON in MADiE)?  I think I know the answer but I just wanted to get confirmation on the request.    Thanks!

Comment by Chandra Bartleman [ 07/29/24 ]

Paul, 

The team is creating an internal story to implement your requested enhancement. This will be prioritized for inclusion in a future MADiE release. This ticket will be updated when your enhancement request is implemented in MADiE. 

Comment by Chandra Bartleman [ 07/24/24 ]

p9g

I have shared your additional comments with the MADiE team. Your enhancement request is under review. 

Thanks. 

Comment by Jennifer Seeman [ 07/23/24 ]

Related to https://oncprojectracking.healthit.gov/support/browse/BONNIEMAT-1879

Comment by Paul Denning [ 07/23/24 ]

https://github.com/cqframework/sample-content-ig?tab=readme-ov-file#directory-structure

The input/tests/<artifact-resource-type-name>/<artifact-resource-name>/<patient-id> folders contain each individual test case, per patient, and the resource files are expected to contain a Patient with the given id.

That is, the Patient.id in the bundle should match the folder name if it is to be executable using the CQL extension of VS Code. References in the bundle to the Patient resource should use the Patient.id in the bundle, so don't change the Patient.id to be the existing folder UUID without changing the refernces in the bundle.

 

jrubini jseeman02 do you have the history on this?

Comment by Chandra Bartleman [ 07/22/24 ]

Paul,

The UUIDs currently used to name the individual test case folders in the export (and subsequently used to generate the Read Me file) are randomly generated and are not using the UUID assigned to the patient ID in the JSON. This is by design. If you would like to see the UUID for the patient ID in the JSON to be the UUID used for the folder names in the test case export bundle, this would be an enhancement request.

Comment by Chandra Bartleman [ 07/19/24 ]

Paul, 

Your ticket is received and being reviewed by the team. Continue to monitor the tickets for updates. 

Comment by MADiE Team [ 07/19/24 ]

Thank you for submitting your question/issue. We will assign this to a team member and respond in one business day. If your question/issue is related to a particular measure, please upload the corresponding measure package.

Generated at Fri Jan 10 17:08:02 EST 2025 using Jira 9.12.15#9120015-sha1:4d9c4bd7a744d02f6fd1c40b1e7bc5cff95adbdc.