$questionnaire

Build Questionnaire

draftFHIR Core package4.3.0operation4 inputs1 output

Generates a Questionnaire instance based on a specified StructureDefinition, creating questions for each core element or extension element found in the StructureDefinition.

If the operation is not called at the instance level, one of the *identifier*, *profile* or *url* 'in' parameters must be provided. If more than one is specified, servers may raise an error or may resolve with the parameter of their choice. If called at the instance level, these parameters will be ignored. The response will contain a Questionnaire instance based on the specified StructureDefinition and/or an OperationOutcome resource with errors or warnings. Nested groups are used to handle complex structures and data types. If the 'supportedOnly' parameter is set to true, only those elements marked as "must support" will be included.

This operation is intended to enable auto-generation of simple interfaces for arbitrary profiles. The 'questionnaire' approach to data entry has limitations that will make it less optimal than custom-defined interfaces. However, this function may be useful for simple applications or for systems that wish to support "non-core" resources with minimal development effort.

Metadata

hl7.org/fhir
Canonical URL
http://hl7.org/fhir/OperationDefinition/StructureDefinition-questionnaire
Code
$questionnaire
Kind
operation
Affects State
No
Publisher
HL7 (FHIR Project)

Invocation Context

Can be invoked at:
Type LevelInstance Level
Target Resources:
StructureDefinition
Affects State:No

Implementation Notes

**Open Issue**: Ideally, extensions should be populated in the generated [Questionnaire](questionnaire.html) that will support taking [QuestionnaireResponse](questionnaireresponse.html) resources generated from the Questionnaire and turning them back into the appropriate resources.

Input Parameters (4)

NameTypeCard.Description
identifiercanonical0..1A logical identifier (i.e. 'StructureDefinition.identifier''). The server must know the StructureDefinition or be able to retrieve it from other known repositories.
profilestring0..1The [StructureDefinition](structuredefinition.html) is provided directly as part of the request. Servers may choose not to accept profiles in this fashion
urlcanonical0..1The StructureDefinition's official URL (i.e. 'StructureDefinition.url'). The server must know the StructureDefinition or be able to retrieve it from other known repositories.
supportedOnlyboolean0..1If true, the questionnaire will only include those elements marked as "mustSupport='true'" in the StructureDefinition.

Output Parameters (1)

NameTypeCard.Description
returnQuestionnaire1..1The questionnaire form generated based on the StructureDefinition.

Additional Information

Version
4.3.0
Date
2022-05-28T12:47:40+10:00