ESAVI FHIR Implementation Guide (IG)
0.1.45 - ci-build International flag

ESAVI FHIR Implementation Guide (IG), published by ESAVI -. This guide is not an authorized publication; it is the continuous build for version 0.1.45 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/PanAmericanHealthOrganization/ESAVI-IG-FHIR-EN/ and changes regularly. See the Directory of published versions

Resource Profile: ESAVI Questionnaire Response

Official URL: https://paho.org/fhir/esavi/StructureDefinition/ESAVIQuestionnaireResponse Version: 0.1.45
Draft as of 2024-10-22 Computable Name: ESAVIQuestionnaireResponse

Profile with the minimum elements to consider to generate the response to the PAHO ESAVI questionnaire

Usage:

Formal Views of Profile Content

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

This structure is derived from QuestionnaireResponse

NameFlagsCard.TypeDescription & Constraintsdoco
.. QuestionnaireResponse 0..* QuestionnaireResponse A structured set of questions and their answers
... identifier S 1..1 Identifier Unique identifier for this response set
.... system 0..1 uri Namespace of the identification value. http://ops.org/esavi/CodIsoPaís or http://ops.org/esavi-CodPais/CodOrg or http://ops.org/esavi- CodPais/CodPais-CodOrg
.... value S 1..1 string Value of the unique identifier. Case Number in UUID
... questionnaire S 1..1 canonical(Questionnaire) Questionnaire resource to which the answers refer
Required Pattern: https://paho.org/fhir/esavi/Questionnaire/CuestionarioESAVI
... status S 1..1 code State in which the response is found.
Binding: QuestionnaireResponseStatus (required): In-progress will be used | completed

... item S 1..* BackboneElement Groups, subgroups and questions to answer based on the Questionnaire

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
QuestionnaireResponse.statusrequiredQuestionnaireResponseStatus
http://hl7.org/fhir/ValueSet/questionnaire-answers-status
from the FHIR Standard
NameFlagsCard.TypeDescription & Constraintsdoco
.. 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
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 1..1 Identifier Unique identifier for this response set
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system Σ 0..1 uri Namespace of the identification value. http://ops.org/esavi/CodIsoPaís or http://ops.org/esavi-CodPais/CodOrg or http://ops.org/esavi- CodPais/CodPais-CodOrg
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string Value of the unique identifier. Case Number in UUID
Example General: 123456
... status ?!SΣ 1..1 code State in which the response is found.
Binding: QuestionnaireResponseStatus (required): In-progress will be used | completed

... authored SΣ 1..1 dateTime File filling date or Notification date or National Repository date
... item SC 1..* BackboneElement Groups, subgroups and questions to answer based on the Questionnaire
qrs-1: Nested item can't be beneath both item and answer
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... linkId 1..1 string Pointer to specific item from Questionnaire

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
QuestionnaireResponse.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
QuestionnaireResponse.statusrequiredQuestionnaireResponseStatus
http://hl7.org/fhir/ValueSet/questionnaire-answers-status
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorQuestionnaireResponseIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorQuestionnaireResponseIf 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-4errorQuestionnaireResponseIf 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-5errorQuestionnaireResponseIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceQuestionnaireResponseA 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()
qrs-1errorQuestionnaireResponse.itemNested item can't be beneath both item and answer
: (answer.exists() and item.exists()).not()
NameFlagsCard.TypeDescription & Constraintsdoco
.. 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
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 1..1 Identifier Unique identifier for this response set
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ 0..1 uri Namespace of the identification value. http://ops.org/esavi/CodIsoPaís or http://ops.org/esavi-CodPais/CodOrg or http://ops.org/esavi- CodPais/CodPais-CodOrg
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string Value of the unique identifier. Case Number in UUID
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... basedOn Σ 0..* Reference(CarePlan | ServiceRequest) Request fulfilled by this QuestionnaireResponse
... partOf Σ 0..* Reference(Observation | Procedure) Part of this action
... questionnaire SΣ 1..1 canonical(Questionnaire) Questionnaire resource to which the answers refer
Required Pattern: https://paho.org/fhir/esavi/Questionnaire/CuestionarioESAVI
... status ?!SΣ 1..1 code State in which the response is found.
Binding: QuestionnaireResponseStatus (required): In-progress will be used | completed

... subject Σ 0..1 Reference(Resource) The subject of the questions
... encounter Σ 0..1 Reference(Encounter) Encounter created as part of
... authored SΣ 1..1 dateTime File filling date or Notification date or National Repository date
... 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 SC 1..* BackboneElement Groups, subgroups and questions to answer based on the Questionnaire
qrs-1: Nested item can't be beneath both item and 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
.... 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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
QuestionnaireResponse.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
QuestionnaireResponse.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
QuestionnaireResponse.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
QuestionnaireResponse.statusrequiredQuestionnaireResponseStatus
http://hl7.org/fhir/ValueSet/questionnaire-answers-status
from the FHIR Standard
QuestionnaireResponse.item.answer.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-2errorQuestionnaireResponseIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorQuestionnaireResponseIf 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-4errorQuestionnaireResponseIf 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-5errorQuestionnaireResponseIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceQuestionnaireResponseA 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()
qrs-1errorQuestionnaireResponse.itemNested item can't be beneath both item and answer
: (answer.exists() and item.exists()).not()

