Da Vinci - Coverage Requirements Discovery
2.2.0-snapshot - STU 2.2 Peer Review

Da Vinci - Coverage Requirements Discovery, published by HL7 International / Financial Management. This guide is not an authorized publication; it is the continuous build for version 2.2.0-snapshot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/davinci-crd/ and changes regularly. See the Directory of published versions

## Resource Profile: CRD Questionnaire Task

Official URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-taskquestionnaire | Version: 2.2.0-snapshot | Highlight text changes?
Standards status: Trial-use Active as of 2026-02-19 | Maturity Level: 1 | Computable Name: CRDTaskQuestionnaire
Other Identifiers: OID:2.16.840.1.113883.4.642.40.18.42.18

This profile specifies constraints on the Task resource to support requests for form (Questionnaire) completion.

### Usage

This profile on Task allows a response CDS Hooks Card to request a user to fill out a Questionnaire (pointed to as a Task.input). It supports the process described in the Deferring Card Actions portion of the spec.

Information provided in Must Support elements will commonly be required for CRD Servers to perform coverage requirements discovery. </br>

Usages:

- Use this Profile: CRD CDSHooks Form Completion Response (Logical Definition)

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Task | C | 0..* | SDCTaskQuestionnaire | A task to be performed Constraints: inv-1, sdc-t1
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
basedOn | S Σ | 0..* | Reference(Resource) | Request fulfilled by this task
status | ?!S Σ | 1..1 | code | draft | requested | received | accepted | + Binding: TaskStatus (required): The current status of the task. Required Pattern: ready
intent | S Σ | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order. Required Pattern: order
code | S Σ | 1..1 | CodeableConcept | Task Type Binding: SDC Task Code (required)
for | S Σ | 1..1 | Reference(CRD Patient) | Patient or other Questionnaire is for
encounter | S Σ | 0..1 | Reference(CRD Encounter) | Healthcare event during which this task originated
authoredOn | S C | 1..1 | dateTime | Task Creation Date
requester | S Σ | 1..1 | Reference(CRD Organization) | Payer requesting form completion
owner | S Σ | 0..1 | Reference(CRD Practitioner) | Who should complete questionnaire
reasonCode | S | 0..1 | CodeableConcept | Why task is needed Binding Description: (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.
text | S Σ | 0..1 | string | Plain text representation of the concept
Slices for input | S | 1..* | BackboneElement | Information used to perform task Slice: Unordered, Open by pattern:type
input:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type |  | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.
value[x] |  | 1..1 |  | Content to use in performing the task
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
input:questionnaire | S C | 1..1 | BackboneElement | Information used to perform task
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: questionnaire
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
value[x] | S | 1..1 | canonical() | url
input:responseEndpoint | S | 0..* | BackboneElement | Information used to perform task
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: response-endpoint
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
value[x] | S | 1..1 | url | url
Slices for output | S | 0..* | BackboneElement | Information produced as part of task Slice: Unordered, Open by pattern:type
output:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type |  | 1..1 | CodeableConcept | Label for output Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.
value[x] |  | 1..1 |  | Result of output
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
output:response | S | 0..1 | BackboneElement | Information produced as part of task
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for output Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: questionnaire-response
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
value[x] | S | 1..1 | Reference(QuestionnaireResponse) | url
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Task.status | Base | required | TaskStatus | 📍4.0.1 | FHIR Std.
Task.intent | Base | required | TaskIntent | 📍4.0.1 | FHIR Std.
Task.code | Base | required | SDC Task Code | 📦3.0.0 | Structured Data Capture v3.0
Task.reasonCode | Base | example |  | Not State | Unknown
Task.input.type | Base | example |  | Not State | Unknown
Task.input:questionnaire.​type | Base | example |  | Not State | Unknown
Task.input:responseEndpoint.​type | Base | example |  | Not State | Unknown
Task.output.type | Base | example |  | Not State | Unknown
Task.output:response.​type | Base | example |  | Not State | Unknown

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Task | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Task | 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 | Task | 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 | Task | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Task | 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()`
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. | `lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn`
sdc-t1 | error | Task | Either code is 'fulfill', focus is ServiceRequest and no 'questionnaire' input; or code is 'complete-questionnaire', focus is omitted and 'questionnaire' input is present | `(code.coding.where(code='fulfill' and system='http://hl7.org/fhir/CodeSystem/task-code').exists() and (focus.resolve() is ServiceRequest) and input.where(type.coding.where(system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp' and code='questionnaire')).exists().not()) or (code.coding.where(code='complete-questionnaire' and system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp').exists() and focus.exists().not() and input.where(type.coding.where(system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp' and code='questionnaire')).exists())`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Task |  | 0..* | SDCTaskQuestionnaire | A task to be performed
basedOn | S | 0..* | Reference(Resource) | Request fulfilled by this task
status |  | 1..1 | code | draft | requested | received | accepted | + Required Pattern: ready
intent |  | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Required Pattern: order
focus |  | 0..0 |  | What task is acting on
for |  | 1..1 | Reference(CRD Patient) | Patient or other Questionnaire is for
encounter | S | 0..1 | Reference(CRD Encounter) | Healthcare event during which this task originated
requester |  | 1..1 | Reference(CRD Organization) | Payer requesting form completion
owner |  | 0..1 | Reference(CRD Practitioner) | Who should complete questionnaire
reasonCode |  |  |  |
text | S | 0..1 | string | Plain text representation of the concept
input |  | 1..* | BackboneElement | Information used to perform task
Slices for input |  |  |  | Content/Rules for all slices
input:questionnaire |  | 1..1 | BackboneElement | Information used to perform task
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Task | C | 0..* | SDCTaskQuestionnaire | A task to be performed Constraints: inv-1, sdc-t1
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 Bindings | Purpose
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
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | Task Instance Identifier
instantiatesCanonical | Σ | 0..1 | canonical(ActivityDefinition) | Formal definition of task
instantiatesUri | Σ | 0..1 | uri | Formal definition of task
basedOn | S Σ | 0..* | Reference(Resource) | Request fulfilled by this task
groupIdentifier | Σ | 0..1 | Identifier | Requisition or grouper id
partOf | Σ | 0..* | Reference(Task) | Composite task
status | ?!S Σ | 1..1 | code | draft | requested | received | accepted | + Binding: TaskStatus (required): The current status of the task. Required Pattern: ready
statusReason | Σ | 0..1 | CodeableConcept | Reason for current status Binding Description: (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.
businessStatus | Σ | 0..1 | CodeableConcept | E.g. "Specimen collected", "IV prepped" Binding Description: (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.
intent | S Σ | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order. Required Pattern: order
priority |  | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): The task's priority.
code | S Σ | 1..1 | CodeableConcept | Task Type Binding: SDC Task Code (required)
description | Σ | 0..1 | string | Human-readable explanation of task
for | S Σ | 1..1 | Reference(CRD Patient) | Patient or other Questionnaire is for
encounter | S Σ | 0..1 | Reference(CRD Encounter) | Healthcare event during which this task originated
executionPeriod | Σ | 0..1 | Period | Start and end time of execution
authoredOn | S C | 1..1 | dateTime | Task Creation Date
lastModified | Σ C | 0..1 | dateTime | Task Last Modified Date
requester | S Σ | 1..1 | Reference(CRD Organization) | Payer requesting form completion
performerType |  | 0..* | CodeableConcept | Requested performer Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.
owner | S Σ | 0..1 | Reference(CRD Practitioner) | Who should complete questionnaire
location | Σ | 0..1 | Reference(Location) | Where task occurs
reasonCode | S | 0..1 | CodeableConcept | Why task is needed Binding Description: (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.
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 | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 0..1 | string | Plain text representation of the concept
reasonReference |  | 0..1 | Reference(Resource) | Why task is needed
insurance |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage
note |  | 0..* | Annotation | Comments made about the task
relevantHistory |  | 0..* | Reference(Provenance) | Key events in history of the Task
restriction |  | 0..1 | BackboneElement | Constraints on fulfillment tasks
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
repetitions |  | 0..1 | positiveInt | How many times to repeat
period |  | 0..1 | Period | When fulfillment sought
recipient |  | 0..* | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization) | For whom is fulfillment sought?
Slices for input | S | 1..* | BackboneElement | Information used to perform task Slice: Unordered, Open by pattern:type
input:All Slices |  |  |  | Content/Rules for all slices
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
type |  | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.
value[x] |  | 1..1 |  | Content to use in performing the task
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
input:questionnaire | S C | 1..1 | BackboneElement | Information used to perform task
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
type | S | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: questionnaire
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
value[x] | S | 1..1 | canonical() | url
input:responseEndpoint | S | 0..* | BackboneElement | Information used to perform task
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
type | S | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: response-endpoint
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
value[x] | S | 1..1 | url | url
Slices for output | S | 0..* | BackboneElement | Information produced as part of task Slice: Unordered, Open by pattern:type
output:All Slices |  |  |  | Content/Rules for all slices
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
type |  | 1..1 | CodeableConcept | Label for output Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.
value[x] |  | 1..1 |  | Result of output
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
output:response | S | 0..1 | BackboneElement | Information produced as part of task
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
type | S | 1..1 | CodeableConcept | Label for output Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: questionnaire-response
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
value[x] | S | 1..1 | Reference(QuestionnaireResponse) | url
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Task.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.
Task.status | Base | required | TaskStatus | 📍4.0.1 | FHIR Std.
Task.statusReason | Base | example |  | Not State | Unknown
Task.businessStatus | Base | example |  | Not State | Unknown
Task.intent | Base | required | TaskIntent | 📍4.0.1 | FHIR Std.
Task.priority | Base | required | Request priority | 📍4.0.1 | FHIR Std.
Task.code | Base | required | SDC Task Code | 📦3.0.0 | Structured Data Capture v3.0
Task.performerType | Base | preferred | Procedure Performer Role Codes | 📦4.0.1 | FHIR Std.
Task.reasonCode | Base | example |  | Not State | Unknown
Task.input.type | Base | example |  | Not State | Unknown
Task.input:questionnaire.​type | Base | example |  | Not State | Unknown
Task.input:responseEndpoint.​type | Base | example |  | Not State | Unknown
Task.output.type | Base | example |  | Not State | Unknown
Task.output:response.​type | Base | example |  | Not State | Unknown

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Task | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Task | 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 | Task | 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 | Task | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Task | 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()`
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. | `lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn`
sdc-t1 | error | Task | Either code is 'fulfill', focus is ServiceRequest and no 'questionnaire' input; or code is 'complete-questionnaire', focus is omitted and 'questionnaire' input is present | `(code.coding.where(code='fulfill' and system='http://hl7.org/fhir/CodeSystem/task-code').exists() and (focus.resolve() is ServiceRequest) and input.where(type.coding.where(system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp' and code='questionnaire')).exists().not()) or (code.coding.where(code='complete-questionnaire' and system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp').exists() and focus.exists().not() and input.where(type.coding.where(system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp' and code='questionnaire')).exists())`

Summary

Mandatory: 3 elements
Must-Support: 3 elements
Prohibited: 1 element

Structures

This structure refers to these other structures:

- CRD Patient (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-patient)
- CRD Encounter (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-encounter)
- CRD Organization (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-organization)
- CRD Practitioner (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-practitioner)

Maturity: 1

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Task | C | 0..* | SDCTaskQuestionnaire | A task to be performed Constraints: inv-1, sdc-t1
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
basedOn | S Σ | 0..* | Reference(Resource) | Request fulfilled by this task
status | ?!S Σ | 1..1 | code | draft | requested | received | accepted | + Binding: TaskStatus (required): The current status of the task. Required Pattern: ready
intent | S Σ | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order. Required Pattern: order
code | S Σ | 1..1 | CodeableConcept | Task Type Binding: SDC Task Code (required)
for | S Σ | 1..1 | Reference(CRD Patient) | Patient or other Questionnaire is for
encounter | S Σ | 0..1 | Reference(CRD Encounter) | Healthcare event during which this task originated
authoredOn | S C | 1..1 | dateTime | Task Creation Date
requester | S Σ | 1..1 | Reference(CRD Organization) | Payer requesting form completion
owner | S Σ | 0..1 | Reference(CRD Practitioner) | Who should complete questionnaire
reasonCode | S | 0..1 | CodeableConcept | Why task is needed Binding Description: (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.
text | S Σ | 0..1 | string | Plain text representation of the concept
Slices for input | S | 1..* | BackboneElement | Information used to perform task Slice: Unordered, Open by pattern:type
input:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type |  | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.
value[x] |  | 1..1 |  | Content to use in performing the task
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
input:questionnaire | S C | 1..1 | BackboneElement | Information used to perform task
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: questionnaire
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
value[x] | S | 1..1 | canonical() | url
input:responseEndpoint | S | 0..* | BackboneElement | Information used to perform task
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: response-endpoint
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
value[x] | S | 1..1 | url | url
Slices for output | S | 0..* | BackboneElement | Information produced as part of task Slice: Unordered, Open by pattern:type
output:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type |  | 1..1 | CodeableConcept | Label for output Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.
value[x] |  | 1..1 |  | Result of output
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
output:response | S | 0..1 | BackboneElement | Information produced as part of task
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for output Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: questionnaire-response
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
value[x] | S | 1..1 | Reference(QuestionnaireResponse) | url
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Task.status | Base | required | TaskStatus | 📍4.0.1 | FHIR Std.
Task.intent | Base | required | TaskIntent | 📍4.0.1 | FHIR Std.
Task.code | Base | required | SDC Task Code | 📦3.0.0 | Structured Data Capture v3.0
Task.reasonCode | Base | example |  | Not State | Unknown
Task.input.type | Base | example |  | Not State | Unknown
Task.input:questionnaire.​type | Base | example |  | Not State | Unknown
Task.input:responseEndpoint.​type | Base | example |  | Not State | Unknown
Task.output.type | Base | example |  | Not State | Unknown
Task.output:response.​type | Base | example |  | Not State | Unknown

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Task | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Task | 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 | Task | 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 | Task | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Task | 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()`
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. | `lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn`
sdc-t1 | error | Task | Either code is 'fulfill', focus is ServiceRequest and no 'questionnaire' input; or code is 'complete-questionnaire', focus is omitted and 'questionnaire' input is present | `(code.coding.where(code='fulfill' and system='http://hl7.org/fhir/CodeSystem/task-code').exists() and (focus.resolve() is ServiceRequest) and input.where(type.coding.where(system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp' and code='questionnaire')).exists().not()) or (code.coding.where(code='complete-questionnaire' and system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp').exists() and focus.exists().not() and input.where(type.coding.where(system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp' and code='questionnaire')).exists())`

Differential View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Task |  | 0..* | SDCTaskQuestionnaire | A task to be performed
basedOn | S | 0..* | Reference(Resource) | Request fulfilled by this task
status |  | 1..1 | code | draft | requested | received | accepted | + Required Pattern: ready
intent |  | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Required Pattern: order
focus |  | 0..0 |  | What task is acting on
for |  | 1..1 | Reference(CRD Patient) | Patient or other Questionnaire is for
encounter | S | 0..1 | Reference(CRD Encounter) | Healthcare event during which this task originated
requester |  | 1..1 | Reference(CRD Organization) | Payer requesting form completion
owner |  | 0..1 | Reference(CRD Practitioner) | Who should complete questionnaire
reasonCode |  |  |  |
text | S | 0..1 | string | Plain text representation of the concept
input |  | 1..* | BackboneElement | Information used to perform task
Slices for input |  |  |  | Content/Rules for all slices
input:questionnaire |  | 1..1 | BackboneElement | Information used to perform task
Documentation for this format

Snapshot ViewView

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Task | C | 0..* | SDCTaskQuestionnaire | A task to be performed Constraints: inv-1, sdc-t1
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 Bindings | Purpose
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
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | Task Instance Identifier
instantiatesCanonical | Σ | 0..1 | canonical(ActivityDefinition) | Formal definition of task
instantiatesUri | Σ | 0..1 | uri | Formal definition of task
basedOn | S Σ | 0..* | Reference(Resource) | Request fulfilled by this task
groupIdentifier | Σ | 0..1 | Identifier | Requisition or grouper id
partOf | Σ | 0..* | Reference(Task) | Composite task
status | ?!S Σ | 1..1 | code | draft | requested | received | accepted | + Binding: TaskStatus (required): The current status of the task. Required Pattern: ready
statusReason | Σ | 0..1 | CodeableConcept | Reason for current status Binding Description: (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.
businessStatus | Σ | 0..1 | CodeableConcept | E.g. "Specimen collected", "IV prepped" Binding Description: (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.
intent | S Σ | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order. Required Pattern: order
priority |  | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): The task's priority.
code | S Σ | 1..1 | CodeableConcept | Task Type Binding: SDC Task Code (required)
description | Σ | 0..1 | string | Human-readable explanation of task
for | S Σ | 1..1 | Reference(CRD Patient) | Patient or other Questionnaire is for
encounter | S Σ | 0..1 | Reference(CRD Encounter) | Healthcare event during which this task originated
executionPeriod | Σ | 0..1 | Period | Start and end time of execution
authoredOn | S C | 1..1 | dateTime | Task Creation Date
lastModified | Σ C | 0..1 | dateTime | Task Last Modified Date
requester | S Σ | 1..1 | Reference(CRD Organization) | Payer requesting form completion
performerType |  | 0..* | CodeableConcept | Requested performer Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.
owner | S Σ | 0..1 | Reference(CRD Practitioner) | Who should complete questionnaire
location | Σ | 0..1 | Reference(Location) | Where task occurs
reasonCode | S | 0..1 | CodeableConcept | Why task is needed Binding Description: (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.
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 | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 0..1 | string | Plain text representation of the concept
reasonReference |  | 0..1 | Reference(Resource) | Why task is needed
insurance |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage
note |  | 0..* | Annotation | Comments made about the task
relevantHistory |  | 0..* | Reference(Provenance) | Key events in history of the Task
restriction |  | 0..1 | BackboneElement | Constraints on fulfillment tasks
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
repetitions |  | 0..1 | positiveInt | How many times to repeat
period |  | 0..1 | Period | When fulfillment sought
recipient |  | 0..* | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization) | For whom is fulfillment sought?
Slices for input | S | 1..* | BackboneElement | Information used to perform task Slice: Unordered, Open by pattern:type
input:All Slices |  |  |  | Content/Rules for all slices
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
type |  | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.
value[x] |  | 1..1 |  | Content to use in performing the task
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
input:questionnaire | S C | 1..1 | BackboneElement | Information used to perform task
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
type | S | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: questionnaire
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
value[x] | S | 1..1 | canonical() | url
input:responseEndpoint | S | 0..* | BackboneElement | Information used to perform task
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
type | S | 1..1 | CodeableConcept | Label for the input Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: response-endpoint
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
value[x] | S | 1..1 | url | url
Slices for output | S | 0..* | BackboneElement | Information produced as part of task Slice: Unordered, Open by pattern:type
output:All Slices |  |  |  | Content/Rules for all slices
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
type |  | 1..1 | CodeableConcept | Label for output Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.
value[x] |  | 1..1 |  | Result of output
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
output:response | S | 0..1 | BackboneElement | Information produced as part of task
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
type | S | 1..1 | CodeableConcept | Label for output Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: questionnaire-response
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
value[x] | S | 1..1 | Reference(QuestionnaireResponse) | url
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Task.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std.
Task.status | Base | required | TaskStatus | 📍4.0.1 | FHIR Std.
Task.statusReason | Base | example |  | Not State | Unknown
Task.businessStatus | Base | example |  | Not State | Unknown
Task.intent | Base | required | TaskIntent | 📍4.0.1 | FHIR Std.
Task.priority | Base | required | Request priority | 📍4.0.1 | FHIR Std.
Task.code | Base | required | SDC Task Code | 📦3.0.0 | Structured Data Capture v3.0
Task.performerType | Base | preferred | Procedure Performer Role Codes | 📦4.0.1 | FHIR Std.
Task.reasonCode | Base | example |  | Not State | Unknown
Task.input.type | Base | example |  | Not State | Unknown
Task.input:questionnaire.​type | Base | example |  | Not State | Unknown
Task.input:responseEndpoint.​type | Base | example |  | Not State | Unknown
Task.output.type | Base | example |  | Not State | Unknown
Task.output:response.​type | Base | example |  | Not State | Unknown

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Task | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Task | 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 | Task | 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 | Task | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Task | 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()`
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. | `lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn`
sdc-t1 | error | Task | Either code is 'fulfill', focus is ServiceRequest and no 'questionnaire' input; or code is 'complete-questionnaire', focus is omitted and 'questionnaire' input is present | `(code.coding.where(code='fulfill' and system='http://hl7.org/fhir/CodeSystem/task-code').exists() and (focus.resolve() is ServiceRequest) and input.where(type.coding.where(system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp' and code='questionnaire')).exists().not()) or (code.coding.where(code='complete-questionnaire' and system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp').exists() and focus.exists().not() and input.where(type.coding.where(system='http://hl7.org/fhir/uv/sdc/CodeSystem/temp' and code='questionnaire')).exists())`

Summary

Mandatory: 3 elements
Must-Support: 3 elements
Prohibited: 1 element

Structures

This structure refers to these other structures:

- CRD Patient (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-patient)
- CRD Encounter (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-encounter)
- CRD Organization (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-organization)
- CRD Practitioner (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-practitioner)

Maturity: 1

Other representations of profile: CSV, Excel, Schematron