DRAFT - The specification is currently in development and subject to significant change. It is not ready for limited roll-out or production level use.

Questionnaire (CA:eReC)

Structure Definition: Questionnaire Profile

Canonical URL: https://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Questionnaire

Simplifier project page: Questionnaire

Derived from: Questionnaire (R4)

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
urlΣ0..1uri
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ0..1uri
valueS Σ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
versionΣ0..1string
nameΣ I0..1string
titleΣ0..1string
derivedFrom0..*canonical(Questionnaire)
statusΣ ?!1..1codeBinding
experimentalΣ0..1boolean
subjectTypeΣ0..*codeBinding
dateS Σ1..1dateTime
publisherΣ0..1string
contactΣ0..*ContactDetail
description0..1markdown
useContextΣ0..*UsageContext
jurisdictionΣ0..*CodeableConceptBinding
purpose0..1markdown
copyright0..1markdown
approvalDate0..1date
lastReviewDate0..1date
effectivePeriodΣ I0..1Period
codeΣ0..*Coding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
linkIdS1..1string
definition0..1uri
codeI0..*Coding
prefix0..1string
textS0..1string
typeS1..1codeBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
question1..1string
operator1..1codeBinding
answerBooleanboolean
answerDecimaldecimal
answerIntegerinteger
answerDatedate
answerDateTimedateTime
answerTimetime
answerStringstring
answerCodingCoding
answerQuantityQuantity
answerReferenceReference(Resource)
enableBehaviorI0..1codeBinding
requiredI0..1boolean
repeatsI0..1boolean
readOnlyI0..1boolean
maxLengthI0..1integer
answerValueSetI0..1canonical(ValueSet)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
valueIntegerinteger
valueDatedate
valueTimetime
valueStringstring
valueCodingCoding
valueReferenceReference(Resource)
initialSelected0..1boolean
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
valueBooleanboolean
valueDecimaldecimal
valueIntegerinteger
valueDatedate
valueDateTimedateTime
valueTimetime
valueStringstring
valueUriuri
valueAttachmentAttachment
valueCodingCoding
valueQuantityQuantity
valueReferenceReference(Resource)
itemI0..*see (item)
idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
urlΣ0..1uri
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ0..1uri
valueS Σ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
versionΣ0..1string
nameΣ I0..1string
titleΣ0..1string
derivedFrom0..*canonical(Questionnaire)
statusΣ ?!1..1codeBinding
experimentalΣ0..1boolean
subjectTypeΣ0..*codeBinding
dateS Σ1..1dateTime
publisherΣ0..1string
contactΣ0..*ContactDetail
description0..1markdown
useContextΣ0..*UsageContext
jurisdictionΣ0..*CodeableConceptBinding
purpose0..1markdown
copyright0..1markdown
approvalDate0..1date
lastReviewDate0..1date
effectivePeriodΣ I0..1Period
codeΣ0..*Coding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
linkIdS1..1string
definition0..1uri
codeI0..*Coding
prefix0..1string
textS0..1string
typeS1..1codeBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
question1..1string
operator1..1codeBinding
answerBooleanboolean
answerDecimaldecimal
answerIntegerinteger
answerDatedate
answerDateTimedateTime
answerTimetime
answerStringstring
answerCodingCoding
answerQuantityQuantity
answerReferenceReference(Resource)
enableBehaviorI0..1codeBinding
requiredI0..1boolean
repeatsI0..1boolean
readOnlyI0..1boolean
maxLengthI0..1integer
answerValueSetI0..1canonical(ValueSet)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
valueIntegerinteger
valueDatedate
valueTimetime
valueStringstring
valueCodingCoding
valueReferenceReference(Resource)
initialSelected0..1boolean
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
valueBooleanboolean
valueDecimaldecimal
valueIntegerinteger
valueDatedate
valueDateTimedateTime
valueTimetime
valueStringstring
valueUriuri
valueAttachmentAttachment
valueCodingCoding
valueQuantityQuantity
valueReferenceReference(Resource)
itemI0..*see (item)
idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
urlΣ0..1uri
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ0..1uri
valueS Σ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
versionΣ0..1string
nameΣ I0..1string
titleΣ0..1string
derivedFrom0..*canonical(Questionnaire)
statusΣ ?!1..1codeBinding
experimentalΣ0..1boolean
subjectTypeΣ0..*codeBinding
dateS Σ1..1dateTime
publisherΣ0..1string
contactΣ0..*ContactDetail
description0..1markdown
useContextΣ0..*UsageContext
jurisdictionΣ0..*CodeableConceptBinding
purpose0..1markdown
copyright0..1markdown
approvalDate0..1date
lastReviewDate0..1date
effectivePeriodΣ I0..1Period
codeΣ0..*Coding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
linkIdS1..1string
definition0..1uri
codeI0..*Coding
prefix0..1string
textS0..1string
typeS1..1codeBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
question1..1string
operator1..1codeBinding
answerBooleanboolean
answerDecimaldecimal
answerIntegerinteger
answerDatedate
answerDateTimedateTime
answerTimetime
answerStringstring
answerCodingCoding
answerQuantityQuantity
answerReferenceReference(Resource)
enableBehaviorI0..1codeBinding
requiredI0..1boolean
repeatsI0..1boolean
readOnlyI0..1boolean
maxLengthI0..1integer
answerValueSetI0..1canonical(ValueSet)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
valueIntegerinteger
valueDatedate
valueTimetime
valueStringstring
valueCodingCoding
valueReferenceReference(Resource)
initialSelected0..1boolean
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
valueBooleanboolean
valueDecimaldecimal
valueIntegerinteger
valueDatedate
valueDateTimedateTime
valueTimetime
valueStringstring
valueUriuri
valueAttachmentAttachment
valueCodingCoding
valueQuantityQuantity
valueReferenceReference(Resource)
itemI0..*see (item)
Questionnaire..
Questionnaire.meta..
Questionnaire.identifier..
Questionnaire.identifier.system..
Questionnaire.identifier.value..
Questionnaire.date1..
Questionnaire.item..
Questionnaire.item.linkId..
Questionnaire.item.text..
Questionnaire.item.type..
Questionnaire.item.answerOption..