This structure is derived from QuestionnaireResponse

Summary

Mandatory: 5 elements
Must-Support: 6 elements

Differential View

This structure is derived from QuestionnaireResponse

NameFlagsCard.TypeDescription & Constraintsdoco
.. QuestionnaireResponse 0..* QuestionnaireResponse A structured set of questions and their answers
... identifier S 1..1 Identifier Unique identifier for this response set
.... system 0..1 uri Namespace of the identification value. http://ops.org/esavi/CodIsoPaís or http://ops.org/esavi-CodPais/CodOrg or http://ops.org/esavi- CodPais/CodPais-CodOrg
.... value S 1..1 string Value of the unique identifier. Case Number in UUID
... questionnaire S 1..1 canonical(Questionnaire) Questionnaire resource to which the answers refer
Required Pattern: https://paho.org/fhir/esavi/Questionnaire/CuestionarioESAVI
... status S 1..1 code State in which the response is found.
Binding: QuestionnaireResponseStatus (required): In-progress will be used | completed

... item S 1..* BackboneElement Groups, subgroups and questions to answer based on the Questionnaire

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
QuestionnaireResponse.statusrequiredQuestionnaireResponseStatus
http://hl7.org/fhir/ValueSet/questionnaire-answers-status
from the FHIR Standard

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. 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
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 1..1 Identifier Unique identifier for this response set
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system Σ 0..1 uri Namespace of the identification value. http://ops.org/esavi/CodIsoPaís or http://ops.org/esavi-CodPais/CodOrg or http://ops.org/esavi- CodPais/CodPais-CodOrg
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string Value of the unique identifier. Case Number in UUID
Example General: 123456
... status ?!SΣ 1..1 code State in which the response is found.
Binding: QuestionnaireResponseStatus (required): In-progress will be used | completed

... authored SΣ 1..1 dateTime File filling date or Notification date or National Repository date
... item SC 1..* BackboneElement Groups, subgroups and questions to answer based on the Questionnaire
qrs-1: Nested item can't be beneath both item and answer
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... linkId 1..1 string Pointer to specific item from Questionnaire

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
QuestionnaireResponse.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
QuestionnaireResponse.statusrequiredQuestionnaireResponseStatus
http://hl7.org/fhir/ValueSet/questionnaire-answers-status
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorQuestionnaireResponseIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorQuestionnaireResponseIf 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-4errorQuestionnaireResponseIf 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-5errorQuestionnaireResponseIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceQuestionnaireResponseA 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()
qrs-1errorQuestionnaireResponse.itemNested item can't be beneath both item and answer
: (answer.exists() and item.exists()).not()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. 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
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 1..1 Identifier Unique identifier for this response set
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ 0..1 uri Namespace of the identification value. http://ops.org/esavi/CodIsoPaís or http://ops.org/esavi-CodPais/CodOrg or http://ops.org/esavi- CodPais/CodPais-CodOrg
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string Value of the unique identifier. Case Number in UUID
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... basedOn Σ 0..* Reference(CarePlan | ServiceRequest) Request fulfilled by this QuestionnaireResponse
... partOf Σ 0..* Reference(Observation | Procedure) Part of this action
... questionnaire SΣ 1..1 canonical(Questionnaire) Questionnaire resource to which the answers refer
Required Pattern: https://paho.org/fhir/esavi/Questionnaire/CuestionarioESAVI
... status ?!SΣ 1..1 code State in which the response is found.
Binding: QuestionnaireResponseStatus (required): In-progress will be used | completed

... subject Σ 0..1 Reference(Resource) The subject of the questions
... encounter Σ 0..1 Reference(Encounter) Encounter created as part of
... authored SΣ 1..1 dateTime File filling date or Notification date or National Repository date
... 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 SC 1..* BackboneElement Groups, subgroups and questions to answer based on the Questionnaire
qrs-1: Nested item can't be beneath both item and 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
.... 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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
QuestionnaireResponse.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
QuestionnaireResponse.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
QuestionnaireResponse.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
QuestionnaireResponse.statusrequiredQuestionnaireResponseStatus
http://hl7.org/fhir/ValueSet/questionnaire-answers-status
from the FHIR Standard
QuestionnaireResponse.item.answer.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-2errorQuestionnaireResponseIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorQuestionnaireResponseIf 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-4errorQuestionnaireResponseIf 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-5errorQuestionnaireResponseIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceQuestionnaireResponseA 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()
qrs-1errorQuestionnaireResponse.itemNested item can't be beneath both item and answer
: (answer.exists() and item.exists()).not()

This structure is derived from QuestionnaireResponse

Summary

Mandatory: 5 elements
Must-Support: 6 elements

 

Other representations of profile: CSV, Excel, Schematron