CMS347 fails during submission validation

375 views
Skip to first unread message

Gnana Krishnan

unread,
Jan 11, 2019, 10:01:33 AM1/11/19
to Developer Group for QPP APIs
"CMS347 - Statin Therapy for the Prevention and Treatment of Cardiovascular Disease" has 3 sub-measures / population criteria. However, this is not recognized and the QPP forms a JSON like this with just one set instead of three and this has got the NUMER and DENOM mixed up.

{

      "measureId" : "438",

      "value" : {

        "isEndToEndReported" : true,

        "performanceMet" : 0,

        "eligiblePopulationExclusion" : 0,

        "eligiblePopulationException" : 13,

        "performanceNotMet" : 128,

        "eligiblePopulation" : 103

      }

    }

and when we validate this for submission we get the following error:

{"errors":[{"sourceIdentifier":null,"type":"ValidationError","message":"invalid submission object","details":[{"errorCode":null,"message":"SV - field 'value' in Submission.measurementSets[0].measurements[24] is invalid: {\"isEndToEndReported\":true,\"performanceMet\":0,\"eligiblePopulationExclusion\":0,\"eligiblePopulationException\":13,\"performanceNotMet\":128,\"eligiblePopulation\":103} is invalid for measureId 438","value":null,"type":null,"location":{"location":null,"path":"/*[local-name() = 'ClinicalDocument' and namespace-uri() = 'urn:hl7-org:v3']","line":null,"column":null}},{"errorCode":null,"message":"SV - fields 'performanceNotMet, eligiblePopulationException, eligiblePopulationExclusion, eligiblePopulation' in Submission.measurementSets[0].measurements[24] are invalid: The sum of performanceMet, performanceNotMet, eligiblePopulationException and eligiblePopulationExclusion must not exceed eligiblePopulation","value":null,"type":null,"location":{"location":null,"path":"/*[local-name() = 'ClinicalDocument' and namespace-uri() = 'urn:hl7-org:v3']","line":null,"column":null}}]}]}


Could you please see if this is an issue with the QPP conversion tool?

Sailesh Dixit

unread,
Jan 14, 2019, 1:31:35 PM1/14/19
to Developer Group for QPP APIs
In addition to Gnana's question, this measure is certified for the QRDA 3 format using the 3 sub-measure criteria as well. Is it expected that the QRDA III file is submitted as 3 sub-measures, and JSON is submitted as a single performance measure?? 

saq...@flexion.us

unread,
Jan 16, 2019, 11:02:51 AM1/16/19
to Developer Group for QPP APIs
Hi Sailesh,

In regards to your question this is what I understood from what we were told. Only one performance rate should be reported for CMS347 - the weighted average of the three denominators (the sum of all three numerators over the sum of denominators).

Sam

saq...@flexion.us

unread,
Jan 16, 2019, 11:04:11 AM1/16/19
to Developer Group for QPP APIs
Hi Gnana,

We were having issues similar to this one with two other measures. Please try your submission again as we deployed a fix yesterday. If you are still having problems, if you could submit your file here with all PII (Personal Identifiable Information) removed, we can test for any issues with the converter.

Thank you,
Sam

Satej Prabhu

unread,
Jan 17, 2019, 10:51:05 PM1/17/19
to saq...@flexion.us, Developer Group for QPP APIs
Hi Sam and Gnana,
Did you find any resolution of this issue? I am facing same issue. Attached is my de-identified QRDA III xml and error from conversion tool.

Error JSON:
{"isEndToEndReported":true,
"performanceMet":1,
"eligiblePopulationExclusion":0,
"eligiblePopulationException":0,
"performanceNotMet":55,
"eligiblePopulation":2}

--Satej


Notice: The information contained in this message or any attached document is confidential and intended only for individuals to whom it is addressed. If you got this message in error, please inform me immediately using one of the methods above. In some cases, I may ask you to return the documents at my expense. In general, please simply destroy the information at once. Any unauthorized use, distribution, or copying of this information is prohibited.

--
You received this message because you are subscribed to the Google Groups "Developer Group for QPP APIs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qpp-apis+u...@googlegroups.com.
Visit this group at https://groups.google.com/group/qpp-apis.
To view this discussion on the web visit https://groups.google.com/d/msgid/qpp-apis/99df9f6a-fab4-46f1-aca8-2de521dd1474%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--
  Regards Satej
hgsajdgas.xml
error.json

Satej Prabhu

unread,
Jan 18, 2019, 1:51:10 AM1/18/19
to saq...@flexion.us, Developer Group for QPP APIs
By trying different combinations of counts, I trust converter is only picking up counts from 3rd stratum and root cause of issue is calculation of performance not met. The potential fix is to create an QRDA III file with only third stratum, this file passes both Cypress and QPP conversion.

Let me know what you think.
--
  Regards Satej

