Structured Data Capture
3.0.0-preview - STU 3 International flag

This page is part of the Structured Data Capture FHIR IG (v3.0.0-preview: STU 3 Draft) based on FHIR R4. The current version which supercedes this version is 3.0.0. For a full list of available versions, see the Directory of published versions

Resource Profile: Task Questionnaire

Official URL: http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-task Version: 3.0.0-preview
Standards status: Draft Maturity Level: 0 Computable Name: TaskQuestionnaire

Defines how Task is used to ask for a Questionnaire to be completed

Scope and Usage

This profile inherits from the base Task. It identifies core elements and extensions that must be supported and highlights other elements that, while not required, is used to ask for a Questionnaire to be completed.

Formal Views of Profile Content

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

This structure is derived from Task

Summary

Mandatory: 4 elements (6 nested mandatory elements)
Must-Support: 20 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Task.input is sliced based on the value of pattern:type
  • The element Task.output is sliced based on the value of pattern:type

Maturity: 0

This structure is derived from Task

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task I0..*TaskA task to be performed
sdc-t1: Either code is 'fulfill', focus is ServiceRequest and no 'questionnaire' input; or code is 'complete-questionnaire', focus is omitted and 'questionnaire' input is present
... status S1..1codedraft | requested | received | accepted | +
... intent S1..1codeunknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
... code S1..1CodeableConceptTask Type
Binding: SDC Task Code (required)
... for S0..1Reference(Resource)Patient or other Questionnaire is for
... authoredOn S1..1dateTimeTask Creation Date
... requester S1..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)Who is asking for task to be done
... owner S0..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Who should complete questionnaire
... reasonCode S0..1CodeableConceptWhy task is needed
... Slices for input S0..*BackboneElementInformation used to perform task
Slice: Unordered, Open by pattern:type
.... input:questionnaire SI0..1BackboneElementInformation used to perform task
..... type S1..1CodeableConceptLabel for the input
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: questionnaire
..... value[x] S1..1canonical()url
.... input:responseEndpoint S0..*BackboneElementInformation used to perform task
..... type S1..1CodeableConceptLabel for the input
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: response-endpoint
..... value[x] S1..1urlurl
... Slices for output S0..*BackboneElementInformation produced as part of task
Slice: Unordered, Open by pattern:type
.... output:response S0..1BackboneElementInformation produced as part of task
..... type S1..1CodeableConceptLabel for output
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: questionnaire-response
..... value[x] S1..1Reference(QuestionnaireResponse)url

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Task I0..*TaskA task to be performed
sdc-t1: Either code is 'fulfill', focus is ServiceRequest and no 'questionnaire' input; or code is 'complete-questionnaire', focus is omitted and 'questionnaire' input is present
... id Σ0..1stringLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages: A human language.

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..*IdentifierTask Instance Identifier
... instantiatesCanonical Σ0..1canonical(ActivityDefinition)Formal definition of task
... instantiatesUri Σ0..1uriFormal definition of task
... basedOn Σ0..*Reference(Resource)Request fulfilled by this task
... groupIdentifier Σ0..1IdentifierRequisition or grouper id
... partOf Σ0..*Reference(Task)Composite task
... status ?!SΣ1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.

