Implementation Guide for fælles faglige instrumenter (FFInst)
1.0.0 - release
This page is part of the KLFFinst (v1.0.0: Release) based on FHIR R4. This is the current published version. For a full list of available versions, see the Directory of published versions
Official URL: http://fhir.kl.dk/ffinst/StructureDefinition/KLToolsQuestionnaireResponse | Version: 1.0.0 | |||
Active as of 2023-08-27 | Computable Name: KLToolsQuestionnaireResponse |
Questionnaire response profile, for all Questionaires in KLTools
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from QuestionnaireResponse
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
QuestionnaireResponse | 0..* | QuestionnaireResponse | A structured set of questions and their answers | |
Slices for extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |
findingInformer | Σ | 1..1 | CodeableConcept | FindingInformer URL: http://fhir.kl.dk/ffinst/StructureDefinition/FindingInformer Binding: FindingInformerCodes (required) |
techniqe | Σ | 0..1 | CodeableConcept | Technique URL: http://fhir.kl.dk/ffinst/StructureDefinition/Technique Binding: KLtechniquesCodes (required) |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
QuestionnaireResponse | 0..* | QuestionnaireResponse | A structured set of questions and their answers | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |
findingInformer | Σ | 1..1 | CodeableConcept | FindingInformer URL: http://fhir.kl.dk/ffinst/StructureDefinition/FindingInformer Binding: FindingInformerCodes (required) |
techniqe | Σ | 0..1 | CodeableConcept | Technique URL: http://fhir.kl.dk/ffinst/StructureDefinition/Technique Binding: KLtechniquesCodes (required) |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | in-progress | completed | amended | entered-in-error | stopped Binding: QuestionnaireResponseStatus (required): Lifecycle status of the questionnaire response. |
Documentation for this format |
Path | Conformance | ValueSet |
QuestionnaireResponse.status | required | QuestionnaireResponseStatus |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | QuestionnaireResponse | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | QuestionnaireResponse | If 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-4 | error | QuestionnaireResponse | If 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-5 | error | QuestionnaireResponse | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | QuestionnaireResponse | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
QuestionnaireResponse | 0..* | QuestionnaireResponse | A structured set of questions and their answers | |||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
findingInformer | Σ | 1..1 | CodeableConcept | FindingInformer URL: http://fhir.kl.dk/ffinst/StructureDefinition/FindingInformer Binding: FindingInformerCodes (required) | ||||
techniqe | Σ | 0..1 | CodeableConcept | Technique URL: http://fhir.kl.dk/ffinst/StructureDefinition/Technique Binding: KLtechniquesCodes (required) | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..1 | Identifier | Unique id for this set of answers | ||||
basedOn | Σ | 0..* | Reference(CarePlan | ServiceRequest) | Request fulfilled by this QuestionnaireResponse | ||||
partOf | Σ | 0..* | Reference(Observation | Procedure) | Part of this action | ||||
questionnaire | Σ | 0..1 | canonical(Questionnaire) | Form being answered | ||||
status | ?!Σ | 1..1 | code | in-progress | completed | amended | entered-in-error | stopped Binding: QuestionnaireResponseStatus (required): Lifecycle status of the questionnaire response. | ||||
subject | Σ | 0..1 | Reference(Resource) | The subject of the questions | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of | ||||
authored | Σ | 0..1 | dateTime | Date the answers were gathered | ||||
author | Σ | 0..1 | Reference(Device | Practitioner | PractitionerRole | Patient | RelatedPerson | Organization) | Person who received and recorded the answers | ||||
source | Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) | The person who answered the questions | ||||
item | C | 0..* | BackboneElement | Groups and questions | ||||
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 | ||||
linkId | 1..1 | string | Pointer to specific item from Questionnaire | |||||
definition | 0..1 | uri | ElementDefinition - details for the item | |||||
text | 0..1 | string | Name for group or question text | |||||
answer | 0..* | BackboneElement | The response(s) to the question | |||||
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] | 0..1 | Single-valued answer to the question Binding: QuestionnaireAnswerCodes (example): Code indicating the response provided for a question. | ||||||
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 | 0..* | See item (QuestionnaireResponse) | Nested groups and questions | |||||
item | 0..* | See item (QuestionnaireResponse) | Nested questionnaire response items | |||||
Documentation for this format |
Path | Conformance | ValueSet | ||||
QuestionnaireResponse.language | preferred | CommonLanguages
| ||||
QuestionnaireResponse.status | required | QuestionnaireResponseStatus | ||||
QuestionnaireResponse.item.answer.value[x] | example | QuestionnaireAnswerCodes (a valid code from SNOMED CT) |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | QuestionnaireResponse | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | QuestionnaireResponse | If 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-4 | error | QuestionnaireResponse | If 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-5 | error | QuestionnaireResponse | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | QuestionnaireResponse | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
qrs-1 | error | QuestionnaireResponse.item | Nested item can't be beneath both item and answer : (answer.exists() and item.exists()).not() |
This structure is derived from QuestionnaireResponse
Differential View
This structure is derived from QuestionnaireResponse
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
QuestionnaireResponse | 0..* | QuestionnaireResponse | A structured set of questions and their answers | |
Slices for extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |
findingInformer | Σ | 1..1 | CodeableConcept | FindingInformer URL: http://fhir.kl.dk/ffinst/StructureDefinition/FindingInformer Binding: FindingInformerCodes (required) |
techniqe | Σ | 0..1 | CodeableConcept | Technique URL: http://fhir.kl.dk/ffinst/StructureDefinition/Technique Binding: KLtechniquesCodes (required) |
Documentation for this format |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
QuestionnaireResponse | 0..* | QuestionnaireResponse | A structured set of questions and their answers | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |
findingInformer | Σ | 1..1 | CodeableConcept | FindingInformer URL: http://fhir.kl.dk/ffinst/StructureDefinition/FindingInformer Binding: FindingInformerCodes (required) |
techniqe | Σ | 0..1 | CodeableConcept | Technique URL: http://fhir.kl.dk/ffinst/StructureDefinition/Technique Binding: KLtechniquesCodes (required) |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | in-progress | completed | amended | entered-in-error | stopped Binding: QuestionnaireResponseStatus (required): Lifecycle status of the questionnaire response. |
Documentation for this format |
Path | Conformance | ValueSet |
QuestionnaireResponse.status | required | QuestionnaireResponseStatus |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | QuestionnaireResponse | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | QuestionnaireResponse | If 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-4 | error | QuestionnaireResponse | If 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-5 | error | QuestionnaireResponse | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | QuestionnaireResponse | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
QuestionnaireResponse | 0..* | QuestionnaireResponse | A structured set of questions and their answers | |||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
findingInformer | Σ | 1..1 | CodeableConcept | FindingInformer URL: http://fhir.kl.dk/ffinst/StructureDefinition/FindingInformer Binding: FindingInformerCodes (required) | ||||
techniqe | Σ | 0..1 | CodeableConcept | Technique URL: http://fhir.kl.dk/ffinst/StructureDefinition/Technique Binding: KLtechniquesCodes (required) | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..1 | Identifier | Unique id for this set of answers | ||||
basedOn | Σ | 0..* | Reference(CarePlan | ServiceRequest) | Request fulfilled by this QuestionnaireResponse | ||||
partOf | Σ | 0..* | Reference(Observation | Procedure) | Part of this action | ||||
questionnaire | Σ | 0..1 | canonical(Questionnaire) | Form being answered | ||||
status | ?!Σ | 1..1 | code | in-progress | completed | amended | entered-in-error | stopped Binding: QuestionnaireResponseStatus (required): Lifecycle status of the questionnaire response. | ||||
subject | Σ | 0..1 | Reference(Resource) | The subject of the questions | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of | ||||
authored | Σ | 0..1 | dateTime | Date the answers were gathered | ||||
author | Σ | 0..1 | Reference(Device | Practitioner | PractitionerRole | Patient | RelatedPerson | Organization) | Person who received and recorded the answers | ||||
source | Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) | The person who answered the questions | ||||
item | C | 0..* | BackboneElement | Groups and questions | ||||
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 | ||||
linkId | 1..1 | string | Pointer to specific item from Questionnaire | |||||
definition | 0..1 | uri | ElementDefinition - details for the item | |||||
text | 0..1 | string | Name for group or question text | |||||
answer | 0..* | BackboneElement | The response(s) to the question | |||||
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] | 0..1 | Single-valued answer to the question Binding: QuestionnaireAnswerCodes (example): Code indicating the response provided for a question. | ||||||
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 | 0..* | See item (QuestionnaireResponse) | Nested groups and questions | |||||
item | 0..* | See item (QuestionnaireResponse) | Nested questionnaire response items | |||||
Documentation for this format |
Path | Conformance | ValueSet | ||||
QuestionnaireResponse.language | preferred | CommonLanguages
| ||||
QuestionnaireResponse.status | required | QuestionnaireResponseStatus | ||||
QuestionnaireResponse.item.answer.value[x] | example | QuestionnaireAnswerCodes (a valid code from SNOMED CT) |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | QuestionnaireResponse | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | QuestionnaireResponse | If 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-4 | error | QuestionnaireResponse | If 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-5 | error | QuestionnaireResponse | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | QuestionnaireResponse | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
qrs-1 | error | QuestionnaireResponse.item | Nested item can't be beneath both item and answer : (answer.exists() and item.exists()).not() |
This structure is derived from QuestionnaireResponse
Other representations of profile: CSV, Excel, Schematron