IE (Ireland) Core Implementation Guide
0.3.0 - draft Ireland flag

IE (Ireland) Core Implementation Guide - Local Development build (v0.3.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: IE Core QuestionnaireResponse

Official URL: https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-questionnaireresponse Version: 0.3.0
Draft as of 2026-09-28 Computable Name: IECoreQuestionnaireResponse

The IE Core QuestionnaireResponse profile sets minimum expectations for the QuestionnaireResponse resource to record, search, and fetch questionnaire responses associated with a patient, based on Irish requirements.

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
.. QuestionnaireResponse 0..* QuestionnaireResponse(4.0.1) A structured set of questions and their answers
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
Constraints: ext-1
... questionnaire SΣ 0..1 canonical(Questionnaire) Form being answered
... status ?!SΣ 1..1 code in-progress | completed | amended | entered-in-error | stopped
Binding: QuestionnaireResponseStatus (required): Lifecycle status of the questionnaire response.
... subject SΣ 1..1 Reference(IE Core Patient(0.3.0)) The subject of the questions
... authored SΣ 0..1 dateTime Date the answers were gathered
... author SΣ 0..1 Reference(Device | Practitioner | PractitionerRole | Patient | RelatedPerson | Organization) Person who received and recorded the answers
... item SC 0..* BackboneElement Groups and questions
Constraints: qrs-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... linkId S 1..1 string Pointer to specific item from Questionnaire
.... answer S 0..* BackboneElement The response(s) to the question
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
QuestionnaireResponse.​status Base required QuestionnaireResponseStatus 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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 QuestionnaireResponse.implicitRules, QuestionnaireResponse.modifierExtension, QuestionnaireResponse.questionnaire, QuestionnaireResponse.status, QuestionnaireResponse.subject, QuestionnaireResponse.authored, QuestionnaireResponse.author, QuestionnaireResponse.item, QuestionnaireResponse.item.modifierExtension, QuestionnaireResponse.item.linkId, QuestionnaireResponse.item.answer, QuestionnaireResponse.item.answer.modifierExtension All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error QuestionnaireResponse.modifierExtension, QuestionnaireResponse.item.modifierExtension, QuestionnaireResponse.item.answer.modifierExtension 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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. QuestionnaireResponse 0..* QuestionnaireResponse(4.0.1) A structured set of questions and their answers
... questionnaire S 0..1 canonical(Questionnaire) Form being answered
... status S 1..1 code in-progress | completed | amended | entered-in-error | stopped
... subject S 1..1 Reference(IE Core Patient(0.3.0)) The subject of the questions
... authored S 0..1 dateTime Date the answers were gathered
... author S 0..1 Reference(Device | Practitioner | PractitionerRole | Patient | RelatedPerson | Organization) Person who received and recorded the answers
... item S 0..* BackboneElement Groups and questions
.... linkId S 1..1 string Pointer to specific item from Questionnaire
.... answer S 0..* BackboneElement The response(s) to the question

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. QuestionnaireResponse 0..* QuestionnaireResponse(4.0.1) 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.
Additional BindingsPurpose
AllLanguages Max Binding
... 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
Constraints: ext-1
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
Constraints: ext-1
... 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 SΣ 0..1 canonical(Questionnaire) Form being answered
... status ?!SΣ 1..1 code in-progress | completed | amended | entered-in-error | stopped
Binding: QuestionnaireResponseStatus (required): Lifecycle status of the questionnaire response.
... subject SΣ 1..1 Reference(IE Core Patient(0.3.0)) The subject of the questions
... encounter Σ 0..1 Reference(Encounter) Encounter created as part of
... authored SΣ 0..1 dateTime Date the answers were gathered
... author SΣ 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 SC 0..* BackboneElement Groups and questions
Constraints: qrs-1
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... linkId S 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 S 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
Constraints: ext-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
..... 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

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
QuestionnaireResponse.​language Base preferred Common Languages 📍4.0.1 FHIR Std.
QuestionnaireResponse.​status Base required QuestionnaireResponseStatus 📍4.0.1 FHIR Std.
QuestionnaireResponse.​item.answer.value[x] Base example Questionnaire Answer Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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 QuestionnaireResponse.meta, QuestionnaireResponse.implicitRules, QuestionnaireResponse.language, QuestionnaireResponse.text, QuestionnaireResponse.extension, QuestionnaireResponse.modifierExtension, QuestionnaireResponse.identifier, QuestionnaireResponse.basedOn, QuestionnaireResponse.partOf, QuestionnaireResponse.questionnaire, QuestionnaireResponse.status, QuestionnaireResponse.subject, QuestionnaireResponse.encounter, QuestionnaireResponse.authored, QuestionnaireResponse.author, QuestionnaireResponse.source, QuestionnaireResponse.item, QuestionnaireResponse.item.extension, QuestionnaireResponse.item.modifierExtension, QuestionnaireResponse.item.linkId, QuestionnaireResponse.item.definition, QuestionnaireResponse.item.text, QuestionnaireResponse.item.answer, QuestionnaireResponse.item.answer.extension, QuestionnaireResponse.item.answer.modifierExtension, QuestionnaireResponse.item.answer.value[x], QuestionnaireResponse.item.answer.item, QuestionnaireResponse.item.item All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error QuestionnaireResponse.extension, QuestionnaireResponse.modifierExtension, QuestionnaireResponse.item.extension, QuestionnaireResponse.item.modifierExtension, QuestionnaireResponse.item.answer.extension, QuestionnaireResponse.item.answer.modifierExtension 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

Summary

Mandatory: 1 element
Must-Support: 8 elements

Structures

This structure refers to these other structures:

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. QuestionnaireResponse 0..* QuestionnaireResponse(4.0.1) A structured set of questions and their answers
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
Constraints: ext-1
... questionnaire SΣ 0..1 canonical(Questionnaire) Form being answered
... status ?!SΣ 1..1 code in-progress | completed | amended | entered-in-error | stopped
Binding: QuestionnaireResponseStatus (required): Lifecycle status of the questionnaire response.
... subject SΣ 1..1 Reference(IE Core Patient(0.3.0)) The subject of the questions
... authored SΣ 0..1 dateTime Date the answers were gathered
... author SΣ 0..1 Reference(Device | Practitioner | PractitionerRole | Patient | RelatedPerson | Organization) Person who received and recorded the answers
... item SC 0..* BackboneElement Groups and questions
Constraints: qrs-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... linkId S 1..1 string Pointer to specific item from Questionnaire
.... answer S 0..* BackboneElement The response(s) to the question
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
QuestionnaireResponse.​status Base required QuestionnaireResponseStatus 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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 QuestionnaireResponse.implicitRules, QuestionnaireResponse.modifierExtension, QuestionnaireResponse.questionnaire, QuestionnaireResponse.status, QuestionnaireResponse.subject, QuestionnaireResponse.authored, QuestionnaireResponse.author, QuestionnaireResponse.item, QuestionnaireResponse.item.modifierExtension, QuestionnaireResponse.item.linkId, QuestionnaireResponse.item.answer, QuestionnaireResponse.item.answer.modifierExtension All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error QuestionnaireResponse.modifierExtension, QuestionnaireResponse.item.modifierExtension, QuestionnaireResponse.item.answer.modifierExtension 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()

Differential View

This structure is derived from QuestionnaireResponse

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. QuestionnaireResponse 0..* QuestionnaireResponse(4.0.1) A structured set of questions and their answers
... questionnaire S 0..1 canonical(Questionnaire) Form being answered
... status S 1..1 code in-progress | completed | amended | entered-in-error | stopped
... subject S 1..1 Reference(IE Core Patient(0.3.0)) The subject of the questions
... authored S 0..1 dateTime Date the answers were gathered
... author S 0..1 Reference(Device | Practitioner | PractitionerRole | Patient | RelatedPerson | Organization) Person who received and recorded the answers
... item S 0..* BackboneElement Groups and questions
.... linkId S 1..1 string Pointer to specific item from Questionnaire
.... answer S 0..* BackboneElement The response(s) to the question

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. QuestionnaireResponse 0..* QuestionnaireResponse(4.0.1) 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.
Additional BindingsPurpose
AllLanguages Max Binding
... 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
Constraints: ext-1
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
Constraints: ext-1
... 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 SΣ 0..1 canonical(Questionnaire) Form being answered
... status ?!SΣ 1..1 code in-progress | completed | amended | entered-in-error | stopped
Binding: QuestionnaireResponseStatus (required): Lifecycle status of the questionnaire response.
... subject SΣ 1..1 Reference(IE Core Patient(0.3.0)) The subject of the questions
... encounter Σ 0..1 Reference(Encounter) Encounter created as part of
... authored SΣ 0..1 dateTime Date the answers were gathered
... author SΣ 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 SC 0..* BackboneElement Groups and questions
Constraints: qrs-1
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... linkId S 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 S 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
Constraints: ext-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
..... 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

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
QuestionnaireResponse.​language Base preferred Common Languages 📍4.0.1 FHIR Std.
QuestionnaireResponse.​status Base required QuestionnaireResponseStatus 📍4.0.1 FHIR Std.
QuestionnaireResponse.​item.answer.value[x] Base example Questionnaire Answer Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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 QuestionnaireResponse.meta, QuestionnaireResponse.implicitRules, QuestionnaireResponse.language, QuestionnaireResponse.text, QuestionnaireResponse.extension, QuestionnaireResponse.modifierExtension, QuestionnaireResponse.identifier, QuestionnaireResponse.basedOn, QuestionnaireResponse.partOf, QuestionnaireResponse.questionnaire, QuestionnaireResponse.status, QuestionnaireResponse.subject, QuestionnaireResponse.encounter, QuestionnaireResponse.authored, QuestionnaireResponse.author, QuestionnaireResponse.source, QuestionnaireResponse.item, QuestionnaireResponse.item.extension, QuestionnaireResponse.item.modifierExtension, QuestionnaireResponse.item.linkId, QuestionnaireResponse.item.definition, QuestionnaireResponse.item.text, QuestionnaireResponse.item.answer, QuestionnaireResponse.item.answer.extension, QuestionnaireResponse.item.answer.modifierExtension, QuestionnaireResponse.item.answer.value[x], QuestionnaireResponse.item.answer.item, QuestionnaireResponse.item.item All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error QuestionnaireResponse.extension, QuestionnaireResponse.modifierExtension, QuestionnaireResponse.item.extension, QuestionnaireResponse.item.modifierExtension, QuestionnaireResponse.item.answer.extension, QuestionnaireResponse.item.answer.modifierExtension 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

Summary

Mandatory: 1 element
Must-Support: 8 elements

Structures

This structure refers to these other structures:

 

Other representations of profile: CSV, Excel, Schematron