1.0.0 - release

CambioOpenServicesIG - Local Development build (v1.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: QuestionnaireSe

Official URL: https://fhir.cambio.se/StructureDefinition/QuestionnaireSe Version: 1.2.0
Active as of 2025-09-09 Computable Name: QuestionnaireSe

Introduction

QuestionnaireSe is created from the FHIR resource Questionnaire. The Questionnaire resource is tightly coupled with the QuestionnaireResponse resource, where the Questionnaire resource holds the logic that the QuestionnaireResponse resource should follow.

Intended Use

QuestionnaireSe is used to fetch Questionnaires (Medical record templates) from COSMIC. The retrieved Questionnaires should be used for filling a QuestionnaireResponse which can be sent back to COSMIC.

Questionnaires can be retrieved both for when a healthcare professional will be the author, or when a patient will be the author.

Must Support

The MustSupport-flag indicates which attributes are supported by Cambio, meaning that those can be returned as part of the questionnaire.

Specific Rules and Limitations

Type Description
Rule It is mandatory to provide one or several codings to be able to retrieve any Questionnaires through the API.
Rule Only when the item.type is 'quantity' is it possible to include the unit in the extension 'quantityUnit'.
Rule If your integrations is with COSMIC, then it is only possible to include the unit in the extension 'quantityUnit if COSMIC keywords are configured with UCUM codes in the journal note templates.
Rule Only when the item.type is 'reference' is it possible to include the referenced resource type in the extension referenceResource'.

Versions

COS version Profile version Required COSMIC version Date Description
2.4.0 1.0.0 R8.3.04 Feb 2022 Initial version, support for GET.
4.14.0 1.1.0 R8.3.04 Sep 2025 Added extensions quantityUnit and referenceResource.
4.15.0 1.2.0 R8.3.04 Oct 2025 Added extension allowComment.

APIs & Supported Operations

HTTP Method Description
GET GET Questionnaire by id.

Supported Queries

  1. GET [baseURL]/Questionnaire/[id]

Error Codes

In the table below, a few error messages specific for Questionnaire are listed.

Code Description
400 Codes should be valid Tokens with system and value
404 Questionnaire not found for the codes

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Questionnaire C 0..* QuestionnaireCore A structured set of questions
Constraints: que-0, que-2
... meta Σ 0..1 Meta Metadata about the resource
.... profile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... version SΣ 0..1 string Business version of the questionnaire
... title SΣ 1..1 string Name for this questionnaire (human friendly)
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
Fixed Value: active
... description S 0..1 markdown Natural language description of the questionnaire
... Slices for useContext SΣ 2..2 UsageContext The context that the content is intended to support
Slice: Unordered, Closed by value:code
.... useContext:PatientQuestionnaire SΣ 0..1 UsageContext The context that the content is intended to support
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: user
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
...... coding SΣ 0..* Coding Code defined by a terminology system
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: 116154003
.... useContext:PractitionerQuestionnaire SΣ 0..1 UsageContext The context that the content is intended to support
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: user
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
...... coding SΣ 0..* Coding Code defined by a terminology system
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: 223366009
.... useContext:QuestionnaireContext SΣ 1..1 UsageContext The context that the content is intended to support
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: https://cambio.codes/cs/usage-context-types
...... code SΣ 0..1 code Symbol in syntax defined by the system
Fixed Value: cc
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
... code SΣ 1..* Coding Concept that represents the overall questionnaire
Binding: QuestionnaireQuestionCodes (example): Codes for questionnaires, groups and individual questions.
.... system SΣ 1..1 uri Identity of the terminology system
.... code SΣ 1..1 code Symbol in syntax defined by the system
... item SC 0..* BackboneElement Questions and sections within the Questionnaire
Constraints: que-1, que-3, que-4, que-5, que-6, que-8, que-9, que-10, que-11, que-12, que-13
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:unitOption S 0..1 (Complex) Unit choice
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-unitOption
...... extension 0..0
...... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/questionnaire-unitOption"
...... value[x] 1..1 Coding Value of extension
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://unitsofmeasure.org
....... code SΣ 1..1 code Symbol in syntax defined by the system
..... extension:referenceResource S 0..* code Allowed resource for reference
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-referenceResource
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
..... extension:allowComment S 0..1 boolean Indicates if comments are allowed for the question.
URL: https://fhir.cambio.se/StructureDefinition/questionnaire-allowComment
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... linkId 1..1 string Unique id for item in questionnaire
.... code SC 0..* Coding Corresponding concept for this item in a terminology
Binding: QuestionnaireQuestionCodes (example): Codes for questionnaires, groups and individual questions.
..... system SΣ 1..1 uri Identity of the terminology system
..... code SΣ 1..1 code Symbol in syntax defined by the system
.... text S 1..1 string Primary text for the item
.... type 1..1 code group | display | boolean | decimal | integer | date | dateTime +
Binding: QuestionnaireItemType (required): Distinguishes groups from questions and display text and indicates data type for questions.
.... enableWhen ?!C 0..* BackboneElement Only allow data when
Constraints: que-7
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... question 1..1 string Question that determines whether item is enabled
..... operator 1..1 code exists | = | != | > | < | >= | <=
Binding: QuestionnaireItemOperator (required): The criteria by which a question is enabled.
..... answer[x] C 1..1 Value for question comparison based on operator
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
...... answerBoolean boolean
...... answerDecimal decimal
...... answerInteger integer
...... answerDate date
...... answerDateTime dateTime
...... answerTime time
...... answerString string
...... answerCoding Coding
...... answerQuantity Quantity
...... answerReference Reference(Resource)
.... answerValueSet C 0..1 canonical(ValueSet) Valueset containing permitted answers
.... answerOption SC 0..* BackboneElement Permitted answer
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... value[x] S 1..1 Coding Answer value
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
.... initial C 0..* BackboneElement Initial value(s) when item is first rendered
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... value[x] 1..1 Actual value for initializing the question
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
...... valueBoolean boolean
...... valueDecimal decimal
...... valueInteger integer
...... valueDate date
...... valueDateTime dateTime
...... valueTime time
...... valueString string
...... valueUri uri
...... valueAttachment Attachment
...... valueCoding Coding
...... valueQuantity Quantity
...... valueReference Reference(Resource)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Questionnaire.statusrequiredFixed Value: active
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
From the FHIR Standard
Questionnaire.useContext:PatientQuestionnaire.codeextensibleFixed Value: user
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:PatientQuestionnaire.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.useContext:PractitionerQuestionnaire.codeextensibleFixed Value: user
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:PractitionerQuestionnaire.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.useContext:QuestionnaireContext.codeextensibleFixed Value: cc
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:QuestionnaireContext.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.codeexampleQuestionnaireQuestionCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/questionnaire-questions
From the FHIR Standard
Questionnaire.item.codeexampleQuestionnaireQuestionCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/questionnaire-questions
From the FHIR Standard
Questionnaire.item.typerequiredQuestionnaireItemType
http://hl7.org/fhir/ValueSet/item-type|4.0.1
From the FHIR Standard
Questionnaire.item.enableWhen.operatorrequiredQuestionnaireItemOperator
http://hl7.org/fhir/ValueSet/questionnaire-enable-operator|4.0.1
From the FHIR Standard
Questionnaire.item.enableWhen.answer[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard
Questionnaire.item.answerOption.value[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard
Questionnaire.item.initial.value[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorQuestionnaireIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorQuestionnaireIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorQuestionnaireIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorQuestionnaireIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceQuestionnaireA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
que-0warningQuestionnaireName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
que-1errorQuestionnaire.itemGroup items must have nested items, display items cannot have nested items
: (type='group' implies item.empty().not()) and (type.trace('type')='display' implies item.trace('item').empty())
que-2errorQuestionnaireThe link ids for groups and questions must be unique within the questionnaire
: descendants().linkId.isDistinct()
que-3errorQuestionnaire.itemDisplay items cannot have a "code" asserted
: type!='display' or code.empty()
que-4errorQuestionnaire.itemA question cannot have both answerOption and answerValueSet
: answerOption.empty() or answerValueSet.empty()
que-5errorQuestionnaire.itemOnly 'choice' and 'open-choice' items can have answerValueSet
: (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())
que-6errorQuestionnaire.itemRequired and repeat aren't permitted for display items
: type!='display' or (required.empty() and repeats.empty())
que-7errorQuestionnaire.item.enableWhenIf the operator is 'exists', the value must be a boolean
: operator = 'exists' implies (answer is Boolean)
que-8errorQuestionnaire.itemInitial values can't be specified for groups or display items
: (type!='group' and type!='display') or initial.empty()
que-9errorQuestionnaire.itemRead-only can't be specified for "display" items
: type!='display' or readOnly.empty()
que-10errorQuestionnaire.itemMaximum length can only be declared for simple question types
: (type in ('boolean' | 'decimal' | 'integer' | 'string' | 'text' | 'url' | 'open-choice')) or maxLength.empty()
que-11errorQuestionnaire.itemIf one or more answerOption is present, initial[x] must be missing
: answerOption.empty() or initial.empty()
que-12errorQuestionnaire.itemIf there are more than one enableWhen, enableBehavior must be specified
: enableWhen.count() > 2 implies enableBehavior.exists()
que-13errorQuestionnaire.itemCan only have multiple initial values for repeating items
: repeats=true or initial.count() <= 1

This structure is derived from QuestionnaireCore

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Questionnaire QuestionnaireCore
... meta
.... profile S 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
... url S 1..1 uri Canonical identifier for this questionnaire, represented as a URI (globally unique)
... version S 0..1 string Business version of the questionnaire
... status S 1..1 code draft | active | retired | unknown
Fixed Value: active
... description S 0..1 markdown Natural language description of the questionnaire
... Slices for useContext S 2..2 UsageContext The context that the content is intended to support
Slice: Unordered, Closed by value:code
.... useContext:PatientQuestionnaire S 0..1 UsageContext The context that the content is intended to support
..... code S 1..1 Coding Type of context being specified
...... system S 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... code S 1..1 code Symbol in syntax defined by the system
Fixed Value: user
..... value[x] S 1..1 CodeableConcept Value that defines the context
...... coding S 0..* Coding Code defined by a terminology system
....... system S 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... code S 1..1 code Symbol in syntax defined by the system
Fixed Value: 116154003
.... useContext:PractitionerQuestionnaire S 0..1 UsageContext The context that the content is intended to support
..... code S 1..1 Coding Type of context being specified
...... system S 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... code S 1..1 code Symbol in syntax defined by the system
Fixed Value: user
..... value[x] S 1..1 CodeableConcept Value that defines the context
...... coding S 0..* Coding Code defined by a terminology system
....... system S 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... code S 1..1 code Symbol in syntax defined by the system
Fixed Value: 223366009
.... useContext:QuestionnaireContext S 1..1 UsageContext The context that the content is intended to support
..... code S 1..1 Coding Type of context being specified
...... system S 1..1 uri Identity of the terminology system
Fixed Value: https://cambio.codes/cs/usage-context-types
...... code S 0..1 code Symbol in syntax defined by the system
Fixed Value: cc
..... value[x] S 1..1 CodeableConcept Value that defines the context
... code S 1..* Coding Concept that represents the overall questionnaire
.... system S 1..1 uri Identity of the terminology system
.... code S 1..1 code Symbol in syntax defined by the system
... item S 0..* BackboneElement Questions and sections within the Questionnaire
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:unitOption S 0..1 (Complex) Unit choice
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-unitOption
...... value[x]
....... system S 1..1 uri Identity of the terminology system
Fixed Value: http://unitsofmeasure.org
....... code S 1..1 code Symbol in syntax defined by the system
..... extension:referenceResource S 0..* code Allowed resource for reference
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-referenceResource
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
..... extension:allowComment S 0..1 boolean Indicates if comments are allowed for the question.
URL: https://fhir.cambio.se/StructureDefinition/questionnaire-allowComment
.... code S 0..* Coding Corresponding concept for this item in a terminology
..... system S 1..1 uri Identity of the terminology system
..... code S 1..1 code Symbol in syntax defined by the system
.... text S 1..1 string Primary text for the item
.... answerOption S 0..* BackboneElement Permitted answer
..... value[x] S 1..1 Coding Answer value

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Questionnaire C 0..* QuestionnaireCore A structured set of questions
Constraints: que-0, que-2
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated Σ 0..1 instant When the resource version last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... url SΣ 1..1 uri Canonical identifier for this questionnaire, represented as a URI (globally unique)
... identifier Σ 0..* Identifier Additional identifier for the questionnaire
... version SΣ 0..1 string Business version of the questionnaire
... name ΣC 0..1 string Name for this questionnaire (computer friendly)
... title SΣ 1..1 string Name for this questionnaire (human friendly)
... derivedFrom 0..* canonical(Questionnaire) Instantiates protocol or definition
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
Fixed Value: active
... subjectType Σ 0..* code Resource that can be subject of QuestionnaireResponse
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
... date Σ 0..1 dateTime Date last changed
... publisher Σ 0..1 string Name of the publisher (organization or individual)
... contact Σ 0..* ContactDetail Contact details for the publisher
... description S 0..1 markdown Natural language description of the questionnaire
... Slices for useContext SΣ 2..2 UsageContext The context that the content is intended to support
Slice: Unordered, Closed by value:code
.... useContext:PatientQuestionnaire SΣ 0..1 UsageContext The context that the content is intended to support
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... version Σ 0..1 string Version of the system - if relevant
...... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: user
...... display Σ 0..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding SΣ 0..* Coding Code defined by a terminology system
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: 116154003
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... text Σ 0..1 string Plain text representation of the concept
.... useContext:PractitionerQuestionnaire SΣ 0..1 UsageContext The context that the content is intended to support
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... version Σ 0..1 string Version of the system - if relevant
...... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: user
...... display Σ 0..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding SΣ 0..* Coding Code defined by a terminology system
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: 223366009
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... text Σ 0..1 string Plain text representation of the concept
.... useContext:QuestionnaireContext SΣ 1..1 UsageContext The context that the content is intended to support
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: https://cambio.codes/cs/usage-context-types
...... version Σ 0..1 string Version of the system - if relevant
...... code SΣ 0..1 code Symbol in syntax defined by the system
Fixed Value: cc
...... display Σ 0..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
... approvalDate 0..1 date When the questionnaire was approved by publisher
... lastReviewDate 0..1 date When the questionnaire was last reviewed
... effectivePeriod Σ 0..1 Period When the questionnaire is expected to be used
... code SΣ 1..* Coding Concept that represents the overall questionnaire
Binding: QuestionnaireQuestionCodes (example): Codes for questionnaires, groups and individual questions.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... system SΣ 1..1 uri Identity of the terminology system
.... version Σ 0..1 string Version of the system - if relevant
.... code SΣ 1..1 code Symbol in syntax defined by the system
.... display Σ 0..1 string Representation defined by the system
.... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
... item SC 0..* BackboneElement Questions and sections within the Questionnaire
Constraints: que-1, que-3, que-4, que-5, que-6, que-8, que-9, que-10, que-11, que-12, que-13
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:unitOption S 0..1 (Complex) Unit choice
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-unitOption
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..0
...... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/questionnaire-unitOption"
...... value[x] 1..1 Coding Value of extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://unitsofmeasure.org
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 1..1 code Symbol in syntax defined by the system
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... extension:referenceResource S 0..* code Allowed resource for reference
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-referenceResource
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
..... extension:allowComment S 0..1 boolean Indicates if comments are allowed for the question.
URL: https://fhir.cambio.se/StructureDefinition/questionnaire-allowComment
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... linkId 1..1 string Unique id for item in questionnaire
.... definition 0..1 uri ElementDefinition - details for the item
.... code SC 0..* Coding Corresponding concept for this item in a terminology
Binding: QuestionnaireQuestionCodes (example): Codes for questionnaires, groups and individual questions.
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system SΣ 1..1 uri Identity of the terminology system
..... version Σ 0..1 string Version of the system - if relevant
..... code SΣ 1..1 code Symbol in syntax defined by the system
..... display Σ 0..1 string Representation defined by the system
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... prefix 0..1 string E.g. "1(a)", "2.5.3"
.... text S 1..1 string Primary text for the item
.... type 1..1 code group | display | boolean | decimal | integer | date | dateTime +
Binding: QuestionnaireItemType (required): Distinguishes groups from questions and display text and indicates data type for questions.
.... enableWhen ?!C 0..* BackboneElement Only allow data when
Constraints: que-7
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... question 1..1 string Question that determines whether item is enabled
..... operator 1..1 code exists | = | != | > | < | >= | <=
Binding: QuestionnaireItemOperator (required): The criteria by which a question is enabled.
..... answer[x] C 1..1 Value for question comparison based on operator
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
...... answerBoolean boolean
...... answerDecimal decimal
...... answerInteger integer
...... answerDate date
...... answerDateTime dateTime
...... answerTime time
...... answerString string
...... answerCoding Coding
...... answerQuantity Quantity
...... answerReference Reference(Resource)
.... enableBehavior C 0..1 code all | any
Binding: EnableWhenBehavior (required): Controls how multiple enableWhen values are interpreted - whether all or any must be true.
.... required C 0..1 boolean Whether the item must be included in data results
.... repeats C 0..1 boolean Whether the item may repeat
.... readOnly C 0..1 boolean Don't allow human editing
.... maxLength C 0..1 integer No more than this many characters
.... answerValueSet C 0..1 canonical(ValueSet) Valueset containing permitted answers
.... answerOption SC 0..* BackboneElement Permitted answer
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... value[x] S 1..1 Coding Answer value
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
..... initialSelected 0..1 boolean Whether option is selected by default
.... initial C 0..* BackboneElement Initial value(s) when item is first rendered
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... value[x] 1..1 Actual value for initializing the question
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
...... valueBoolean boolean
...... valueDecimal decimal
...... valueInteger integer
...... valueDate date
...... valueDateTime dateTime
...... valueTime time
...... valueString string
...... valueUri uri
...... valueAttachment Attachment
...... valueCoding Coding
...... valueQuantity Quantity
...... valueReference Reference(Resource)
.... item C 0..* See item (Questionnaire) Nested questionnaire items

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Questionnaire.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
From the FHIR Standard
Questionnaire.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
From the FHIR Standard
Questionnaire.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Questionnaire.statusrequiredFixed Value: active
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
From the FHIR Standard
Questionnaire.subjectTyperequiredResourceType
http://hl7.org/fhir/ValueSet/resource-types|4.0.1
From the FHIR Standard
Questionnaire.useContext:PatientQuestionnaire.codeextensibleFixed Value: user
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:PatientQuestionnaire.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.useContext:PractitionerQuestionnaire.codeextensibleFixed Value: user
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:PractitionerQuestionnaire.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.useContext:QuestionnaireContext.codeextensibleFixed Value: cc
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:QuestionnaireContext.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.codeexampleQuestionnaireQuestionCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/questionnaire-questions
From the FHIR Standard
Questionnaire.item.codeexampleQuestionnaireQuestionCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/questionnaire-questions
From the FHIR Standard
Questionnaire.item.typerequiredQuestionnaireItemType
http://hl7.org/fhir/ValueSet/item-type|4.0.1
From the FHIR Standard
Questionnaire.item.enableWhen.operatorrequiredQuestionnaireItemOperator
http://hl7.org/fhir/ValueSet/questionnaire-enable-operator|4.0.1
From the FHIR Standard
Questionnaire.item.enableWhen.answer[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard
Questionnaire.item.enableBehaviorrequiredEnableWhenBehavior
http://hl7.org/fhir/ValueSet/questionnaire-enable-behavior|4.0.1
From the FHIR Standard
Questionnaire.item.answerOption.value[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard
Questionnaire.item.initial.value[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorQuestionnaireIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorQuestionnaireIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorQuestionnaireIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorQuestionnaireIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceQuestionnaireA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
que-0warningQuestionnaireName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
que-1errorQuestionnaire.itemGroup items must have nested items, display items cannot have nested items
: (type='group' implies item.empty().not()) and (type.trace('type')='display' implies item.trace('item').empty())
que-2errorQuestionnaireThe link ids for groups and questions must be unique within the questionnaire
: descendants().linkId.isDistinct()
que-3errorQuestionnaire.itemDisplay items cannot have a "code" asserted
: type!='display' or code.empty()
que-4errorQuestionnaire.itemA question cannot have both answerOption and answerValueSet
: answerOption.empty() or answerValueSet.empty()
que-5errorQuestionnaire.itemOnly 'choice' and 'open-choice' items can have answerValueSet
: (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())
que-6errorQuestionnaire.itemRequired and repeat aren't permitted for display items
: type!='display' or (required.empty() and repeats.empty())
que-7errorQuestionnaire.item.enableWhenIf the operator is 'exists', the value must be a boolean
: operator = 'exists' implies (answer is Boolean)
que-8errorQuestionnaire.itemInitial values can't be specified for groups or display items
: (type!='group' and type!='display') or initial.empty()
que-9errorQuestionnaire.itemRead-only can't be specified for "display" items
: type!='display' or readOnly.empty()
que-10errorQuestionnaire.itemMaximum length can only be declared for simple question types
: (type in ('boolean' | 'decimal' | 'integer' | 'string' | 'text' | 'url' | 'open-choice')) or maxLength.empty()
que-11errorQuestionnaire.itemIf one or more answerOption is present, initial[x] must be missing
: answerOption.empty() or initial.empty()
que-12errorQuestionnaire.itemIf there are more than one enableWhen, enableBehavior must be specified
: enableWhen.count() > 2 implies enableBehavior.exists()
que-13errorQuestionnaire.itemCan only have multiple initial values for repeating items
: repeats=true or initial.count() <= 1

This structure is derived from QuestionnaireCore

Summary

Mandatory: 7 elements(14 nested mandatory elements)
Must-Support: 43 elements
Fixed: 12 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Questionnaire.useContext (Closed)

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Questionnaire C 0..* QuestionnaireCore A structured set of questions
Constraints: que-0, que-2
... meta Σ 0..1 Meta Metadata about the resource
.... profile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... version SΣ 0..1 string Business version of the questionnaire
... title SΣ 1..1 string Name for this questionnaire (human friendly)
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
Fixed Value: active
... description S 0..1 markdown Natural language description of the questionnaire
... Slices for useContext SΣ 2..2 UsageContext The context that the content is intended to support
Slice: Unordered, Closed by value:code
.... useContext:PatientQuestionnaire SΣ 0..1 UsageContext The context that the content is intended to support
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: user
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
...... coding SΣ 0..* Coding Code defined by a terminology system
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: 116154003
.... useContext:PractitionerQuestionnaire SΣ 0..1 UsageContext The context that the content is intended to support
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: user
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
...... coding SΣ 0..* Coding Code defined by a terminology system
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: 223366009
.... useContext:QuestionnaireContext SΣ 1..1 UsageContext The context that the content is intended to support
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: https://cambio.codes/cs/usage-context-types
...... code SΣ 0..1 code Symbol in syntax defined by the system
Fixed Value: cc
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
... code SΣ 1..* Coding Concept that represents the overall questionnaire
Binding: QuestionnaireQuestionCodes (example): Codes for questionnaires, groups and individual questions.
.... system SΣ 1..1 uri Identity of the terminology system
.... code SΣ 1..1 code Symbol in syntax defined by the system
... item SC 0..* BackboneElement Questions and sections within the Questionnaire
Constraints: que-1, que-3, que-4, que-5, que-6, que-8, que-9, que-10, que-11, que-12, que-13
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:unitOption S 0..1 (Complex) Unit choice
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-unitOption
...... extension 0..0
...... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/questionnaire-unitOption"
...... value[x] 1..1 Coding Value of extension
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://unitsofmeasure.org
....... code SΣ 1..1 code Symbol in syntax defined by the system
..... extension:referenceResource S 0..* code Allowed resource for reference
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-referenceResource
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
..... extension:allowComment S 0..1 boolean Indicates if comments are allowed for the question.
URL: https://fhir.cambio.se/StructureDefinition/questionnaire-allowComment
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... linkId 1..1 string Unique id for item in questionnaire
.... code SC 0..* Coding Corresponding concept for this item in a terminology
Binding: QuestionnaireQuestionCodes (example): Codes for questionnaires, groups and individual questions.
..... system SΣ 1..1 uri Identity of the terminology system
..... code SΣ 1..1 code Symbol in syntax defined by the system
.... text S 1..1 string Primary text for the item
.... type 1..1 code group | display | boolean | decimal | integer | date | dateTime +
Binding: QuestionnaireItemType (required): Distinguishes groups from questions and display text and indicates data type for questions.
.... enableWhen ?!C 0..* BackboneElement Only allow data when
Constraints: que-7
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... question 1..1 string Question that determines whether item is enabled
..... operator 1..1 code exists | = | != | > | < | >= | <=
Binding: QuestionnaireItemOperator (required): The criteria by which a question is enabled.
..... answer[x] C 1..1 Value for question comparison based on operator
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
...... answerBoolean boolean
...... answerDecimal decimal
...... answerInteger integer
...... answerDate date
...... answerDateTime dateTime
...... answerTime time
...... answerString string
...... answerCoding Coding
...... answerQuantity Quantity
...... answerReference Reference(Resource)
.... answerValueSet C 0..1 canonical(ValueSet) Valueset containing permitted answers
.... answerOption SC 0..* BackboneElement Permitted answer
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... value[x] S 1..1 Coding Answer value
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
.... initial C 0..* BackboneElement Initial value(s) when item is first rendered
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... value[x] 1..1 Actual value for initializing the question
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
...... valueBoolean boolean
...... valueDecimal decimal
...... valueInteger integer
...... valueDate date
...... valueDateTime dateTime
...... valueTime time
...... valueString string
...... valueUri uri
...... valueAttachment Attachment
...... valueCoding Coding
...... valueQuantity Quantity
...... valueReference Reference(Resource)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Questionnaire.statusrequiredFixed Value: active
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
From the FHIR Standard
Questionnaire.useContext:PatientQuestionnaire.codeextensibleFixed Value: user
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:PatientQuestionnaire.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.useContext:PractitionerQuestionnaire.codeextensibleFixed Value: user
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:PractitionerQuestionnaire.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.useContext:QuestionnaireContext.codeextensibleFixed Value: cc
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:QuestionnaireContext.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.codeexampleQuestionnaireQuestionCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/questionnaire-questions
From the FHIR Standard
Questionnaire.item.codeexampleQuestionnaireQuestionCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/questionnaire-questions
From the FHIR Standard
Questionnaire.item.typerequiredQuestionnaireItemType
http://hl7.org/fhir/ValueSet/item-type|4.0.1
From the FHIR Standard
Questionnaire.item.enableWhen.operatorrequiredQuestionnaireItemOperator
http://hl7.org/fhir/ValueSet/questionnaire-enable-operator|4.0.1
From the FHIR Standard
Questionnaire.item.enableWhen.answer[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard
Questionnaire.item.answerOption.value[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard
Questionnaire.item.initial.value[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorQuestionnaireIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorQuestionnaireIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorQuestionnaireIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorQuestionnaireIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceQuestionnaireA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
que-0warningQuestionnaireName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
que-1errorQuestionnaire.itemGroup items must have nested items, display items cannot have nested items
: (type='group' implies item.empty().not()) and (type.trace('type')='display' implies item.trace('item').empty())
que-2errorQuestionnaireThe link ids for groups and questions must be unique within the questionnaire
: descendants().linkId.isDistinct()
que-3errorQuestionnaire.itemDisplay items cannot have a "code" asserted
: type!='display' or code.empty()
que-4errorQuestionnaire.itemA question cannot have both answerOption and answerValueSet
: answerOption.empty() or answerValueSet.empty()
que-5errorQuestionnaire.itemOnly 'choice' and 'open-choice' items can have answerValueSet
: (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())
que-6errorQuestionnaire.itemRequired and repeat aren't permitted for display items
: type!='display' or (required.empty() and repeats.empty())
que-7errorQuestionnaire.item.enableWhenIf the operator is 'exists', the value must be a boolean
: operator = 'exists' implies (answer is Boolean)
que-8errorQuestionnaire.itemInitial values can't be specified for groups or display items
: (type!='group' and type!='display') or initial.empty()
que-9errorQuestionnaire.itemRead-only can't be specified for "display" items
: type!='display' or readOnly.empty()
que-10errorQuestionnaire.itemMaximum length can only be declared for simple question types
: (type in ('boolean' | 'decimal' | 'integer' | 'string' | 'text' | 'url' | 'open-choice')) or maxLength.empty()
que-11errorQuestionnaire.itemIf one or more answerOption is present, initial[x] must be missing
: answerOption.empty() or initial.empty()
que-12errorQuestionnaire.itemIf there are more than one enableWhen, enableBehavior must be specified
: enableWhen.count() > 2 implies enableBehavior.exists()
que-13errorQuestionnaire.itemCan only have multiple initial values for repeating items
: repeats=true or initial.count() <= 1

Differential View

This structure is derived from QuestionnaireCore

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Questionnaire QuestionnaireCore
... meta
.... profile S 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
... url S 1..1 uri Canonical identifier for this questionnaire, represented as a URI (globally unique)
... version S 0..1 string Business version of the questionnaire
... status S 1..1 code draft | active | retired | unknown
Fixed Value: active
... description S 0..1 markdown Natural language description of the questionnaire
... Slices for useContext S 2..2 UsageContext The context that the content is intended to support
Slice: Unordered, Closed by value:code
.... useContext:PatientQuestionnaire S 0..1 UsageContext The context that the content is intended to support
..... code S 1..1 Coding Type of context being specified
...... system S 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... code S 1..1 code Symbol in syntax defined by the system
Fixed Value: user
..... value[x] S 1..1 CodeableConcept Value that defines the context
...... coding S 0..* Coding Code defined by a terminology system
....... system S 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... code S 1..1 code Symbol in syntax defined by the system
Fixed Value: 116154003
.... useContext:PractitionerQuestionnaire S 0..1 UsageContext The context that the content is intended to support
..... code S 1..1 Coding Type of context being specified
...... system S 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... code S 1..1 code Symbol in syntax defined by the system
Fixed Value: user
..... value[x] S 1..1 CodeableConcept Value that defines the context
...... coding S 0..* Coding Code defined by a terminology system
....... system S 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... code S 1..1 code Symbol in syntax defined by the system
Fixed Value: 223366009
.... useContext:QuestionnaireContext S 1..1 UsageContext The context that the content is intended to support
..... code S 1..1 Coding Type of context being specified
...... system S 1..1 uri Identity of the terminology system
Fixed Value: https://cambio.codes/cs/usage-context-types
...... code S 0..1 code Symbol in syntax defined by the system
Fixed Value: cc
..... value[x] S 1..1 CodeableConcept Value that defines the context
... code S 1..* Coding Concept that represents the overall questionnaire
.... system S 1..1 uri Identity of the terminology system
.... code S 1..1 code Symbol in syntax defined by the system
... item S 0..* BackboneElement Questions and sections within the Questionnaire
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:unitOption S 0..1 (Complex) Unit choice
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-unitOption
...... value[x]
....... system S 1..1 uri Identity of the terminology system
Fixed Value: http://unitsofmeasure.org
....... code S 1..1 code Symbol in syntax defined by the system
..... extension:referenceResource S 0..* code Allowed resource for reference
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-referenceResource
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
..... extension:allowComment S 0..1 boolean Indicates if comments are allowed for the question.
URL: https://fhir.cambio.se/StructureDefinition/questionnaire-allowComment
.... code S 0..* Coding Corresponding concept for this item in a terminology
..... system S 1..1 uri Identity of the terminology system
..... code S 1..1 code Symbol in syntax defined by the system
.... text S 1..1 string Primary text for the item
.... answerOption S 0..* BackboneElement Permitted answer
..... value[x] S 1..1 Coding Answer value

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Questionnaire C 0..* QuestionnaireCore A structured set of questions
Constraints: que-0, que-2
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated Σ 0..1 instant When the resource version last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... url SΣ 1..1 uri Canonical identifier for this questionnaire, represented as a URI (globally unique)
... identifier Σ 0..* Identifier Additional identifier for the questionnaire
... version SΣ 0..1 string Business version of the questionnaire
... name ΣC 0..1 string Name for this questionnaire (computer friendly)
... title SΣ 1..1 string Name for this questionnaire (human friendly)
... derivedFrom 0..* canonical(Questionnaire) Instantiates protocol or definition
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
Fixed Value: active
... subjectType Σ 0..* code Resource that can be subject of QuestionnaireResponse
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
... date Σ 0..1 dateTime Date last changed
... publisher Σ 0..1 string Name of the publisher (organization or individual)
... contact Σ 0..* ContactDetail Contact details for the publisher
... description S 0..1 markdown Natural language description of the questionnaire
... Slices for useContext SΣ 2..2 UsageContext The context that the content is intended to support
Slice: Unordered, Closed by value:code
.... useContext:PatientQuestionnaire SΣ 0..1 UsageContext The context that the content is intended to support
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... version Σ 0..1 string Version of the system - if relevant
...... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: user
...... display Σ 0..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding SΣ 0..* Coding Code defined by a terminology system
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: 116154003
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... text Σ 0..1 string Plain text representation of the concept
.... useContext:PractitionerQuestionnaire SΣ 0..1 UsageContext The context that the content is intended to support
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/usage-context-type
...... version Σ 0..1 string Version of the system - if relevant
...... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: user
...... display Σ 0..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding SΣ 0..* Coding Code defined by a terminology system
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 1..1 code Symbol in syntax defined by the system
Fixed Value: 223366009
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
...... text Σ 0..1 string Plain text representation of the concept
.... useContext:QuestionnaireContext SΣ 1..1 UsageContext The context that the content is intended to support
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... code SΣ 1..1 Coding Type of context being specified
Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context.
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: https://cambio.codes/cs/usage-context-types
...... version Σ 0..1 string Version of the system - if relevant
...... code SΣ 0..1 code Symbol in syntax defined by the system
Fixed Value: cc
...... display Σ 0..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... value[x] SΣ 1..1 CodeableConcept Value that defines the context
Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified.
... approvalDate 0..1 date When the questionnaire was approved by publisher
... lastReviewDate 0..1 date When the questionnaire was last reviewed
... effectivePeriod Σ 0..1 Period When the questionnaire is expected to be used
... code SΣ 1..* Coding Concept that represents the overall questionnaire
Binding: QuestionnaireQuestionCodes (example): Codes for questionnaires, groups and individual questions.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... system SΣ 1..1 uri Identity of the terminology system
.... version Σ 0..1 string Version of the system - if relevant
.... code SΣ 1..1 code Symbol in syntax defined by the system
.... display Σ 0..1 string Representation defined by the system
.... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
... item SC 0..* BackboneElement Questions and sections within the Questionnaire
Constraints: que-1, que-3, que-4, que-5, que-6, que-8, que-9, que-10, que-11, que-12, que-13
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:unitOption S 0..1 (Complex) Unit choice
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-unitOption
...... id 0..1 id Unique id for inter-element referencing
...... extension 0..0
...... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/questionnaire-unitOption"
...... value[x] 1..1 Coding Value of extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... system SΣ 1..1 uri Identity of the terminology system
Fixed Value: http://unitsofmeasure.org
....... version Σ 0..1 string Version of the system - if relevant
....... code SΣ 1..1 code Symbol in syntax defined by the system
....... display Σ 0..1 string Representation defined by the system
....... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... extension:referenceResource S 0..* code Allowed resource for reference
URL: http://hl7.org/fhir/StructureDefinition/questionnaire-referenceResource
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
..... extension:allowComment S 0..1 boolean Indicates if comments are allowed for the question.
URL: https://fhir.cambio.se/StructureDefinition/questionnaire-allowComment
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... linkId 1..1 string Unique id for item in questionnaire
.... definition 0..1 uri ElementDefinition - details for the item
.... code SC 0..* Coding Corresponding concept for this item in a terminology
Binding: QuestionnaireQuestionCodes (example): Codes for questionnaires, groups and individual questions.
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system SΣ 1..1 uri Identity of the terminology system
..... version Σ 0..1 string Version of the system - if relevant
..... code SΣ 1..1 code Symbol in syntax defined by the system
..... display Σ 0..1 string Representation defined by the system
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... prefix 0..1 string E.g. "1(a)", "2.5.3"
.... text S 1..1 string Primary text for the item
.... type 1..1 code group | display | boolean | decimal | integer | date | dateTime +
Binding: QuestionnaireItemType (required): Distinguishes groups from questions and display text and indicates data type for questions.
.... enableWhen ?!C 0..* BackboneElement Only allow data when
Constraints: que-7
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... question 1..1 string Question that determines whether item is enabled
..... operator 1..1 code exists | = | != | > | < | >= | <=
Binding: QuestionnaireItemOperator (required): The criteria by which a question is enabled.
..... answer[x] C 1..1 Value for question comparison based on operator
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
...... answerBoolean boolean
...... answerDecimal decimal
...... answerInteger integer
...... answerDate date
...... answerDateTime dateTime
...... answerTime time
...... answerString string
...... answerCoding Coding
...... answerQuantity Quantity
...... answerReference Reference(Resource)
.... enableBehavior C 0..1 code all | any
Binding: EnableWhenBehavior (required): Controls how multiple enableWhen values are interpreted - whether all or any must be true.
.... required C 0..1 boolean Whether the item must be included in data results
.... repeats C 0..1 boolean Whether the item may repeat
.... readOnly C 0..1 boolean Don't allow human editing
.... maxLength C 0..1 integer No more than this many characters
.... answerValueSet C 0..1 canonical(ValueSet) Valueset containing permitted answers
.... answerOption SC 0..* BackboneElement Permitted answer
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... value[x] S 1..1 Coding Answer value
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
..... initialSelected 0..1 boolean Whether option is selected by default
.... initial C 0..* BackboneElement Initial value(s) when item is first rendered
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... value[x] 1..1 Actual value for initializing the question
Binding: QuestionnaireAnswerCodes (example): Allowed values to answer questions.
...... valueBoolean boolean
...... valueDecimal decimal
...... valueInteger integer
...... valueDate date
...... valueDateTime dateTime
...... valueTime time
...... valueString string
...... valueUri uri
...... valueAttachment Attachment
...... valueCoding Coding
...... valueQuantity Quantity
...... valueReference Reference(Resource)
.... item C 0..* See item (Questionnaire) Nested questionnaire items

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Questionnaire.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
From the FHIR Standard
Questionnaire.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
From the FHIR Standard
Questionnaire.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Questionnaire.statusrequiredFixed Value: active
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
From the FHIR Standard
Questionnaire.subjectTyperequiredResourceType
http://hl7.org/fhir/ValueSet/resource-types|4.0.1
From the FHIR Standard
Questionnaire.useContext:PatientQuestionnaire.codeextensibleFixed Value: user
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:PatientQuestionnaire.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.useContext:PractitionerQuestionnaire.codeextensibleFixed Value: user
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:PractitionerQuestionnaire.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.useContext:QuestionnaireContext.codeextensibleFixed Value: cc
http://hl7.org/fhir/ValueSet/usage-context-type
From the FHIR Standard
Questionnaire.useContext:QuestionnaireContext.value[x]exampleContext of Use ValueSet
http://hl7.org/fhir/ValueSet/use-context
From the FHIR Standard
Questionnaire.codeexampleQuestionnaireQuestionCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/questionnaire-questions
From the FHIR Standard
Questionnaire.item.codeexampleQuestionnaireQuestionCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/questionnaire-questions
From the FHIR Standard
Questionnaire.item.typerequiredQuestionnaireItemType
http://hl7.org/fhir/ValueSet/item-type|4.0.1
From the FHIR Standard
Questionnaire.item.enableWhen.operatorrequiredQuestionnaireItemOperator
http://hl7.org/fhir/ValueSet/questionnaire-enable-operator|4.0.1
From the FHIR Standard
Questionnaire.item.enableWhen.answer[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard
Questionnaire.item.enableBehaviorrequiredEnableWhenBehavior
http://hl7.org/fhir/ValueSet/questionnaire-enable-behavior|4.0.1
From the FHIR Standard
Questionnaire.item.answerOption.value[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard
Questionnaire.item.initial.value[x]exampleQuestionnaireAnswerCodes(a valid code from SNOMED CT)
http://hl7.org/fhir/ValueSet/questionnaire-answers
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorQuestionnaireIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorQuestionnaireIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorQuestionnaireIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorQuestionnaireIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceQuestionnaireA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
que-0warningQuestionnaireName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
que-1errorQuestionnaire.itemGroup items must have nested items, display items cannot have nested items
: (type='group' implies item.empty().not()) and (type.trace('type')='display' implies item.trace('item').empty())
que-2errorQuestionnaireThe link ids for groups and questions must be unique within the questionnaire
: descendants().linkId.isDistinct()
que-3errorQuestionnaire.itemDisplay items cannot have a "code" asserted
: type!='display' or code.empty()
que-4errorQuestionnaire.itemA question cannot have both answerOption and answerValueSet
: answerOption.empty() or answerValueSet.empty()
que-5errorQuestionnaire.itemOnly 'choice' and 'open-choice' items can have answerValueSet
: (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())
que-6errorQuestionnaire.itemRequired and repeat aren't permitted for display items
: type!='display' or (required.empty() and repeats.empty())
que-7errorQuestionnaire.item.enableWhenIf the operator is 'exists', the value must be a boolean
: operator = 'exists' implies (answer is Boolean)
que-8errorQuestionnaire.itemInitial values can't be specified for groups or display items
: (type!='group' and type!='display') or initial.empty()
que-9errorQuestionnaire.itemRead-only can't be specified for "display" items
: type!='display' or readOnly.empty()
que-10errorQuestionnaire.itemMaximum length can only be declared for simple question types
: (type in ('boolean' | 'decimal' | 'integer' | 'string' | 'text' | 'url' | 'open-choice')) or maxLength.empty()
que-11errorQuestionnaire.itemIf one or more answerOption is present, initial[x] must be missing
: answerOption.empty() or initial.empty()
que-12errorQuestionnaire.itemIf there are more than one enableWhen, enableBehavior must be specified
: enableWhen.count() > 2 implies enableBehavior.exists()
que-13errorQuestionnaire.itemCan only have multiple initial values for repeating items
: repeats=true or initial.count() <= 1

This structure is derived from QuestionnaireCore

Summary

Mandatory: 7 elements(14 nested mandatory elements)
Must-Support: 43 elements
Fixed: 12 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Questionnaire.useContext (Closed)

 

Other representations of profile: CSV, Excel, Schematron