saq...@flexion.us

unread,
Jan 18, 2019, 12:02:05 PM1/18/19
to Developer Group for QPP APIs
Hi Satej,

I am looking into your file currently now and will let you know what I find.

Sam

Gnana Krishnan

unread,
Jan 20, 2019, 10:03:57 PM1/20/19
to saq...@flexion.us, Developer Group for QPP APIs
Hi Sam,
I am adding my QRDA Cat III file as well (redacted). It will be great, if you could please run this through and let me know as well.

Satej,
As of Friday, I was still facing the same issue.

Thanks
Gnana

You received this message because you are subscribed to a topic in the Google Groups "Developer Group for QPP APIs" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/qpp-apis/vGfDpU1JJ_c/unsubscribe.
To unsubscribe from this group and all its topics, send an email to qpp-apis+u...@googlegroups.com.

Gnana Krishnan

unread,
Jan 20, 2019, 10:04:46 PM1/20/19
to saq...@flexion.us, Developer Group for QPP APIs
Apologies. I missed the attachment. Here it is.
QRDA-3_347_138_155.xml

Satej Prabhu

unread,
Jan 20, 2019, 10:06:58 PM1/20/19
to Gnana Krishnan, saq...@flexion.us, Developer Group for QPP APIs
Thank you for the update. Awaiting for resolution.

basha shaik

unread,
Jan 21, 2019, 8:07:45 AM1/21/19
to Developer Group for QPP APIs
Hi All
We are also getting the same problem with the measure CMS68 using web version(attached files) and same files when i pass through QPP desktop version, it got converted successfully, Please suggest what's going on with Web version?

Regards
Feroz 
Chambers,_Valentino_20190121040654393821918.XML
Chambers,_Valentino_20190121040654393821918-qpp(desktop version).json
error (5)_Error with web version.json

saq...@flexion.us

unread,
Jan 21, 2019, 3:59:15 PM1/21/19
to Developer Group for QPP APIs
Hi Satej,

It appears you have the same issues with CMS347v1 as others. Only one performance rate should be reported for CMS347 - the weighted average of the three denominators (the sum of all three numerators over the sum of denominators). Please change the xml you are submitting to only include one stratum for CMS347v1. 

Thanks,
Sam

Satej Prabhu

unread,
Jan 21, 2019, 7:08:36 PM1/21/19
to saq...@flexion.us, Developer Group for QPP APIs
Thank you for the response for Sam, 
I have three stratum which has performance rate followed by IPP, Denominator, Exclusion, Exception and numerator count for each of them.

When I removed performance rate 2 and 3 data, keeping the population records in there , it failed with same error. See attached file PerformanceRate1.xml
When I removed all the population data ( IPP, Denominator, Exclusion, Exception and numerator) for stratum 2 and 3. The file worked fine.  See attached file PerformanceRate1_AvgPopulations.xml. I believe this is the solution.


I have couple of questions here
1. Which stratum IDs should be included. Is it okay to have first stratum? Screenshot from 2018_CMS_QRDA_III_Eligible_Clinicians_and_EP_IG_v2_508.pdf

image.png
2. Performance rate => (Num1 + Num2 + Num3) / (Denom 1 + Denom 2 + Denom 3). This is what you recommend. 
3. How do we calculate each population for reporting
     a. Should it be the populations of Stratrum 1 only
     b. Or it should be average of all three populations For e.g  IPP = (IPP1 + IPP2 + IPP3) / 3 , (Denom = Denom 1+ Denom2+ Denom3)/3 .. and so on. How do I round this data?

Finally do we have a reference guide from CMS/QPP which elaborates more on this. This help us in case of internal/external audits.

Regards
Satej 




For more options, visit https://groups.google.com/d/optout.


--
  Regards Satej
PerformanceRate1_AvgPopulations.xml
PerformanceRate1.xml

John Mahoney

unread,
Jan 22, 2019, 2:12:54 PM1/22/19
to Developer Group for QPP APIs
Sam,
Can you please provide the guidance you have that indicates CMS347 which has 3 subpopulations should be reported with a singular rate?
We are having the same issue with submissions of CMS347 to the QPP.
Thanks for your help.

-John

saq...@flexion.us

unread,
Jan 23, 2019, 3:19:35 PM1/23/19
to Developer Group for QPP APIs
Hi Satej,

Removing performance rate 2 and 3 and all their subpopulation data makes the submission have a single performance rate. This works because that is what QPP is expecting. The problem is that it may not represent the correct data unless you calculate the weighted average. For the weighted average, I have asked for documentation on how the average is calculated. Once I find out more information, I will pass it along to you.

Thanks,
Sam

Sailesh Dixit

unread,
Jan 25, 2019, 2:52:36 PM1/25/19
to Developer Group for QPP APIs
Thank you sam...


