sdc-qrf 1.0.0-beta.20 → 1.0.0-beta.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/dist/converter/extensions.d.ts +1 -0
  2. package/dist/converter/extensions.d.ts.map +1 -1
  3. package/dist/converter/extensions.js +40 -0
  4. package/dist/converter/extensions.js.map +1 -1
  5. package/dist/converter/fceToFhir/questionnaire/processExtensions.d.ts.map +1 -1
  6. package/dist/converter/fceToFhir/questionnaire/processExtensions.js +7 -1
  7. package/dist/converter/fceToFhir/questionnaire/processExtensions.js.map +1 -1
  8. package/dist/converter/fhirToFce/questionnaire/processExtensions.d.ts +1 -0
  9. package/dist/converter/fhirToFce/questionnaire/processExtensions.d.ts.map +1 -1
  10. package/dist/converter/fhirToFce/questionnaire/processExtensions.js +7 -0
  11. package/dist/converter/fhirToFce/questionnaire/processExtensions.js.map +1 -1
  12. package/dist/fce.types.d.ts +10 -10
  13. package/dist/fce.types.d.ts.map +1 -1
  14. package/package.json +1 -1
  15. package/src/converter/__tests__/fce.test.ts +8 -0
  16. package/src/converter/__tests__/resources/questionnaire_fce/answerOptionsToggleExpression.json +84 -0
  17. package/src/converter/__tests__/resources/questionnaire_fce/assemble_context.json +20 -0
  18. package/src/converter/__tests__/resources/questionnaire_fhir/answerOptionsToggleExpression.json +96 -0
  19. package/src/converter/__tests__/resources/questionnaire_fhir/assemble_context.json +32 -0
  20. package/src/converter/extensions.ts +52 -1
  21. package/src/converter/fceToFhir/questionnaire/processExtensions.ts +18 -2
  22. package/src/converter/fhirToFce/questionnaire/processExtensions.ts +11 -0
  23. package/src/fce.types.ts +15 -10
@@ -28,6 +28,7 @@ export declare enum ExtensionIdentifier {
28
28
  ChoiceColumns = "http://aidbox.io/fhir/StructureDefinition/questionnaire-choiceColumns",
29
29
  ItemPopulationContext = "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-itemPopulationContext",
30
30
  ItemConstraint = "http://hl7.org/fhir/StructureDefinition/questionnaire-constraint",
31
+ AnswerOptionsToggleExpression = "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression",
31
32
  InitialExpression = "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-initialExpression",
32
33
  ChoiceColumn = "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-choiceColumn",
33
34
  CalculatedExpression = "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-calculatedExpression",
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../src/converter/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,UAAU,CAAC;AAEtD,oBAAY,mBAAmB;IAC3B,MAAM,iEAAiE;IACvE,WAAW,sEAAsE;IACjF,eAAe,0EAA0E;IACzF,IAAI,+DAA+D;IACnE,UAAU,qEAAqE;IAC/E,iBAAiB,4EAA4E;IAC7F,WAAW,wDAAwD;IACnE,UAAU,kDAAkD;IAC5D,SAAS,+EAA+E;IACxF,KAAK,kDAAkD;IACvD,kBAAkB,wFAAwF;IAC1G,qBAAqB,2FAA2F;IAChH,QAAQ,qDAAqD;IAC7D,QAAQ,qDAAqD;IAC7D,WAAW,iFAAiF;IAC5F,WAAW,iFAAiF;IAC5F,gBAAgB,oDAAoD;IACpE,6BAA6B,gGAAgG;IAC7H,0BAA0B,uEAAuE;IACjG,SAAS,+EAA+E;IACxF,eAAe,mDAAmD;IAClE,QAAQ,qDAAqD;IAC7D,iBAAiB,4EAA4E;IAC7F,qBAAqB,+EAA+E;IACpG,aAAa,0EAA0E;IAEvF,qBAAqB,2FAA2F;IAChH,cAAc,qEAAqE;IACnF,iBAAiB,uFAAuF;IACxG,YAAY,kFAAkF;IAC9F,oBAAoB,0FAA0F;IAC9G,oBAAoB,0FAA0F;IAC9G,gBAAgB,sFAAsF;IACtG,aAAa,2DAA2D;IACxE,QAAQ,qDAAqD;IAC7D,QAAQ,qDAAqD;IAE7D,iBAAiB,4EAA4E;IAC7F,WAAW,oEAAoE;IAC/E,UAAU,mEAAmE;IAC7E,QAAQ,iEAAiE;IACzE,SAAS,yEAAyE;IAClF,KAAK,6DAA6D;IAClE,UAAU,mEAAmE;IAC7E,UAAU,mEAAmE;IAC7E,gBAAgB,sFAAsF;IACtG,SAAS,oEAAoE;IAC7E,SAAS,oEAAoE;CAChF;AAED,MAAM,MAAM,oBAAoB,GAAG;KAC9B,GAAG,IAAI,mBAAmB,GACrB;QACI,SAAS,EAAE;YACP,cAAc,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,KAAK,OAAO,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;YAC3F,YAAY,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,aAAa,EAAE,CAAC;SACjE,CAAC;KACL,GACD;QACI,IAAI,EAAE;YACF,SAAS,EAAE,MAAM,aAAa,CAAC;YAC/B,aAAa,EAAE,MAAM,oBAAoB,CAAC;YAC1C,YAAY,CAAC,EAAE,OAAO,CAAC;SAC1B,CAAC;KACL;CACV,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,oBA8PnC,CAAC"}
1
+ {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../src/converter/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAA2D,MAAM,cAAc,CAAC;AAC7G,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,UAAU,CAAC;AAEtD,oBAAY,mBAAmB;IAC3B,MAAM,iEAAiE;IACvE,WAAW,sEAAsE;IACjF,eAAe,0EAA0E;IACzF,IAAI,+DAA+D;IACnE,UAAU,qEAAqE;IAC/E,iBAAiB,4EAA4E;IAC7F,WAAW,wDAAwD;IACnE,UAAU,kDAAkD;IAC5D,SAAS,+EAA+E;IACxF,KAAK,kDAAkD;IACvD,kBAAkB,wFAAwF;IAC1G,qBAAqB,2FAA2F;IAChH,QAAQ,qDAAqD;IAC7D,QAAQ,qDAAqD;IAC7D,WAAW,iFAAiF;IAC5F,WAAW,iFAAiF;IAC5F,gBAAgB,oDAAoD;IACpE,6BAA6B,gGAAgG;IAC7H,0BAA0B,uEAAuE;IACjG,SAAS,+EAA+E;IACxF,eAAe,mDAAmD;IAClE,QAAQ,qDAAqD;IAC7D,iBAAiB,4EAA4E;IAC7F,qBAAqB,+EAA+E;IACpG,aAAa,0EAA0E;IAEvF,qBAAqB,2FAA2F;IAChH,cAAc,qEAAqE;IACnF,6BAA6B,mGAAmG;IAChI,iBAAiB,uFAAuF;IACxG,YAAY,kFAAkF;IAC9F,oBAAoB,0FAA0F;IAC9G,oBAAoB,0FAA0F;IAC9G,gBAAgB,sFAAsF;IACtG,aAAa,2DAA2D;IACxE,QAAQ,qDAAqD;IAC7D,QAAQ,qDAAqD;IAE7D,iBAAiB,4EAA4E;IAC7F,WAAW,oEAAoE;IAC/E,UAAU,mEAAmE;IAC7E,QAAQ,iEAAiE;IACzE,SAAS,yEAAyE;IAClF,KAAK,6DAA6D;IAClE,UAAU,mEAAmE;IAC7E,UAAU,mEAAmE;IAC7E,gBAAgB,sFAAsF;IACtG,SAAS,oEAAoE;IAC7E,SAAS,oEAAoE;CAChF;AAED,MAAM,MAAM,oBAAoB,GAAG;KAC9B,GAAG,IAAI,mBAAmB,GACrB;QACI,SAAS,EAAE;YACP,cAAc,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,KAAK,OAAO,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;YAC3F,YAAY,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,aAAa,EAAE,CAAC;SACjE,CAAC;KACL,GACD;QACI,IAAI,EAAE;YACF,SAAS,EAAE,MAAM,aAAa,CAAC;YAC/B,aAAa,EAAE,MAAM,oBAAoB,CAAC;YAC1C,YAAY,CAAC,EAAE,OAAO,CAAC;SAC1B,CAAC;KACL;CACV,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,oBAySnC,CAAC"}
@@ -30,6 +30,7 @@ var ExtensionIdentifier;
30
30
  ExtensionIdentifier["ChoiceColumns"] = "http://aidbox.io/fhir/StructureDefinition/questionnaire-choiceColumns";
31
31
  ExtensionIdentifier["ItemPopulationContext"] = "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-itemPopulationContext";
32
32
  ExtensionIdentifier["ItemConstraint"] = "http://hl7.org/fhir/StructureDefinition/questionnaire-constraint";
33
+ ExtensionIdentifier["AnswerOptionsToggleExpression"] = "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression";
33
34
  ExtensionIdentifier["InitialExpression"] = "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-initialExpression";
34
35
  ExtensionIdentifier["ChoiceColumn"] = "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-choiceColumn";
35
36
  ExtensionIdentifier["CalculatedExpression"] = "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-calculatedExpression";
@@ -226,6 +227,39 @@ exports.extensionTransformers = {
226
227
  },
227
228
  },
228
229
  },
