http://hl7.org/fhir/StructureDefinition/Questionnaire|4.0.1

A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection.
description: A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection.
derivation: specialization
name: Questionnaire
type: Questionnaire
elements:
  description: {short: Natural language description of the questionnaire, index: 12}
  subjectType:
    short: Resource that can be subject of QuestionnaireResponse
    array: true
    binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/resource-types|4.0.1'}
    isSummary: true
    index: 8
  date: {short: Date last changed, isSummary: true, index: 9}
  publisher: {short: Name of the publisher (organization or individual), isSummary: true, index: 10}
  approvalDate: {short: When the questionnaire was approved by publisher, index: 17}
  jurisdiction:
    short: Intended jurisdiction for questionnaire (if applicable)
    array: true
    binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/ValueSet/jurisdiction'}
    isSummary: true
    index: 14
  derivedFrom: {short: Instantiates protocol or definition, array: true, index: 5}
  purpose: {short: Why this questionnaire is defined, index: 15}
  name: {short: Name for this questionnaire (computer friendly), isSummary: true, index: 3}
  item:
    constraint:
      que-6: {human: Required and repeat aren't permitted for display items, severity: error, expression: type!='display' or (required.empty() and repeats.empty())}
      que-3: {human: Display items cannot have a "code" asserted, severity: error, expression: type!='display' or code.empty()}
      que-4: {human: A question cannot have both answerOption and answerValueSet, severity: error, expression: answerOption.empty() or answerValueSet.empty()}
      que-8: {human: Initial values can't be specified for groups or display items, severity: error, expression: (type!='group' and type!='display') or initial.empty()}
      que-13: {human: Can only have multiple initial values for repeating items, severity: error, expression: repeats=true or initial.count() <= 1}
      que-12: {human: 'If there are more than one enableWhen, enableBehavior must be specified', severity: error, expression: enableWhen.count() > 2 implies enableBehavior.exists()}
      que-11: {human: 'If one or more answerOption is present, initial[x] must be missing', severity: error, expression: answerOption.empty() or initial.empty()}
      que-9: {human: Read-only can't be specified for "display" items, severity: error, expression: type!='display' or readOnly.empty()}
      que-1: {human: 'Group items must have nested items, display items cannot have nested items', severity: error, expression: (type='group' implies item.empty().not()) and (type.trace('type')='display' implies item.trace('item').empty())}
      que-10: {human: Maximum length can only be declared for simple question types, severity: error, expression: (type in ('boolean' | 'decimal' | 'integer' | 'string' | 'text' | 'url' | 'open-choice')) or maxLength.empty()}
      que-5: {human: Only 'choice' and 'open-choice' items can have answerValueSet, severity: error, expression: (type ='choice' or type = 'open-choice' or type = 'decimal' or type = 'integer' or type = 'date' or type = 'dateTime' or type = 'time' or type = 'string' or type = 'quantity') or (answerValueSet.empty() and answerOption.empty())}
    short: Questions and sections within the Questionnaire
    array: true
    index: 21
    elements:
      enableBehavior:
        short: all | any
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/questionnaire-enable-behavior|4.0.1'}
        index: 33
      definition: {short: ElementDefinition - details for the item, index: 23}
      linkId: {short: Unique id for item in questionnaire, index: 22}
      repeats: {short: Whether the item may repeat, meaningWhenMissing: Items are generally assumed not to repeat unless explicitly specified. Systems SHOULD always populate this value, index: 35}
      item:
        elementReference: ['http://hl7.org/fhir/StructureDefinition/Questionnaire', elements, item]
        short: Nested questionnaire items
        array: true
        index: 46
      type:
        short: group | display | boolean | decimal | integer | date | dateTime +
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/item-type|4.0.1'}
        index: 27
      enableWhen:
        constraint:
          que-7: {human: 'If the operator is ''exists'', the value must be a boolean', severity: error, expression: operator = 'exists' implies (answer is Boolean)}
        isModifier: true
        short: Only allow data when
        array: true
        isModifierReason: If enableWhen is present and the condition evaluates to false, then the Questionnaire behaves as though the elements weren't actually present
        index: 28
        elements:
          question: {short: Question that determines whether item is enabled, index: 29}
          operator:
            short: exists | = | != | > | < | >= | <=
            binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/questionnaire-enable-operator|4.0.1'}
            index: 30
          answer:
            short: Value for question comparison based on operator
            choices: []
            index: 32
        required: [operator, question, answer]
      answerOption:
        short: Permitted answer
        array: true
        index: 39
        elements:
          value:
            short: Answer value
            choices: []
            index: 41
          initialSelected: {short: Whether option is selected by default, meaningWhenMissing: Only selected items explicitly marked to be selected, index: 42}
        required: [value]
      prefix: {short: 'E.g. \"1(a)\", \"2.5.3\"', index: 25}
      readOnly: {short: Don't allow human editing, index: 36}
      answerValueSet: {short: Valueset containing permitted answers, index: 38}
      code:
        short: Corresponding concept for this item in a terminology
        array: true
        binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/questionnaire-questions'}
        index: 24
      initial:
        short: Initial value(s) when item is first rendered
        array: true
        index: 43
        elements:
          value:
            short: Actual value for initializing the question
            choices: []
            index: 45
        required: [value]
      maxLength: {short: No more than this many characters, index: 37}
      required: {short: Whether the item must be included in data results, meaningWhenMissing: Items are generally assumed not to be required unless explicitly specified. Systems SHOULD always populate this value, index: 34}
      text: {short: Primary text for the item, index: 26}
    required: [type, linkId]
  useContext: {short: The context that the content is intended to support, array: true, isSummary: true, index: 13}
  copyright: {short: Use and/or publishing restrictions, index: 16}
  experimental: {short: 'For testing purposes, not real usage', isSummary: true, index: 7}
  title: {short: Name for this questionnaire (human friendly), isSummary: true, index: 4}
  status:
    isModifier: true
    short: draft | active | retired | unknown
    binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/publication-status|4.0.1'}
    isModifierReason: This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration
    isSummary: true
    index: 6
  url: {short: 'Canonical identifier for this questionnaire, represented as a URI (globally unique)', isSummary: true, index: 0}
  code:
    short: Concept that represents the overall questionnaire
    array: true
    binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/questionnaire-questions'}
    isSummary: true
    index: 20
  identifier: {short: Additional identifier for the questionnaire, array: true, isSummary: true, index: 1}
  lastReviewDate: {short: When the questionnaire was last reviewed, index: 18}
  version: {short: Business version of the questionnaire, isSummary: true, index: 2}
  contact: {short: Contact details for the publisher, array: true, isSummary: true, index: 11}
  effectivePeriod: {short: When the questionnaire is expected to be used, isSummary: true, index: 19}
class: resource
kind: resource
url: http://hl7.org/fhir/StructureDefinition/Questionnaire
base: http://hl7.org/fhir/StructureDefinition/DomainResource
version: 4.0.1
required: [status]