2016-06-15 5 views
2

Wir haben ein System, wo Bürger Fragebögen von einem Server herunterladen, ausfüllen und eine FragebogenResponse zurück auf den Server senden und dort speichern. In unserem Fall sind dies einfache Fragen, wie Sie sich fühlen und Symptome. Ein Gesundheitsarbeiter kann dann auf die Fragebogen-Antwort zugreifen. Die Gesundheitsarbeiter wollen nicht die Antworten, sondern eine Punktzahl, die auf der Grundlage der Antworten berechnet wurde.Einbettung von Fragebogen-Scoring-Daten in den FHIR Fragebogen/Response?

Einige Anbieter (nicht-FHIR) ermöglichen die gleichzeitige Erstellung eines Formulars und eines Scoring-Systems. Wenn wir dies innerhalb von FHIR unterstützen wollten, gehe ich davon aus, dass wir die Scoring-Informationen in den Fragebogen einbetten müssen (oder möglicherweise eine separate Ressource, aber das würde vielleicht eine gewisse Redundanz bedeuten).

Ist dies am besten mit Erweiterungen der Fragebogen-Ressource, einer anderen Ressource oder eines anderen Mechanismus gelöst? Und was wäre der beste Weg (architektonisch), um das eigentliche Scoring zu implementieren? Wäre es am besten eine separate Anwendung, die die FragebogenResponses abonniert, den Fragebogen herunterlädt, das Scoring-System extrahiert, auswertet und dann den Score zurück in die QuestionnareResponse schreibt?

Gibt es andere Standards, nach denen wir hier suchen sollten?

Und für diejenigen besonders interessiert, hier ist eine wirklich vereinfachte Fragebogen Ressource. Normalerweise hätte es natürlich mehr Fragen. Im Moment haben wir die Punktzahl in den "Code" geschrieben, was keine gute Idee ist.

{ 
 
    "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" 
 
        } 
 
        ] 
 
       } 
 
      ] 
 
     } 
 
     ] 
 
    } 
 
}

Wäre eine Erweiterung zum Beispiel wie folgt aussehen (eingebettet in jeder Option):

"extension": [{ 
"url": "http://example.com/scoring", 
"valueInteger": 10 
} 
] 

Antwort

2

Die Partitur wäre einfach eine andere Antwort auf eine "besondere" die Rede sein. Die Frage hätte eine Erweiterung, die definiert, wie die Punktzahl berechnet wird. Die Frage wäre wahrscheinlich "nur lesen" und könnte versteckt werden. Sie könnten sogar mehrere solche Fragen haben, zum Beispiel eine pro Abschnitt, um eine Unterberechnung bereitzustellen, und dann eine für den gesamten Fragebogen, um sie zusammenzufassen. Sehen Sie sich auch die codierte ordinale Erweiterung für den Coding-Datentyp an, da sie hilfreich sein kann, um Bewertungen für einzelne Fragenantworten zu erfassen.