230
+ [ExtensionIdentifier.AnswerOptionsToggleExpression]: {
231
+ transform: {
232
+ fromExtensions: (extensions) => {
233
+ return {
234
+ answerOptionsToggleExpression: extensions.map((extension) => {
235
+ const answerOptionsToggleExpression = extension.extension;
236
+ return {
237
+ expression: answerOptionsToggleExpression.find((obj) => obj.url === 'expression')
238
+ .valueExpression,
239
+ option: answerOptionsToggleExpression
240
+ .filter((obj) => obj.url === 'option')
241
+ .map((obj) => getExtensionValue(obj)),
242
+ };
243
+ }),
244
+ };
245
+ },
246
+ toExtensions: (item) => {
247
+ if (item.answerOptionsToggleExpression) {
248
+ return item.answerOptionsToggleExpression.map((answerOptionsToggleExpression) => ({
249
+ url: ExtensionIdentifier.AnswerOptionsToggleExpression,
250
+ extension: [
251
+ ...answerOptionsToggleExpression.option.map((option) => (Object.assign({ url: 'option' }, option))),
252
+ {
253
+ url: 'expression',
254
+ valueExpression: answerOptionsToggleExpression.expression,
255
+ },
256
+ ],
257
+ }));
258
+ }
259
+ return [];
260
+ },
261
+ },
262
+ },
229
263
  [ExtensionIdentifier.Variable]: {
230
264
  path: { extension: 'valueExpression', questionnaire: 'variable', isCollection: true },
231
265
  },
@@ -301,4 +335,10 @@ exports.extensionTransformers = {
301
335
  path: { extension: 'valueString', questionnaire: 'macro' },
302
336
  },
303
337
  };