... statusReason Σ0..1CodeableConceptReason for current status
Binding: (unbound) (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.

... businessStatus Σ0..1CodeableConceptE.g. "Specimen collected", "IV prepped"
Binding: (unbound) (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.

... intent SΣ1..1codeunknown | 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.

... priority 0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.

... code SΣ1..1CodeableConceptTask Type
Binding: SDC Task Code (required)
... description Σ0..1stringHuman-readable explanation of task
... focus SΣI0..1Reference(Questionnaire Service Request)What task is acting on
... for SΣ0..1Reference(Resource)Patient or other Questionnaire is for
... encounter Σ0..1Reference(Encounter)Healthcare event during which this task originated
... executionPeriod Σ0..1PeriodStart and end time of execution
... authoredOn SI1..1dateTimeTask Creation Date
... lastModified ΣI0..1dateTimeTask Last Modified Date
... requester SΣ1..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)Who is asking for task to be done
... performerType 0..*CodeableConceptRequested performer
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.


... owner SΣ0..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Who should complete questionnaire
... location Σ0..1Reference(Location)Where task occurs
... reasonCode S0..1CodeableConceptWhy task is needed
Binding: (unbound) (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.

... reasonReference 0..1Reference(Resource)Why task is needed
... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... note 0..*AnnotationComments made about the task
... relevantHistory 0..*Reference(Provenance)Key events in history of the Task
... restriction 0..1BackboneElementConstraints on fulfillment tasks
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... repetitions 0..1positiveIntHow many times to repeat
.... period 0..1PeriodWhen fulfillment sought
.... recipient 0..*Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization)For whom is fulfillment sought?
... Slices for input S0..*BackboneElementInformation used to perform task
Slice: Unordered, Open by pattern:type
.... input:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type 1..1CodeableConceptLabel for the input
Binding: (unbound) (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..1Content to use in performing the task
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCanonicalcanonical(Any)
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueUrlurl
...... valueUuiduuid
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueContactDetailContactDetail
...... valueContributorContributor
...... valueDataRequirementDataRequirement
...... valueExpressionExpression
...... valueParameterDefinitionParameterDefinition
...... valueRelatedArtifactRelatedArtifact
...... valueTriggerDefinitionTriggerDefinition
...... valueUsageContextUsageContext
...... valueDosageDosage
...... valueMetaMeta
.... input:questionnaire SI0..1BackboneElementInformation used to perform task
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type S1..1CodeableConceptLabel for the input
Binding: (unbound) (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
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: questionnaire
....... display0..1stringRepresentation defined by the system
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] S1..1canonical()url
.... input:responseEndpoint S0..*BackboneElementInformation used to perform task
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type S1..1CodeableConceptLabel for the input
Binding: (unbound) (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
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: response-endpoint
....... display0..1stringRepresentation defined by the system
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] S1..1urlurl
... Slices for output S0..*BackboneElementInformation produced as part of task
Slice: Unordered, Open by pattern:type
.... output:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type 1..1CodeableConceptLabel for output
Binding: (unbound) (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..1Result of output
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCanonicalcanonical(Any)
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueUrlurl
...... valueUuiduuid
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueContactDetailContactDetail
...... valueContributorContributor
...... valueDataRequirementDataRequirement
...... valueExpressionExpression
...... valueParameterDefinitionParameterDefinition
...... valueRelatedArtifactRelatedArtifact
...... valueTriggerDefinitionTriggerDefinition
...... valueUsageContextUsageContext
...... valueDosageDosage
...... valueMetaMeta
.... output:response S0..1BackboneElementInformation produced as part of task
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type S1..1CodeableConceptLabel for output
Binding: (unbound) (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
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: questionnaire-response
....... display0..1stringRepresentation defined by the system
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] S1..1Reference(QuestionnaireResponse)url

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Task I0..*TaskA task to be performed
sdc-t1: Either code is 'fulfill', focus is ServiceRequest and no 'questionnaire' input; or code is 'complete-questionnaire', focus is omitted and 'questionnaire' input is present
... status ?!Σ1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.

... intent Σ1..1codeunknown | 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.

... code Σ1..1CodeableConceptTask Type
Binding: SDC Task Code (required)
... for Σ0..1Reference(Resource)Patient or other Questionnaire is for
... authoredOn I1..1dateTimeTask Creation Date
... requester Σ1..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)Who is asking for task to be done
... owner Σ0..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Who should complete questionnaire
... reasonCode 0..1CodeableConceptWhy task is needed
Binding: (unbound) (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.

... Slices for input 0..*BackboneElementInformation used to perform task
Slice: Unordered, Open by pattern:type
.... input:questionnaire I0..1BackboneElementInformation used to perform task
..... type 1..1CodeableConceptLabel for the input
Binding: (unbound) (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
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: questionnaire
..... value[x] 1..1canonical()url
.... input:responseEndpoint 0..*BackboneElementInformation used to perform task
..... type 1..1CodeableConceptLabel for the input
Binding: (unbound) (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
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: response-endpoint
..... value[x] 1..1urlurl
... Slices for output 0..*BackboneElementInformation produced as part of task
Slice: Unordered, Open by pattern:type
.... output:response 0..1BackboneElementInformation produced as part of task
..... type 1..1CodeableConceptLabel for output
Binding: (unbound) (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
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: questionnaire-response
..... value[x] 1..1Reference(QuestionnaireResponse)url

doco Documentation for this format

This structure is derived from Task

Summary

Mandatory: 4 elements (6 nested mandatory elements)
Must-Support: 20 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Task.input is sliced based on the value of pattern:type
  • The element Task.output is sliced based on the value of pattern:type

Maturity: 0

Differential View

This structure is derived from Task

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task I0..*TaskA task to be performed
sdc-t1: Either code is 'fulfill', focus is ServiceRequest and no 'questionnaire' input; or code is 'complete-questionnaire', focus is omitted and 'questionnaire' input is present
... status S1..1codedraft | requested | received | accepted | +
... intent S1..1codeunknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
... code S1..1CodeableConceptTask Type
Binding: SDC Task Code (required)
... for S0..1Reference(Resource)Patient or other Questionnaire is for
... authoredOn S1..1dateTimeTask Creation Date
... requester S1..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)Who is asking for task to be done
... owner S0..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Who should complete questionnaire
... reasonCode S0..1CodeableConceptWhy task is needed
... Slices for input S0..*BackboneElementInformation used to perform task
Slice: Unordered, Open by pattern:type
.... input:questionnaire SI0..1BackboneElementInformation used to perform task
..... type S1..1CodeableConceptLabel for the input
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: questionnaire
..... value[x] S1..1canonical()url
.... input:responseEndpoint S0..*BackboneElementInformation used to perform task
..... type S1..1CodeableConceptLabel for the input
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: response-endpoint
..... value[x] S1..1urlurl
... Slices for output S0..*BackboneElementInformation produced as part of task
Slice: Unordered, Open by pattern:type
.... output:response S0..1BackboneElementInformation produced as part of task
..... type S1..1CodeableConceptLabel for output
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: questionnaire-response
..... value[x] S1..1Reference(QuestionnaireResponse)url

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task I0..*TaskA task to be performed
sdc-t1: Either code is 'fulfill', focus is ServiceRequest and no 'questionnaire' input; or code is 'complete-questionnaire', focus is omitted and 'questionnaire' input is present
... id Σ0..1stringLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages: A human language.

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..*IdentifierTask Instance Identifier
... instantiatesCanonical Σ0..1canonical(ActivityDefinition)Formal definition of task
... instantiatesUri Σ0..1uriFormal definition of task
... basedOn Σ0..*Reference(Resource)Request fulfilled by this task
... groupIdentifier Σ0..1IdentifierRequisition or grouper id
... partOf Σ0..*Reference(Task)Composite task
... status ?!SΣ1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.

... statusReason Σ0..1CodeableConceptReason for current status
Binding: (unbound) (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.

... businessStatus Σ0..1CodeableConceptE.g. "Specimen collected", "IV prepped"
Binding: (unbound) (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.

... intent SΣ1..1codeunknown | 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.

... priority 0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.

... code SΣ1..1CodeableConceptTask Type
Binding: SDC Task Code (required)
... description Σ0..1stringHuman-readable explanation of task
... focus SΣI0..1Reference(Questionnaire Service Request)What task is acting on
... for SΣ0..1Reference(Resource)Patient or other Questionnaire is for
... encounter Σ0..1Reference(Encounter)Healthcare event during which this task originated
... executionPeriod Σ0..1PeriodStart and end time of execution
... authoredOn SI1..1dateTimeTask Creation Date
... lastModified ΣI0..1dateTimeTask Last Modified Date
... requester SΣ1..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)Who is asking for task to be done
... performerType 0..*CodeableConceptRequested performer
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.


... owner SΣ0..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Who should complete questionnaire
... location Σ0..1Reference(Location)Where task occurs
... reasonCode S0..1CodeableConceptWhy task is needed
Binding: (unbound) (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.

... reasonReference 0..1Reference(Resource)Why task is needed
... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... note 0..*AnnotationComments made about the task
... relevantHistory 0..*Reference(Provenance)Key events in history of the Task
... restriction 0..1BackboneElementConstraints on fulfillment tasks
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... repetitions 0..1positiveIntHow many times to repeat
.... period 0..1PeriodWhen fulfillment sought
.... recipient 0..*Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization)For whom is fulfillment sought?
... Slices for input S0..*BackboneElementInformation used to perform task
Slice: Unordered, Open by pattern:type
.... input:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type 1..1CodeableConceptLabel for the input
Binding: (unbound) (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..1Content to use in performing the task
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCanonicalcanonical(Any)
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueUrlurl
...... valueUuiduuid
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueContactDetailContactDetail
...... valueContributorContributor
...... valueDataRequirementDataRequirement
...... valueExpressionExpression
...... valueParameterDefinitionParameterDefinition
...... valueRelatedArtifactRelatedArtifact
...... valueTriggerDefinitionTriggerDefinition
...... valueUsageContextUsageContext
...... valueDosageDosage
...... valueMetaMeta
.... input:questionnaire SI0..1BackboneElementInformation used to perform task
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type S1..1CodeableConceptLabel for the input
Binding: (unbound) (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
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: questionnaire
....... display0..1stringRepresentation defined by the system
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] S1..1canonical()url
.... input:responseEndpoint S0..*BackboneElementInformation used to perform task
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type S1..1CodeableConceptLabel for the input
Binding: (unbound) (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
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: response-endpoint
....... display0..1stringRepresentation defined by the system
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] S1..1urlurl
... Slices for output S0..*BackboneElementInformation produced as part of task
Slice: Unordered, Open by pattern:type
.... output:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type 1..1CodeableConceptLabel for output
Binding: (unbound) (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..1Result of output
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCanonicalcanonical(Any)
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueUrlurl
...... valueUuiduuid
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueContactDetailContactDetail
...... valueContributorContributor
...... valueDataRequirementDataRequirement
...... valueExpressionExpression
...... valueParameterDefinitionParameterDefinition
...... valueRelatedArtifactRelatedArtifact
...... valueTriggerDefinitionTriggerDefinition
...... valueUsageContextUsageContext
...... valueDosageDosage
...... valueMetaMeta
.... output:response S0..1BackboneElementInformation produced as part of task
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type S1..1CodeableConceptLabel for output
Binding: (unbound) (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
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/sdc/CodeSystem/temp
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: questionnaire-response
....... display0..1stringRepresentation defined by the system
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] S1..1Reference(QuestionnaireResponse)url

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet / Code
Task.languagepreferredCommonLanguages
Max Binding: AllLanguages
Task.statusrequiredTaskStatus
Task.statusReasonexample
Task.businessStatusexample
Task.intentrequiredTaskIntent
Task.priorityrequiredRequestPriority
Task.coderequiredTaskCode
Task.performerTypepreferredProcedurePerformerRoleCodes
Task.reasonCodeexample
Task.input.typeexample
Task.input:questionnaire.typeexamplePattern: questionnaire
Task.input:responseEndpoint.typeexamplePattern: response-endpoint
Task.output.typeexample
Task.output:response.typeexamplePattern: questionnaire-response

Constraints

IdGradePathDetailsRequirements
dom-2errorTaskIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorTaskIf 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-4errorTaskIf 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-5errorTaskIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6Best PracticeTaskA resource should have narrative for robust management
: text.`div`.exists()
inv-1errorTaskLast modified date must be greater than or equal to authored-on date.
: lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn
sdc-t1errorTaskEither 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())
ele-1errorTask.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.instantiatesCanonicalAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.instantiatesUriAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.basedOnAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.groupIdentifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.partOfAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.statusReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.businessStatusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.intentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.priorityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.descriptionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.focusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.forAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.encounterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.executionPeriodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.authoredOnAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.lastModifiedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.requesterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.performerTypeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.ownerAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.locationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.reasonCodeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.reasonReferenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.insuranceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.noteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.relevantHistoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.restrictionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.restriction.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.restriction.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.restriction.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.restriction.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.restriction.repetitionsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.restriction.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.restriction.recipientAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.inputAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.input.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.input.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.input.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.input.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.input.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.input.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.input:questionnaireAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.input:questionnaire.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.input:questionnaire.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.input:questionnaire.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.input:questionnaire.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.input:questionnaire.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.input:questionnaire.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.input:responseEndpointAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.input:responseEndpoint.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.input:responseEndpoint.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.input:responseEndpoint.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.input:responseEndpoint.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.input:responseEndpoint.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.input:responseEndpoint.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.outputAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.output.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.output.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.output.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.output.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.output.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.output.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.output:responseAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.output:response.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.output:response.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.output:response.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorTask.output:response.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorTask.output:response.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorTask.output:response.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())