This page is part of the FHIR Specification (v0.0.82: DSTU 1). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2

Operation-structuredefinition-questionnaire.xml

Raw XML (canonical form)

Operation Definition

Raw XML

<OperationDefinition xmlns="http://hl7.org/fhir">
  <id value="StructureDefinition-questionnaire"/>
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml"><!-- Snipped for brevity --></div>
  </text>
  <url value="http://hl7.org/fhir/OperationDefinition/StructureDefinition-questionnaire"/>
  <name value="Build Questionnaire"/>
  <publisher value="HL7 (FHIR Project)"/>
  <contact>
    <telecom>
      <system value="url"/>
      <value value="http://hl7.org/fhir"/>
    </telecom>
    <telecom>
      <system value="email"/>
      <value value="fhir@lists.hl7.org"/>
    </telecom>
  </contact>
  <description value="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 called at the instance level, these parameters
   will be ignored.  If more than one is specified, servers may raise an error or may resolve
   with the parameter of their choice.)  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 &quot;must support&quot; 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 &quot;non-core&quot; resources with minimal development effort."/>
  <status value="draft"/>
  <date value="2015-03-27T00:13:00+11:00"/>
  <kind value="operation"/>
  <code value="questionnaire"/>
  <notes value="**Open Issue**: Ideally, extensions should be populated in the generated [[[Questionnaire]]]
   that will support taking [[[QuestionnaireAnswers]]] resources generated from the Questionnaire
   and turning them back into the appropriate resources."/>
  <system value="false"/>
  <type value="StructureDefinition"/>
  <instance value="true"/>
  <parameter>
    <name value="identifier"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation value="A logical profile identifier (i.e. 'StructureDefinition.identifier''). The server must
     know the profile or be able to retrieve it from other known repositories."/>
    <type value="uri"/>
  </parameter>
  <parameter>
    <name value="profile"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation value="The [[[StructureDefinition]]] is provided directly as part of the request. Servers may
     choose not to accept profiles in this fashion"/>
    <type value="token"/>
  </parameter>
  <parameter>
    <name value="url"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation value="The profile's official url (i.e. 'StructureDefinition.url'). The server must know the
     profile or be able to retrieve it from other known repositories."/>
    <type value="uri"/>
  </parameter>
  <parameter>
    <name value="supportedOnly"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation value="If true, the questionnaire will only include those elements marked as &quot;mustSupport='true'&quot;
     in the StructureDefinition."/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="return"/>
    <use value="out"/>
    <min value="1"/>
    <max value="1"/>
    <documentation value="The questionnaire form generated based on the StructureDefinition."/>
    <type value="Questionnaire"/>
  </parameter>
</OperationDefinition>

Usage note: every effort has been made to ensure that the examples are correct and useful, but they are not a normative part of the specification.