{
    "resourceType": "StructureDefinition",
    "id": "Questionnaire",
    "url": "https://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Questionnaire",
    "version": "0.1.0",
    "name": "Questionnaire",
    "status": "draft",
    "fhirVersion": "4.0.1",
    "kind": "resource",
    "abstract": false,
    "type": "Questionnaire",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Questionnaire",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "Questionnaire.meta",
                "path": "Questionnaire.meta",
                "comment": "The MustSupport flag on this element has been relaxed in this version until further confirmation of the use of meta.profile (outside of use for certain validation suites) and impact can be assessed by the working group."
            },
            {
                "id": "Questionnaire.identifier",
                "path": "Questionnaire.identifier",
                "mustSupport": true
            },
            {
                "id": "Questionnaire.identifier.system",
                "path": "Questionnaire.identifier.system",
                "mustSupport": true
            },
            {
                "id": "Questionnaire.identifier.value",
                "path": "Questionnaire.identifier.value",
                "mustSupport": true
            },
            {
                "id": "Questionnaire.date",
                "path": "Questionnaire.date",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Questionnaire.item",
                "path": "Questionnaire.item",
                "mustSupport": true
            },
            {
                "id": "Questionnaire.item.linkId",
                "path": "Questionnaire.item.linkId",
                "mustSupport": true
            },
            {
                "id": "Questionnaire.item.text",
                "path": "Questionnaire.item.text",
                "mustSupport": true
            },
            {
                "id": "Questionnaire.item.type",
                "path": "Questionnaire.item.type",
                "mustSupport": true
            },
            {
                "id": "Questionnaire.item.answerOption",
                "path": "Questionnaire.item.answerOption",
                "mustSupport": true
            }
        ]
    }
}

Usage

A structured set of questions intended to guide the collection of answers from end-users.

.id

  • used to uniquely identify the resource
  • if a persistent identity for the resource is not available to use when constructing a message Bundle for transmission via Direct Messaging, a UUID SHOULD be used in this element (with a corresponding value in Bundle.entry.fullUrl)

.date

  • SHALL be populated with the date and time the questionnaire was last updated

.item

  • .linkId SHALL be populated with unique identifier for the question being asked that links to the equivalent item in a QuestionnaireResponse resource
  • .text SHOULD contain the text version of the question
  • .type SHALL contain the type of questionnaire item
  • .answerOption SHOULD contain the permitted response to a question