FHIR © HL7.org  |  Server Home  |  Health Intersections FHIR Server v1.0.288  |  FHIR Version 1.0.2  | User: ANONYMOUS (Unknown)  

Resource "StructureDefinition-questionnaire" Version "1" (OperationDefinition)

Tags:

XML or JSON representation . provenance for this resource

Build Questionnaire

OPERATION: Build Questionnaire

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.

URL: [base]/StructureDefinition/$questionnaire

URL: [base]/StructureDefinition/[id]/$questionnaire

Parameters

Use Name Cardinality Type Binding Documentation
IN identifier 0..1 uri

A logical profile identifier (i.e. 'StructureDefinition.identifier''). The server must know the profile or be able to retrieve it from other known repositories.

IN profile 0..1 token

The StructureDefinition is provided directly as part of the request. Servers may choose not to accept profiles in this fashion

IN url 0..1 uri

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.

IN supportedOnly 0..1 boolean

If true, the questionnaire will only include those elements marked as "mustSupport='true'" in the StructureDefinition.

OUT return 1..1 Questionnaire

The questionnaire form generated based on the StructureDefinition.

Open Issue: Ideally, extensions should be populated in the generated Questionnaire that will support taking QuestionnaireResponse resources generated from the Questionnaire and turning them back into the appropriate resources.


<?xml version="1.0" encoding="UTF-8"?>
<OperationDefinition xmlns="http://hl7.org/fhir">
  <id value="StructureDefinition-questionnaire"/>
  <meta>
    <versionId value="1"/>
    <lastUpdated value="2018-09-06T12:32:37.031Z"/>
  </meta>
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">
      <h2>Build Questionnaire</h2>
      <p>OPERATION: Build Questionnaire</p>
      <div>
        <p>Generates a
          <a href="questionnaire.html">Questionnaire</a>instance based on a specified
          <a href="structuredefinition.html">StructureDefinition</a>, creating questions for each core element or extension element found in the
          <a href="structuredefinition.html">StructureDefinition</a>. If the operation is not called at the instance level, one of the
          <em>identifier</em>,
          <em>profile</em>or
          <em>url</em>'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
          <a href="questionnaire.html">Questionnaire</a>instance based on the specified
          <a href="structuredefinition.html">StructureDefinition</a>and/or an
          <a href="operationoutcome.html">OperationOutcome</a>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. </p> </div>
      <p>URL: [base]/StructureDefinition/$questionnaire</p>
      <p>URL: [base]/StructureDefinition/[id]/$questionnaire</p>
      <p>Parameters</p>
      <table class="grid">
        <tr>
          <td>
            <b>Use</b> </td>
          <td>
            <b>Name</b> </td>
          <td>
            <b>Cardinality</b> </td>
          <td>
            <b>Type</b> </td>
          <td>
            <b>Binding</b> </td>
          <td>
            <b>Documentation</b> </td> </tr>
        <tr>
          <td>IN</td>
          <td>identifier</td>
          <td>0..1</td>
          <td>uri</td>
          <td/>
          <td>
            <div>
              <p>A logical profile identifier (i.e. 'StructureDefinition.identifier''). The server must know the profile or be able to retrieve it from other known repositories.</p> </div> </td> </tr>
        <tr>
          <td>IN</td>
          <td>profile</td>
          <td>0..1</td>
          <td>token</td>
          <td/>
          <td>
            <div>
              <p>The
                <a href="structuredefinition.html">StructureDefinition</a>is provided directly as part of the request. Servers may choose not to accept profiles in this fashion </p> </div> </td> </tr>
        <tr>
          <td>IN</td>
          <td>url</td>
          <td>0..1</td>
          <td>uri</td>
          <td/>
          <td>
            <div>
              <p>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.</p> </div> </td> </tr>
        <tr>
          <td>IN</td>
          <td>supportedOnly</td>
          <td>0..1</td>
          <td>boolean</td>
          <td/>
          <td>
            <div>
              <p>If true, the questionnaire will only include those elements marked as "mustSupport='true'" in the StructureDefinition.</p> </div> </td> </tr>
        <tr>
          <td>OUT</td>
          <td>return</td>
          <td>1..1</td>
          <td>Questionnaire</td>
          <td/>
          <td>
            <div>
              <p>The questionnaire form generated based on the StructureDefinition.</p> </div> </td> </tr> </table>
      <div>
        <p>
          <strong>Open Issue</strong>: Ideally, extensions should be populated in the generated
          <a href="questionnaire.html">Questionnaire</a>that will support taking
          <a href="questionnaireresponse.html">QuestionnaireResponse</a>resources generated from the Questionnaire and turning them back into the appropriate resources. </p> </div> </div>
  </text>
  <url value="http://hl7.org/fhir/OperationDefinition/StructureDefinition-questionnaire"/>
  <name value="Build Questionnaire"/>
  <status value="draft"/>
  <kind value="operation"/>
  <publisher value="HL7 (FHIR Project)"/>
  <contact>
    <telecom>
      <system value="other"/>
      <value value="http://hl7.org/fhir"/>
    </telecom>
    <telecom>
      <system value="email"/>
      <value value="fhir@lists.hl7.org"/>
    </telecom>
  </contact>
  <date value="2015-10-24T07:41:03+11:00"/>
  <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* &apos;in&apos; 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 &apos;supportedOnly&apos; 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 &apos;questionnaire&apos; 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."/>
  <code value="questionnaire"/>
  <notes value="**Open Issue**: Ideally, extensions should be populated in the generated [[[Questionnaire]]] that will support taking [[[QuestionnaireResponse]]] 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. &apos;StructureDefinition.identifier&apos;&apos;). 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&apos;s official URL (i.e. &apos;StructureDefinition.url&apos;). 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=&apos;true&apos;&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>