On Wednesday, January 16, 2019 at 11:02:51 AM UTC-5, saq...@flexion.us wrote:
Hi Sailesh,

In regards to your question this is what I understood from what we were told. Only one performance rate should be reported for CMS347 - the weighted average of the three denominators (the sum of all three numerators over the sum of denominators).

Sam

On Monday, January 14, 2019 at 12:31:35 PM UTC-6, Sailesh Dixit wrote:
In addition to Gnana's question, this measure is certifieH

Sailesh Dixit

unread,
Jan 25, 2019, 3:03:10 PM1/25/19
to Developer Group for QPP APIs
Hi Sam, 

Any updates on the formula that we should be using as a guide to change the performance rate to one calculation ?? This guidance would really help us in making sure that we are submitting correct numbers on the file. 

Best regards, 
Sailesh

saq...@flexion.us

unread,
Jan 25, 2019, 3:15:53 PM1/25/19
to Developer Group for QPP APIs
Hi Sailesh,

The issue lies more with the Conversion Tool. There is be a fix coming schedule to come on Monday for this issue. We found that you still need to submit the QRDA-III document with 3 strata but once it is converted into QPP, it needs to be converted into one strata. I will be sure to let you know when we have a fix out.

Satej Prabhu

unread,
Jan 31, 2019, 10:14:04 AM1/31/19
to saq...@flexion.us, Developer Group for QPP APIs
Hi Sam,

Is there any update on this? Our customers waiting on us.

Satej

saq...@flexion.us

unread,
Jan 31, 2019, 12:19:51 PM1/31/19
to Developer Group for QPP APIs
Hi Satej,

We have a fix for this issue but could not deploy it yet, due to needing verification and documentation. I have received the verification yesterday estimate the fix will be deployed at the latest Monday(2/4). I will comment in this thread once the fix has been deployed.

Sam

Debbie Mobley

unread,
Jan 31, 2019, 6:26:42 PM1/31/19
to Developer Group for QPP APIs
We're experiencing this issue as well for 2 of our customers attempting to submit this measure.  We'll try again once you post that the fix has been deployed.

Debbie Mobley

saq...@flexion.us

unread,
Feb 1, 2019, 1:41:57 PM2/1/19
to Developer Group for QPP APIs
Hi Sailesh,

I couldn't find you original post in here but as for submitting CMS347v1, you will submit it as 3 separate strata as the QRDA-III implementation guide suggests.

Sam


On Friday, January 25, 2019 at 2:03:10 PM UTC-6, Sailesh Dixit wrote:

QCDR Developer

unread,
Feb 4, 2019, 2:24:05 AM2/4/19
to Developer Group for QPP APIs
This thread appears to have a lot of conflicting information coming from the moderators. I believe we are still waiting on detailed information on how to calculate the single performance rate as referenced earlier in this thread. I am not confused by the reference to 3 strata in the most recent email. It is imperative that clear guidance be given on this matter as soon as possible, as we are all developing systems to support customers that are facing an ever-dwindling submission window. 

saq...@flexion.us

unread,
Feb 4, 2019, 4:56:22 PM2/4/19
to Developer Group for QPP APIs
Hi all,

The a new fix has been deployed to production for the Conversion Tool as of today. The submission expects 3 strata for CMS347v1 and now converts it into QPP properly. Please try your submissions again and let us know if you have any problems.

Thanks,
Sam

Debbie Mobley

unread,
Feb 4, 2019, 11:12:39 PM2/4/19
to Developer Group for QPP APIs
Thanks, the upload completed successfully for CMS347.

Sailesh Dixit

unread,
Feb 8, 2019, 4:39:42 PM2/8/19
to Developer Group for QPP APIs
Hey Sam, 

We are still waiting on the calculation guidance for QPP JSON file format submission. Is there a formula that we can refer to for this calculation??  Please provide guidance on this so that we are able to update our system to aggregate the numbers for submission purposes. 

Best regards, 
Sailesh

Sarah White

unread,
Feb 8, 2019, 4:43:23 PM2/8/19
to Sailesh Dixit, Developer Group for QPP APIs
Hi Sailesh,

As Sam mentioned in an earlier reply, we made a change to the conversion tool, so you should submit it with the 3 rates to the conversion endpoint and it will generate one performance rate for submission in JSON.

Sarah White
Business Analyst


Sailesh Dixit

unread,
Feb 8, 2019, 5:02:32 PM2/8/19
to Developer Group for QPP APIs
Hi Sarah, 

Thank you for quick reply. However, from what i understood the fix was applied to consume QRDA 3 files and not QPP JSON file. Also, was this fix only applied to production or was it also applied to developer preview?? We were testing developer preview and it is still failing?? Below is the request and response we are still getting in developer preview

Request sent

