-
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.