Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Embedding questionnaire scoring data into the FHIR Questionnaire/Response?

We have a system where citizens download Questionnaire from a server, fill it in and submit a QuestionnaireResponse back into the server, storing it there. In our case, these are simple questions about how you're feeling and symptoms. A health worker can then access the QuestionnaireResponse. The health workers don't want the answers, but a score which has been calculated based on the answers.

Some vendors (non-FHIR) allow creating a form and a scoring system at the same time. If we wanted to support this within FHIR, I'm assuming we would have to embed the scoring information inside the Questionnaire (or potentially a separate resource, but that would give some redundance perhaps).

Is this best solved with extensions to the Questionnaire-resource, another resource or some other mechanism? And what'd be the best way (architectureally) to implement the actual scoring. Would it best be a separate application which subscribes to the QuestionnaireResponses, downloads the Questionnaire, extracts the scoring system, evaluates and then writes the score back into the QuestionnareResponse?

Are there other standards we should be looking to for help on this?

And for those especially interested, here's a really simplified Questionnaire resource. Typically it'd have more questions of course. Right now we've put the score into the 'code', which doesn't seem like a good idea.

{
   "resourceType":"Questionnaire",
   "id":"1140",
   "meta":{
      "versionId":"11",
      "lastUpdated":"2016-06-14T13:01:47.000+00:00"
   },
   "text":{
      "status":"generated",
      "div":"<div><!-- Snipped for Brevity --></div>"
   },
   "status":"published",
   "date":"2016",
   "group":{
      "linkId":"group1",
      "title":"HelsaMi Hjertesvikt",
      "concept":[
         {
            "system":"unknown",
            "code":"unknown",
            "display":"Hjertesvikt"
         }
      ],
      "group":[
         {
            "linkId":"group2",
            "question":[
               {
                  "linkId":"Feeling",
                  "text":"How do you feel today?",
                  "type":"choice",
                  "option":[
                     {
                        "system":"unknown",
                        "code":"3",
                        "display":"Good"
                     },
                     {
                        "system":"unknown",
                        "code":"2",
                        "display":"Medium"
                     },
                     {
                        "system":"unknown",
                        "code":"1",
                        "display":"Bad"
                     }
                  ]
               }
            ]
         }
      ]
   }
}

Would an extension for example look like this (embedded in to each option):

"extension": [{
"url": "http://example.com/scoring",
"valueInteger": 10
}
]
like image 259
Larsie Avatar asked Mar 11 '23 23:03

Larsie


1 Answers

The score would simply be another answer to a "special" question. The question would have an extension that defines how the score is calculated. The question would likely be "read only" and could be hidden. You could even have multiple such questions, for example one per section to provide a sub-calculation and then one for the overall questionnare to total it up. As well, look at the coded ordinal extension for the Coding data type as it may be helpful for capturing scores for individual question answers.

like image 143
Lloyd McKenzie Avatar answered May 13 '23 18:05

Lloyd McKenzie