-
Type:
Change Request
-
Resolution: Retracted
-
Priority:
Medium
-
Structured Data Capture (SDC) (FHIR)
-
2.0.0 [deprecated]
-
FHIR Infrastructure
-
SDC Base Questionnaire
-
I have a questionnaire item which display list of diagnoses.
{
"linkId": "4.1",
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/cqf-expression",
"valueExpression": {
"language": "text/cql",
"expression": "\"VentilatorsPrepopulation\".RelevantDiagnoses"
}
}
],
"text": "Patient Diagnoses related to need for a ventilator",
"type": "open-choice",
"require": "true",
"repeats": "true",
"answerOption": [...]
},
This item is used in multiple questionnaires but the expression value is changed from questionnaire to questionnaire. I am trying to make a subQuestionnaire for the common diagnose item. Wondering if I can use the variable extension though that extension is scoped to FHIRPath only.
Here is what I thought:
In sub Questionnaire:
{
"linkId": "4.1",
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/cqf-expression",
"valueExpression":
{
"langauge": "text/cql",
"expression": "%diagnoses-expression"
}
}
],
"text": "Patient Diagnoses related to need for a ventilator",
"type": "open-choice",
"require": "true",
"repeats": "true",
"answerOption": [...]
}
And in container Questionnaire:
{
"linkId": "4.1",
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/subQuestionnaire",
"valueReferece": {
"reference": "..."
},
}
{
"url": "http://hl7.org/fhir/StructureDefinition/variable",
"valueExpression":
{
"langugae": "text/cql"
"name": "diagnoses-expression",
"expression": "\"VentilatorsPrepopulation\".RelevantDiagnoses"
}
}
],
"type": "display"
},
Here is the discussion on zulip:
https://chat.fhir.org/#narrow/stream/179255-questionnaire/topic/Connectathon.20Track/near/196653954
As a summary, the concern is that if I leave $diagnoses-expression not initalized in sub Questionnaire, the sub Questionnaire itself may be invalid as a variable without value. If I initialize the variable with default value in sub Questionnaire, then $assemble operation can throw error for duplicated variables.