338
+ function getExtensionValue(extension) {
339
+ const valueKey = Object.keys(extension).find((key) => key.startsWith('value'));
340
+ return {
341
+ [valueKey]: extension[valueKey],
342
+ };
343
+ }
304
344
  //# sourceMappingURL=extensions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../../src/converter/extensions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../../src/converter/extensions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"processExtensions.d.ts","sourceRoot":"","sources":["../../../../src/converter/fceToFhir/questionnaire/processExtensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAA8B,aAAa,IAAI,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE1F,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,gBAAgB,GAAG,iBAAiB,CA6EpF"}
1
+ {"version":3,"file":"processExtensions.d.ts","sourceRoot":"","sources":["../../../../src/converter/fceToFhir/questionnaire/processExtensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAA8B,aAAa,IAAI,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE1F,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,gBAAgB,GAAG,iBAAiB,CA6FpF"}
@@ -4,7 +4,7 @@ exports.processExtensions = processExtensions;
4
4
  const tslib_1 = require("tslib");
5
5
  function processExtensions(questionnaire) {
6
6
  var _a;
7
- const { launchContext, mapping, sourceQueries, targetStructureMap, assembledFrom } = questionnaire, fhirQuestionnaire = tslib_1.__rest(questionnaire, ["launchContext", "mapping", "sourceQueries", "targetStructureMap", "assembledFrom"]);
7
+ const { launchContext, mapping, sourceQueries, targetStructureMap, assembledFrom, assembleContext } = questionnaire, fhirQuestionnaire = tslib_1.__rest(questionnaire, ["launchContext", "mapping", "sourceQueries", "targetStructureMap", "assembledFrom", "assembleContext"]);
8
8
  let extensions = [];
9
9
  if (launchContext) {
10
10
  for (const launchContextItem of launchContext) {
@@ -58,6 +58,12 @@ function processExtensions(questionnaire) {
58
58
  valueCanonical: assembledFrom,
59
59
  });
60
60
  }
61
+ if (assembleContext) {
62
+ extensions = extensions.concat(assembleContext.map((assembleContextItem) => ({
63
+ url: 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-assembleContext',
64
+ valueString: assembleContextItem,
65
+ })));
66
+ }
61
67
  if (extensions.length) {
62
68
  fhirQuestionnaire.extension = ((_a = fhirQuestionnaire.extension) !== null && _a !== void 0 ? _a : []).concat(extensions);
63
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"processExtensions.js","sourceRoot":"","sources":["../../../../src/converter/fceToFhir/questionnaire/processExtensions.ts"],"names":[],"mappings":";;AAGA,8CA6EC;;AA7ED,SAAgB,iBAAiB,CAAC,aAA+B;;IAC7D,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,aAAa,KAC5E,aAAa,EADoE,iBAAiB,kBAClG,aAAa,EADX,oFAAkG,CACvF,CAAC;IAElB,IAAI,UAAU,GAAoB,EAAE,CAAC;IAErC,IAAI,aAAa,EAAE,CAAC;QAChB,KAAK,MAAM,iBAAiB,IAAI,aAAa,EAAE,CAAC;YAC5C,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC;YACpC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC;YACxC,MAAM,WAAW,GAAG,iBAAiB,CAAC,WAAW,CAAC;YAClD,MAAM,sBAAsB,GAAoB;gBAC5C;oBACI,GAAG,EAAE,MAAM;oBACX,WAAW,EAAE,IAAI;iBACpB;aACJ,CAAC;YAEF,KAAK,MAAM,QAAQ,IAAI,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,EAAE,CAAC;gBACpC,sBAAsB,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;YACtE,CAAC;YAED,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC5B,sBAAsB,CAAC,IAAI,CAAC;oBACxB,GAAG,EAAE,aAAa;oBAClB,WAAW,EAAE,WAAW;iBAC3B,CAAC,CAAC;YACP,CAAC;YAED,UAAU,CAAC,IAAI,CAAC;gBACZ,GAAG,EAAE,gFAAgF;gBACrF,SAAS,EAAE,sBAAsB;aACpC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACV,UAAU,GAAG,UAAU,CAAC,MAAM,CAC1B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAChB,GAAG,EAAE,yEAAyE;YAC9E,cAAc,EAAE;gBACZ,SAAS,EAAE,CAAC,CAAC,SAAS;aACzB;SACJ,CAAC,CAAC,CACN,CAAC;IACN,CAAC;IAED,IAAI,aAAa,EAAE,CAAC;QAChB,UAAU,GAAG,UAAU,CAAC,MAAM,CAC1B,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACzB,GAAG,EAAE,gFAAgF;YACrF,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;SAChD,CAAC,CAAC,CACN,CAAC;IACN,CAAC;IAED,IAAI,kBAAkB,EAAE,CAAC;QACrB,UAAU,GAAG,UAAU,CAAC,MAAM,CAC1B,kBAAkB,CAAC,GAAG,CAAC,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;YAC/C,GAAG,EAAE,qFAAqF;YAC1F,cAAc,EAAE,qBAAqB;SACxC,CAAC,CAAC,CACN,CAAC;IACN,CAAC;IAED,IAAI,aAAa,EAAE,CAAC;QAChB,UAAU,CAAC,IAAI,CAAC;YACZ,GAAG,EAAE,gFAAgF;YACrF,cAAc,EAAE,aAAa;SAChC,CAAC,CAAC;IACP,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QACpB,iBAAiB,CAAC,SAAS,GAAG,CAAC,MAAA,iBAAiB,CAAC,SAAS,mCAAI,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACzF,CAAC;IAED,OAAO,iBAAiB,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"processExtensions.js","sourceRoot":"","sources":["../../../../src/converter/fceToFhir/questionnaire/processExtensions.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ export declare function processExtensions(fhirQuestionnaire: FHIRQuestionnaire):
5
5
  sourceQueries?: any[];
6
6
  targetStructureMap?: any[];
7
7
  assembledFrom?: any;
8
+ assembleContext?: string[];
8
9
  };
9
10
  export declare function processLaunchContext(fhirQuestionnaire: FHIRQuestionnaire): any[] | undefined;
10
11
  //# sourceMappingURL=processExtensions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"processExtensions.d.ts","sourceRoot":"","sources":["../../../../src/converter/fhirToFce/questionnaire/processExtensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE9D,wBAAgB,iBAAiB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG;IACrE,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAChB,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;IACtB,kBAAkB,CAAC,EAAE,GAAG,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,GAAG,CAAC;CACvB,CAcA;AAED,wBAAgB,oBAAoB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,GAAG,EAAE,GAAG,SAAS,CA2C5F"}
1
+ {"version":3,"file":"processExtensions.d.ts","sourceRoot":"","sources":["../../../../src/converter/fhirToFce/questionnaire/processExtensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE9D,wBAAgB,iBAAiB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG;IACrE,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAChB,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;IACtB,kBAAkB,CAAC,EAAE,GAAG,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B,CAgBA;AAED,wBAAgB,oBAAoB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,GAAG,EAAE,GAAG,SAAS,CA2C5F"}
@@ -8,12 +8,14 @@ function processExtensions(fhirQuestionnaire) {
8
8
  const sourceQueries = processSourceQueries(fhirQuestionnaire);
9
9
  const targetStructureMap = processTargetStructureMap(fhirQuestionnaire);
10
10
  const assembledFrom = processAssembledFrom(fhirQuestionnaire);
11
+ const assembleContext = processAssembleContext(fhirQuestionnaire);
11
12
  return {
12
13
  launchContext: (launchContext === null || launchContext === void 0 ? void 0 : launchContext.length) ? launchContext : undefined,
13
14
  mapping: (mapping === null || mapping === void 0 ? void 0 : mapping.length) ? mapping : undefined,
14
15
  sourceQueries: (sourceQueries === null || sourceQueries === void 0 ? void 0 : sourceQueries.length) ? sourceQueries : undefined,
15
16
  targetStructureMap: (targetStructureMap === null || targetStructureMap === void 0 ? void 0 : targetStructureMap.length) ? targetStructureMap : undefined,
16
17
  assembledFrom: assembledFrom ? assembledFrom : undefined,
18
+ assembleContext: assembleContext.length ? assembleContext : undefined,
17
19
  };
18
20
  }
19
21
  function processLaunchContext(fhirQuestionnaire) {
@@ -81,4 +83,9 @@ function processAssembledFrom(fhirQuestionnaire) {
81
83
  }
82
84
  return extension.valueCanonical;
83
85
  }
86
+ function processAssembleContext(fhirQuestionnaire) {
87
+ var _a;
88
+ const extensions = (_a = fhirQuestionnaire.extension) === null || _a === void 0 ? void 0 : _a.filter((ext) => ext.url === 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-assembleContext');
89
+ return (extensions !== null && extensions !== void 0 ? extensions : []).map((extension) => extension.valueString);
90
+ }
84
91
  //# sourceMappingURL=processExtensions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"processExtensions.js","sourceRoot":"","sources":["../../../../src/converter/fhirToFce/questionnaire/processExtensions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processExtensions.js","sourceRoot":"","sources":["../../../../src/converter/fhirToFce/questionnaire/processExtensions.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { Attachment, CodeableConcept, Coding, Duration, Expression, Extension, Quantity, Questionnaire, QuestionnaireItem, Reference } from 'fhir/r4b';
1
+ import { Attachment, CodeableConcept, Coding, Duration, Expression, Extension, Quantity, Questionnaire, QuestionnaireItem, Reference, QuestionnaireItemAnswerOption } from 'fhir/r4b';
2
2
  export interface FCEQuestionnaire extends Questionnaire {
3
3
  /** NOTE: from extension http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-assembleContext */
4
- assembleContext?: QuestionnaireAssembleContext[];
4
+ assembleContext?: string[];
5
5
  /** NOTE: from extension https://jira.hl7.org/browse/FHIR-22356#assembledFrom */
6
6
  assembledFrom?: string;
7
7
  item?: FCEQuestionnaireItem[];
@@ -24,14 +24,6 @@ export interface FCEQuestionnaire extends Questionnaire {
24
24
  /** NOTE: from extension http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-targetStructureMap */
25
25
  targetStructureMap?: string[];
26
26
  }
27
- export interface QuestionnaireAssembleContext {
28
- /** NOTE: from extension description */
29
- description?: string;
30
- /** NOTE: from extension name */
31
- name?: string;
32
- /** NOTE: from extension type */
33
- type?: string;
34
- }
35
27
  export interface FCEQuestionnaireItem extends QuestionnaireItem {
36
28
  /** NOTE: from extension http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerExpression */
37
29
  /** An expression (FHIRPath, CQL or FHIR Query) that resolves to a list of permitted answers for the question item or that establishes context for a group item. */
@@ -45,6 +37,9 @@ export interface FCEQuestionnaireItem extends QuestionnaireItem {
45
37
  /** NOTE: from extension http://hl7.org/fhir/StructureDefinition/questionnaire-constraint */
46
38
  /** An invariant that must be satisfied before responses to the questionnaire can be considered "complete". */
47
39
  itemConstraint?: FCEQuestionnaireItemConstraint[];
40
+ /** NOTE: from extension http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression */
41
+ /** A complex expression that provides a list of the allowed options that should be enabled or disabled based on the evaluation of a provided expression. */
42
+ answerOptionsToggleExpression?: FCEQuestionnaireItemAnswerOptionsToggleExpression[];
48
43
  /** NOTE: from extension http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-enableWhenExpression */
49
44
  /** An expression that returns a boolean value for whether to enable the item. */
50
45
  enableWhenExpression?: Expression;
@@ -151,6 +146,11 @@ export interface FCEQuestionnaireItemConstraint {
151
146
  /** NOTE: from extension severity */
152
147
  severity: string;
153
148
  }
149
+ export type FCEQuestionnaireItemAnswerOptionsToggleExpressionOption = Omit<QuestionnaireItemAnswerOption, 'initialSelected' | '_initialSelected'>;
150
+ export interface FCEQuestionnaireItemAnswerOptionsToggleExpression {
151
+ expression: Expression;
152
+ option: Array<FCEQuestionnaireItemAnswerOptionsToggleExpressionOption>;
153
+ }
154
154
  export interface FCEQuestionnaireLaunchContext {
155
155
  /** NOTE: from extension description */
156
156
  description?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"fce.types.d.ts","sourceRoot":"","sources":["../src/fce.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fce.types.d.ts","sourceRoot":"","sources":["../src/fce.types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "sdc-qrf",
3
3
  "license": "MIT",
4
- "version": "1.0.0-beta.20",
4
+ "version": "1.0.0-beta.22",
5
5
  "scripts": {
6
6
  "test": "vitest --watch=false",
7
7
  "test:watch": "vitest --watch",
@@ -7,6 +7,7 @@ import fce_beverages from './resources/questionnaire_fce/beverages.json';
7
7
  import fce_choice_answer_option from './resources/questionnaire_fce/choice_answer_option.json';
8
8
  import fce_consent from './resources/questionnaire_fce/consent.json';
9
9
  import fce_constraint from './resources/questionnaire_fce/constraint.json';
10
+ import fce_answer_options_toggle_expression from './resources/questionnaire_fce/answerOptionsToggleExpression.json';
10
11
  import fce_cqf_examples from './resources/questionnaire_fce/cqf-examples.json';
11
12
  import fce_enable_when from './resources/questionnaire_fce/enable_when.json';
12
13
  import fce_encounter_create from './resources/questionnaire_fce/encounter_create.json';
@@ -33,12 +34,14 @@ import fce_with_attachment_questionnaire from './resources/questionnaire_fce/wit
33
34
  import fce_mixed_fce_with_extensions from './resources/questionnaire_fce/mixed-fce-with-extensions.json';
34
35
  import fce_unknown_extensions from './resources/questionnaire_fce/unknown-extensions.json';
35
36
  import fce_occurs from './resources/questionnaire_fce/occurs.json';
37
+ import fce_assemble_context from './resources/questionnaire_fce/assemble_context.json';
36
38
  // fhir questionnaire
37
39
  import fhir_allergies from './resources/questionnaire_fhir/allergies.json';
38
40
  import fhir_beverages from './resources/questionnaire_fhir/beverages.json';
39
41
  import fhir_choice_answer_option from './resources/questionnaire_fhir/choice_answer_option.json';
40
42
  import fhir_consent from './resources/questionnaire_fhir/consent.json';
41
43
  import fhir_constraint from './resources/questionnaire_fhir/constraint.json';
44
+ import fhir_answer_options_toggle_expression from './resources/questionnaire_fhir/answerOptionsToggleExpression.json';
42
45
  import fhir_cqf_examples from './resources/questionnaire_fhir/cqf-examples.json';
43
46
  import fhir_enable_when from './resources/questionnaire_fhir/enable_when.json';
44
47
  import fhir_encounter_create from './resources/questionnaire_fhir/encounter_create.json';
@@ -65,6 +68,7 @@ import fhir_with_attachment_questionnaire from './resources/questionnaire_fhir/w
65
68
  import fhir_mixed_fce_with_extensions from './resources/questionnaire_fhir/mixed-fce-with-extensions.json';
66
69
  import fhir_unknown_extensions from './resources/questionnaire_fhir/unknown-extensions.json';
67
70
  import fhir_occurs from './resources/questionnaire_fhir/occurs.json';
71
+ import fhir_assemble_context from './resources/questionnaire_fhir/assemble_context.json';
68
72
 
69
73
  import { FCEQuestionnaire } from '../../fce.types';
70
74
 
@@ -101,6 +105,7 @@ describe('Questionanire and QuestionnaireResponses transformation', () => {
101
105
  ['enable-when', fhir_enable_when, fce_enable_when],
102
106
  ['cqf-examples', fhir_cqf_examples, fce_cqf_examples],
103
107
  ['constraint', fhir_constraint, fce_constraint],
108
+ ['answerOptionsToggleExpression', fhir_answer_options_toggle_expression, fce_answer_options_toggle_expression],
104
109
  ['unit-option', fhir_unit_option, fce_unit_option],
105
110
  ['variable', fhir_variable, fce_variable],
106
111
  ['sub-questionnaire', fhir_sub_questionnaire, fce_sub_questionnaire],
@@ -109,6 +114,7 @@ describe('Questionanire and QuestionnaireResponses transformation', () => {
109
114
  // ['mixed-fce-with-extensions', fhir_mixed_fce_with_extensions, fce_mixed_fce_with_extensions],
110
115
  ['unknown-extensions', fhir_unknown_extensions, fce_unknown_extensions],
111
116
  ['occurs', fhir_occurs, fce_occurs],
117
+ ['assemble-context', fhir_assemble_context, fce_assemble_context],
112
118
  ])('Each FHIR Questionnaire should convert to FCE %s', async (_, fhir_questionnaire, fce_questionnaire) => {
113
119
  expect(toFirstClassExtension(fhir_questionnaire as FHIRQuestionnaire)).toStrictEqual(fce_questionnaire);
114
120
  });
@@ -142,6 +148,7 @@ describe('Questionanire and QuestionnaireResponses transformation', () => {
142
148
  ['enable-when', fce_enable_when, fhir_enable_when],
143
149
  ['cqf-examples', fce_cqf_examples, fhir_cqf_examples],
144
150
  ['constraint', fce_constraint, fhir_constraint],
151
+ ['answerOptionsToggleExpression', fce_answer_options_toggle_expression, fhir_answer_options_toggle_expression],
145
152
  ['unit-option', fce_unit_option, fhir_unit_option],
146
153
  ['variable', fce_variable, fhir_variable],
147
154
  ['sub-questionnaire', fce_sub_questionnaire, fhir_sub_questionnaire],
@@ -149,6 +156,7 @@ describe('Questionanire and QuestionnaireResponses transformation', () => {
149
156
  ['mixed-fce-with-extensions', fce_mixed_fce_with_extensions, fhir_mixed_fce_with_extensions],
150
157
  ['unknown-extensions', fce_unknown_extensions, fhir_unknown_extensions],
151
158
  ['occurs', fce_occurs, fhir_occurs],
159
+ ['assemble-context', fce_assemble_context, fhir_assemble_context],
152
160
  ])('Each FCE Questionnaire should convert to FHIR %s', async (_, fce_questionnaire, fhir_questionnaire) => {
153
161
  expect(sortExtensionsList(fromFirstClassExtension(fce_questionnaire as FCEQuestionnaire))).toStrictEqual(
154
162
  sortExtensionsList(fhir_questionnaire),
@@ -0,0 +1,84 @@
1
+ {
2
+ "resourceType": "Questionnaire",
3
+ "id": "answerOptionsToggleExpression",
4
+ "meta": {
5
+ "profile": [
6
+ "https://emr-core.beda.software/StructureDefinition/fhir-emr-questionnaire"
7
+ ]
8
+ },
9
+ "status": "active",
10
+ "item": [
11
+ {
12
+ "type": "choice",
13
+ "linkId": "answerOptions",
14
+ "answerOption": [
15
+ {
16
+ "valueCoding": {
17
+ "code": "code-1",
18
+ "display": "display-1"
19
+ }
20
+ },
21
+ {
22
+ "valueCoding": {
23
+ "code": "code-2",
24
+ "display": "display-2"
25
+ }
26
+ },
27
+ {
28
+ "valueCoding": {
29
+ "code": "code-3",
30
+ "display": "display-3"
31
+ }
32
+ },
33
+ {
34
+ "valueCoding": {
35
+ "code": "code-4",
36
+ "display": "display-4"
37
+ }
38
+ }
39
+ ],
40
+ "answerOptionsToggleExpression": [
41
+ {
42
+ "option": [
43
+ {
44
+ "valueCoding": {
45
+ "code": "code-1",
46
+ "display": "display-1"
47
+ }
48
+ },
49
+ {
50
+ "valueCoding": {
51
+ "code": "code-2",
52
+ "display": "display-2"
53
+ }
54
+ }
55
+ ],
56
+ "expression": {
57
+ "language": "text/fhirpath",
58
+ "expression": "1 = 1"
59
+ }
60
+ },
61
+ {
62
+ "option": [
63
+ {
64
+ "valueCoding": {
65
+ "code": "code-3",
66
+ "display": "display-3"
67
+ }
68
+ },
69
+ {
70
+ "valueCoding": {
71
+ "code": "code-4",
72
+ "display": "display-4"
73
+ }
74
+ }
75
+ ],
76
+ "expression": {
77
+ "language": "text/fhirpath",
78
+ "expression": "1 != 1"
79
+ }
80
+ }
81
+ ]
82
+ }
83
+ ]
84
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "resourceType": "Questionnaire",
3
+ "id": "assemble_context",
4
+ "meta": {
5
+ "profile": ["https://emr-core.beda.software/StructureDefinition/fhir-emr-questionnaire"]
6
+ },
7
+ "status": "active",
8
+ "assembledFrom": "assemble_context",
9
+ "assembleContext": ["prefix1", "prefix2"],
10
+ "item": [
11
+ {
12
+ "type": "string",
13
+ "linkId": "{{%prefix1}}test"
14
+ },
15
+ {
16
+ "type": "string",
17
+ "linkId": "{{%prefix2}}test"
18
+ }
19
+ ]
20
+ }
@@ -0,0 +1,96 @@
1
+ {
2
+ "item": [
3
+ {
4
+ "type": "choice",
5
+ "linkId": "answerOptions",
6
+ "answerOption": [
7
+ {
8
+ "valueCoding": {
9
+ "code": "code-1",
10
+ "display": "display-1"
11
+ }
12
+ },
13
+ {
14
+ "valueCoding": {
15
+ "code": "code-2",
16
+ "display": "display-2"
17
+ }
18
+ },
19
+ {
20
+ "valueCoding": {
21
+ "code": "code-3",
22
+ "display": "display-3"
23
+ }
24
+ },
25
+ {
26
+ "valueCoding": {
27
+ "code": "code-4",
28
+ "display": "display-4"
29
+ }
30
+ }
31
+ ],
32
+ "extension": [
33
+ {
34
+ "url": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression",
35
+ "extension": [
36
+ {
37
+ "url": "option",
38
+ "valueCoding": {
39
+ "code": "code-1",
40
+ "display": "display-1"
41
+ }
42
+ },
43
+ {
44
+ "url": "option",
45
+ "valueCoding": {
46
+ "code": "code-2",
47
+ "display": "display-2"
48
+ }
49
+ },
50
+ {
51
+ "url": "expression",
52
+ "valueExpression": {
53
+ "language": "text/fhirpath",
54
+ "expression": "1 = 1"
55
+ }
56
+ }
57
+ ]
58
+ },
59
+ {
60
+ "url": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression",
61
+ "extension": [
62
+ {
63
+ "url": "option",
64
+ "valueCoding": {
65
+ "code": "code-3",
66
+ "display": "display-3"
67
+ }
68
+ },
69
+ {
70
+ "url": "option",
71
+ "valueCoding": {
72
+ "code": "code-4",
73
+ "display": "display-4"
74
+ }
75
+ },
76
+ {
77
+ "url": "expression",
78
+ "valueExpression": {
79
+ "language": "text/fhirpath",
80
+ "expression": "1 != 1"
81
+ }
82
+ }
83
+ ]
84
+ }
85
+ ]
86
+ }
87
+ ],
88
+ "meta": {
89
+ "profile": [
90
+ "https://emr-core.beda.software/StructureDefinition/fhir-emr-questionnaire"
91
+ ]
92
+ },
93
+ "status": "active",
94
+ "resourceType": "Questionnaire",
95
+ "id": "answerOptionsToggleExpression"
96
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "item": [
3
+ {
4
+ "type": "string",
5
+ "linkId": "{{%prefix1}}test"
6
+ },
7
+ {
8
+ "type": "string",
9
+ "linkId": "{{%prefix2}}test"
10
+ }
11
+ ],
12
+ "meta": {
13
+ "profile": ["https://emr-core.beda.software/StructureDefinition/fhir-emr-questionnaire"]
14
+ },
15
+ "extension": [
16
+ {
17
+ "url": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-assembledFrom",
18
+ "valueCanonical": "assemble_context"
19
+ },
20
+ {
21
+ "url": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-assembleContext",
22
+ "valueString": "prefix1"
23
+ },
24
+ {
25
+ "url": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-assembleContext",
26
+ "valueString": "prefix2"
27
+ }
28
+ ],
29
+ "status": "active",
30
+ "id": "assemble_context",
31
+ "resourceType": "Questionnaire"
32
+ }
@@ -1,4 +1,4 @@
1
- import { FCEQuestionnaireItem } from '../fce.types';
1
+ import { FCEQuestionnaireItem, FCEQuestionnaireItemAnswerOptionsToggleExpressionOption } from '../fce.types';
2
2
  import { Extension as FHIRExtension } from 'fhir/r4b';
3
3
 
4
4
  export enum ExtensionIdentifier {
@@ -30,6 +30,7 @@ export enum ExtensionIdentifier {
30
30
 
31
31
  ItemPopulationContext = 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-itemPopulationContext',
32
32
  ItemConstraint = 'http://hl7.org/fhir/StructureDefinition/questionnaire-constraint',
33
+ AnswerOptionsToggleExpression = 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression',
33
34
  InitialExpression = 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-initialExpression',
34
35
  ChoiceColumn = 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-choiceColumn',
35
36
  CalculatedExpression = 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-calculatedExpression',
@@ -246,6 +247,49 @@ export const extensionTransformers: ExtensionTransformer = {
246
247
  },
247
248
  },
248
249
  },
250
+ [ExtensionIdentifier.AnswerOptionsToggleExpression]: {
251
+ transform: {
252
+ fromExtensions: (extensions) => {
253
+ return {
254
+ answerOptionsToggleExpression: extensions.map((extension) => {
255
+ const answerOptionsToggleExpression = extension.extension!;
256
+
257
+ return {
258
+ expression: answerOptionsToggleExpression.find((obj) => obj.url === 'expression')!
259
+ .valueExpression!,
260
+ option: answerOptionsToggleExpression
261
+ .filter((obj) => obj.url === 'option')
262
+ .map(
263
+ (obj) =>
264
+ getExtensionValue(
265
+ obj,
266
+ ) as FCEQuestionnaireItemAnswerOptionsToggleExpressionOption,
267
+ ),
268
+ };
269
+ }),
270
+ };
271
+ },
272
+ toExtensions: (item) => {
273
+ if (item.answerOptionsToggleExpression) {
274
+ return item.answerOptionsToggleExpression.map((answerOptionsToggleExpression) => ({
275
+ url: ExtensionIdentifier.AnswerOptionsToggleExpression,
276
+ extension: [
277
+ ...answerOptionsToggleExpression.option.map((option) => ({
278
+ url: 'option',
279
+ ...option,
280
+ })),
281
+ {
282
+ url: 'expression',
283
+ valueExpression: answerOptionsToggleExpression.expression,
284
+ },
285
+ ],
286
+ }));
287
+ }
288
+
289
+ return [];
290
+ },
291
+ },
292
+ },
249
293
  [ExtensionIdentifier.Variable]: {
250
294
  path: { extension: 'valueExpression', questionnaire: 'variable', isCollection: true },
251
295
  },
@@ -324,3 +368,10 @@ export const extensionTransformers: ExtensionTransformer = {
324
368
  path: { extension: 'valueString', questionnaire: 'macro' },
325
369
  },
326
370
  };
371
+
372
+ function getExtensionValue(extension: FHIRExtension) {
373
+ const valueKey = Object.keys(extension).find((key) => key.startsWith('value'))! as keyof FHIRExtension;
374
+ return {
375
+ [valueKey]: extension[valueKey],
376
+ };
377
+ }
@@ -2,8 +2,15 @@ import { FCEQuestionnaire } from '../../../fce.types';
2
2
  import { Extension as FHIRExtension, Questionnaire as FHIRQuestionnaire } from 'fhir/r4b';
3
3
 
4
4
  export function processExtensions(questionnaire: FCEQuestionnaire): FHIRQuestionnaire {
5
- const { launchContext, mapping, sourceQueries, targetStructureMap, assembledFrom, ...fhirQuestionnaire } =
6
- questionnaire;
5
+ const {
6
+ launchContext,
7
+ mapping,
8
+ sourceQueries,
9
+ targetStructureMap,
10
+ assembledFrom,
11
+ assembleContext,
12
+ ...fhirQuestionnaire
13
+ } = questionnaire;
7
14
 
8
15
  let extensions: FHIRExtension[] = [];
9
16
 
@@ -73,6 +80,15 @@ export function processExtensions(questionnaire: FCEQuestionnaire): FHIRQuestion
73
80
  });
74
81
  }
75
82
 
83
+ if (assembleContext) {
84
+ extensions = extensions.concat(
85
+ assembleContext.map((assembleContextItem) => ({
86
+ url: 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-assembleContext',
87
+ valueString: assembleContextItem,
88
+ })),
89
+ );
90
+ }
91
+
76
92
  if (extensions.length) {
77
93
  fhirQuestionnaire.extension = (fhirQuestionnaire.extension ?? []).concat(extensions);
78
94
  }
@@ -6,12 +6,14 @@ export function processExtensions(fhirQuestionnaire: FHIRQuestionnaire): {
6
6
  sourceQueries?: any[];
7
7
  targetStructureMap?: any[];
8
8
  assembledFrom?: any;
9
+ assembleContext?: string[];
9
10
  } {
10
11
  const launchContext = processLaunchContext(fhirQuestionnaire);
11
12
  const mapping = processMapping(fhirQuestionnaire);
12
13
  const sourceQueries = processSourceQueries(fhirQuestionnaire);
13
14
  const targetStructureMap = processTargetStructureMap(fhirQuestionnaire);
14
15
  const assembledFrom = processAssembledFrom(fhirQuestionnaire);
16
+ const assembleContext = processAssembleContext(fhirQuestionnaire);
15
17
 
16
18
  return {
17
19
  launchContext: launchContext?.length ? launchContext : undefined,
@@ -19,6 +21,7 @@ export function processExtensions(fhirQuestionnaire: FHIRQuestionnaire): {
19
21
  sourceQueries: sourceQueries?.length ? sourceQueries : undefined,
20
22
  targetStructureMap: targetStructureMap?.length ? targetStructureMap : undefined,
21
23
  assembledFrom: assembledFrom ? assembledFrom : undefined,
24
+ assembleContext: assembleContext.length ? assembleContext : undefined,
22
25
  };
23
26
  }
24
27
 
@@ -111,3 +114,11 @@ function processAssembledFrom(fhirQuestionnaire: FHIRQuestionnaire): string | un
111
114
 
112
115
  return extension.valueCanonical;
113
116
  }
117
+
118
+ function processAssembleContext(fhirQuestionnaire: FHIRQuestionnaire): string[] {
119
+ const extensions = fhirQuestionnaire.extension?.filter(
120
+ (ext) => ext.url === 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-assembleContext',
121
+ );
122
+
123
+ return (extensions ?? []).map((extension) => extension.valueString!);
124
+ }
package/src/fce.types.ts CHANGED
@@ -9,11 +9,12 @@ import {
9
9
  Questionnaire,
10
10
  QuestionnaireItem,
11
11
  Reference,
12
+ QuestionnaireItemAnswerOption,
12
13
  } from 'fhir/r4b';
13
14
 
14
15
  export interface FCEQuestionnaire extends Questionnaire {
15
16
  /** NOTE: from extension http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-assembleContext */
16
- assembleContext?: QuestionnaireAssembleContext[];
17
+ assembleContext?: string[];
17
18
  /** NOTE: from extension https://jira.hl7.org/browse/FHIR-22356#assembledFrom */
18
19
  assembledFrom?: string;
19
20
  item?: FCEQuestionnaireItem[];
@@ -37,15 +38,6 @@ export interface FCEQuestionnaire extends Questionnaire {
37
38
  targetStructureMap?: string[];
38
39
  }
39
40
 
40
- export interface QuestionnaireAssembleContext {
41
- /** NOTE: from extension description */
42
- description?: string;
43
- /** NOTE: from extension name */
44
- name?: string;
45
- /** NOTE: from extension type */
46
- type?: string;
47
- }
48
-
49
41
  export interface FCEQuestionnaireItem extends QuestionnaireItem {
50
42
  /** NOTE: from extension http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerExpression */
51
43
  /** An expression (FHIRPath, CQL or FHIR Query) that resolves to a list of permitted answers for the question item or that establishes context for a group item. */
@@ -59,6 +51,9 @@ export interface FCEQuestionnaireItem extends QuestionnaireItem {
59
51
  /** NOTE: from extension http://hl7.org/fhir/StructureDefinition/questionnaire-constraint */
60
52
  /** An invariant that must be satisfied before responses to the questionnaire can be considered "complete". */
61
53
  itemConstraint?: FCEQuestionnaireItemConstraint[];
54
+ /** NOTE: from extension http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression */
55
+ /** A complex expression that provides a list of the allowed options that should be enabled or disabled based on the evaluation of a provided expression. */
56
+ answerOptionsToggleExpression?: FCEQuestionnaireItemAnswerOptionsToggleExpression[];
62
57
  /** NOTE: from extension http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-enableWhenExpression */
63
58
  /** An expression that returns a boolean value for whether to enable the item. */
64
59
  enableWhenExpression?: Expression;
@@ -173,6 +168,16 @@ export interface FCEQuestionnaireItemConstraint {
173
168
  severity: string;
174
169
  }
175
170
 
171
+ export type FCEQuestionnaireItemAnswerOptionsToggleExpressionOption = Omit<
172
+ QuestionnaireItemAnswerOption,
173
+ 'initialSelected' | '_initialSelected'
174
+ >;
175
+
176
+ export interface FCEQuestionnaireItemAnswerOptionsToggleExpression {
177
+ expression: Expression;
178
+ option: Array<FCEQuestionnaireItemAnswerOptionsToggleExpressionOption>;
179
+ }
180
+
176
181
  export interface FCEQuestionnaireLaunchContext {
177
182
  /** NOTE: from extension description */
178
183
  description?: string;