{
  "entityType": "individual",
  "taxpayerIdentificationNumber": "000791271",
  "nationalProviderIdentifier": "0123456794",
  "performanceYear": 2018,
  "measurementSets": [
    {
      "category": "quality",
      "submissionMethod": "registry",
      "performanceStart": "2018-01-01",
      "performanceEnd": "2018-12-31",
      "programName": "mips",
      "measurements": [
        {
          "measureId": "438",
          "value": {
            "isEndToEndReported": true,
            "strata": [
              {
                "performanceMet": 400,
                "performanceNotMet": 73,
                "eligiblePopulationException": 5,
                "eligiblePopulationExclusion": 2,
                "eligiblePopulation": 480,
                "stratum": "notOccurrence"
              },
              {
                "performanceMet": 400,
                "performanceNotMet": 173,
                "eligiblePopulationException": 5,
                "eligiblePopulationExclusion": 2,
                "eligiblePopulation": 580,
                "stratum": "hypercholesterolemia"
              },
              {
                "performanceMet": 400,
                "performanceNotMet": 273,
                "eligiblePopulationException": 5,
                "eligiblePopulationExclusion": 2,
                "eligiblePopulation": 680,
                "stratum": "diabetes"
              }
            ]
          }
        }
      ]
    }
  ]
}

Response received:

{
  "error": {
    "type": "ValidationError",
    "message": "invalid submission object",
    "details": [
      {
        "message": "field 'value' in Submission.measurementSets[0].measurements[0] is invalid: {\"isEndToEndReported\":true,\"strata\":[{\"performanceMet\":400,\"performanceNotMet\":73,\"eligiblePopulationException\":5,\"eligiblePopulationExclusion\":2,\"eligiblePopulation\":480,\"stratum\":\"notOccurrence\"},{\"performanceMet\":400,\"performanceNotMet\":173,\"eligiblePopulationException\":5,\"eligiblePopulationExclusion\":2,\"eligiblePopulation\":580,\"stratum\":\"hypercholesterolemia\"},{\"performanceMet\":400,\"performanceNotMet\":273,\"eligiblePopulationException\":5,\"eligiblePopulationExclusion\":2,\"eligiblePopulation\":680,\"stratum\":\"diabetes\"}]} is invalid for measureId 438",
        "path": "$.measurementSets[0].measurements[0].value"
      },
      {
        "message": "field 'performanceMet' in Submission.measurementSets[0].measurements[0] is missing",
        "path": "$.measurementSets[0].measurements[0].value.performanceMet"
      },
      {
        "message": "field 'eligiblePopulation' in Submission.measurementSets[0].measurements[0] is missing",
        "path": "$.measurementSets[0].measurements[0].value.eligiblePopulation"
      }
    ]
  }
}

Sarah White

unread,
Feb 8, 2019, 5:06:33 PM2/8/19
to Sailesh Dixit, Developer Group for QPP APIs
Measure 438 is a single performance rate. The QRDA3 conversion reconciles the confusion surround the eCQM version of the measure. If submitting 438 via QPP JSON as a registry measure, then it is single performance rate. You should follow the measure specification for how to create the performance rate. If you have specific questions about that, please contact the QPP Help Desk at Q...@cms.hhs.gov.


Sarah White
Business Analyst

Sailesh Dixit

unread,
Feb 11, 2019, 11:22:26 AM2/11/19
to Developer Group for QPP APIs
Hi Sarah, 

The quality id assigned to this measure is 438, however, we are still submitting the eCQM version of this measure on JSON format and not the registry version. Hence, the end to end is set to true. How do we handle this situation then. Again to make sure we are on the same page, we are not utilizing registry specification to  submit CMS347. The reason we have to select 438 is because JSON format only accepts quality ID and not the emeasure id. 

Please clarify. 

Best regards,
Sailesh

On Friday, February 8, 2019 at 5:06:33 PM UTC-5, Sarah White wrote:
Measure 438 is a single performance rate. The QRDA3 conversion reconciles the confusion surround the eCQM version of the measure. If submitting 438 via QPP JSON aos a registry measure, then it is single performance rate. You should follow the measure specification for how to create the performance rate. If you have specific questions about that, please contact the QPP Help Desk at Q...@cms.hhs.gov.

Sarah White

unread,
Feb 11, 2019, 11:26:05 AM2/11/19
to Sailesh Dixit, Developer Group for QPP APIs
Hi Sailesh,

If you're not converting it through the conversion tool and instead just submitting it via QPP JSON, then it's still a single performance rate measure. You should contact CMS about using the eCQM measure specification to create a single performance rate. This is a policy question and not an API question. 


Sarah White
Business Analyst

Sailesh Dixit

unread,
Feb 11, 2019, 11:27:55 AM2/11/19
to Developer Group for QPP APIs
Thank you sarah for the clarification and your timely response. I apprecaite it. 
Reply all
Reply to author
Forward
0 new messages