QuestionnaireResponse — Les réponses à un formulaire
Une fois qu'un patient ou un clinicien remplit un Questionnaire, ses réponses sont
stockées en QuestionnaireResponse. Lien strict via linkId à la
définition.
Objet de la ressource
QuestionnaireResponse contient les réponses fournies à un Questionnaire donné. Sa
structure d'items est parallèle à celle du Questionnaire : chaque
item de QR correspond à un item de Q via linkId.
QR peut être : saisie patient (PRO), saisie clinicien (formulaire d'admission), ou saisie automatique (export d'un DPI vers une eCRF de recherche).
Champs clés
| Champ | Type | Cardinalité | Rôle |
|---|---|---|---|
identifier | Identifier[] | 0..* | Identifiants externes. |
basedOn | Reference(CarePlan | ServiceRequest)[] | 0..* | Demande ayant déclenché la saisie. |
partOf | Reference(Observation | Procedure)[] | 0..* | Acte clinique parent. |
questionnaire | canonical(Questionnaire) | 0..1 | Questionnaire référencé. |
status | code | 1..1 | Obligatoire. Voir liste. |
subject | Reference(Any) | 0..1 | Sujet (Patient typiquement). |
encounter | Reference(Encounter) | 0..1 | Encounter pendant lequel la saisie a eu lieu. |
authored | dateTime | 0..1 | Date de saisie. |
author | Reference(Device | Practitioner | PractitionerRole | Patient | RelatedPerson | Organization) | 0..1 | Auteur de la saisie. |
source | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) | 0..1 | Source de l'information (peut différer de l'auteur). |
item | BackboneElement[] | 0..* | Items réponses (récursifs). |
item.linkId | string | 1..1 | Obligatoire. Référence l'item du Questionnaire. |
item.answer | BackboneElement[] | 0..* | Réponse(s) à l'item. |
item.answer.value[x] | boolean | decimal | integer | date | dateTime | time | string | uri | Attachment | Coding | Quantity | Reference | 0..1 | Valeur typée de la réponse. |
item.item | BackboneElement[] | 0..* | Sous-items (réflexion de la hiérarchie du Q). |
Statuts
| Code | Sens |
|---|---|
in-progress | Saisie en cours. |
completed | Saisie terminée, soumise. |
amended | Modifiée après complétion. |
entered-in-error | Saisie erronée. |
stopped | Saisie interrompue. |
Exemple JSON
Soumission du PHQ-9 ci-dessus par le patient : 2 items répondus, score 3 (dépression minime) :
{
"resourceType": "QuestionnaireResponse",
"id": "phq9-response-example",
"questionnaire": "http://example.org/Questionnaire/phq9",
"status": "completed",
"subject": { "reference": "Patient/example" },
"encounter": { "reference": "Encounter/example" },
"authored": "2026-05-14T11:30:00+02:00",
"author": { "reference": "Patient/example" },
"source": { "reference": "Patient/example" },
"item": [
{
"linkId": "1",
"text": "Sur les 2 dernières semaines, avez-vous éprouvé peu d'intérêt ou de plaisir pour faire les choses ?",
"answer": [{
"valueCoding": {
"system": "http://loinc.org/LL358-3",
"code": "LA6569-3",
"display": "Plusieurs jours"
}
}]
},
{
"linkId": "2",
"text": "Sur les 2 dernières semaines, vous êtes-vous senti(e) triste, déprimé(e) ou désespéré(e) ?",
"answer": [{
"valueCoding": {
"system": "http://loinc.org/LL358-3",
"code": "LA6568-5",
"display": "Pas du tout"
}
}]
},
{
"linkId": "10",
"text": "Score total PHQ-9",
"answer": [{ "valueInteger": 3 }]
}
]
} Pièges courants
linkIdorphelin — un item QR avec un linkId qui n'existe pas dans le Questionnaire : data orpheline.- Type de
value[x]incompatible — une réponsevalueStringsur un item Q de typeintegerest invalide. - Pas de
questionnaire— sans canonical, impossible de valider la cohérence des linkId. - Item required non répondu mais
status=completed— la validation SDC$extractrefusera. - Réponse Coding sans
system— code ambigu, le récepteur ne peut résoudre la valeur.
Ressources liées
- Questionnaire — définition source.
- Observation — données extraites par SDC
$extract. - Composition — peut inclure une QR dans une section narrative.
- Encounter — contexte de saisie.