QI-Core Implementation Guide
7.0.0-ballot - STU7 Ballot United States of America flag

This page is part of the Quality Improvement Core Framework (v7.0.0-ballot: STU7 (v7.0.0) Ballot 1) based on FHIR (HL7® FHIR® Standard) R4. The current version which supersedes this version is 6.0.0. For a full list of available versions, see the Directory of published versions

Resource Profile: QICore Task

Official URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-task Version: 7.0.0-ballot
Active as of 2018-08-22 Computable Name: QICoreTask

Profile of Task for decision support/quality metrics. Defines the core set of elements and extensions for quality rule and measure authors.

QI Elements:
  • identifier: Task Instance Identifier
  • basedOn: (QI) Request fulfilled by this task
  • status: draft​ | requested​ | received​ | accepted​ | ready​ | cancelled​ | in-progress​ | on-hold​ | failed​ | completed | entered-in-error
  • intent: unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance
  • priority: routine | urgent | asap | stat
  • code: Task Type
  • executionPeriod: (QI) Start and end time of execution
Primary code path: code
(PCPath) This element is the primary code path for this resource CQL Retrieve


NOTE TO BALLOT REVIEWERS:
  • US Core 7.0, and thus QI-Core 7.0, has a new approach to USCDI requirements.
    • As noted in the US Core 7.0 Must Support section, US Core 7.0 no longer highlights mandatory (cardinality 1..* or 1..1) and Must Support elements with a (USCDI) indicator as such items must be supported for interoperability.
    • Those USCDI elements that are not mandatory or Must Support now include an indicator (ADDITIONAL USCDI) in US Core. QI-Core 7.0 does not reference USCDI elements; rather, users should access US Core 7.0 to understand its implementation of USCDI version 4.
  • We invite comments about the approach and suggestions for other options that would also avoid unnecessary noise or reading load to the QI-Core profile representation.
  • Further, QI-Core 7.0 does not discuss USCDI+Quality because at the time of ballot preparation, no published version of USCDI+Quality is available. We seek reviewer advice regarding how QI-Core might address future USCDI+Quality.

Usage

See the patterns page for implementation and usage patterns.

The Task and TaskRejected profiles represent the positive and negative statements for a task.

Examples

Task Example

Usage:

Formal Views of Profile Content

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

This structure is derived from Task

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task 0..* Task A task to be performed
... identifier 1..* Identifier (QI-Core) Task Instance Identifier
... basedOn 0..* Reference(Resource) (QI) Request fulfilled by this task
... status 1..1 code (QI-Core) draft​ | requested​ | received​ | accepted​ | ready​ | cancelled​ | in-progress​ | on-hold​ | failed​ | completed | entered-in-error
Binding: Non-Negative Task Status (required)
... priority 1..1 code (QI-Core) routine | urgent | asap | stat
... code 1..1 CodeableConcept (QI-Core) Task Type
Binding: TaskCode (preferred): Codes to identify what the task involves. These will typically be specific to a particular workflow

... executionPeriod 1..1 Period (QI) Start and end time of execution
... reasonCode 0..1 CodeableConcept Why task is needed

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Task.statusrequiredNonNegativeTaskStatus
http://hl7.org/fhir/us/qicore/ValueSet/qicore-non-negative-task-status
from this IG
Task.codepreferredTaskCode
http://hl7.org/fhir/ValueSet/task-code
from the FHIR Standard
NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C 0..* Task A task to be performed
inv-1: Last modified date must be greater than or equal to authored-on date.
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 1..* Identifier (QI-Core) Task Instance Identifier
... status ?!Σ 1..1 code (QI-Core) draft​ | requested​ | received​ | accepted​ | ready​ | cancelled​ | in-progress​ | on-hold​ | failed​ | completed | entered-in-error
Binding: Non-Negative Task Status (required)
... intent Σ 1..1 code (QI-Core) unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance
Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order.

... priority 1..1 code (QI-Core) routine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.

... code Σ 1..1 CodeableConcept (QI-Core) Task Type
Binding: TaskCode (preferred): Codes to identify what the task involves. These will typically be specific to a particular workflow

... executionPeriod Σ 1..1 Period (QI) Start and end time of execution
... reasonCode 0..1 CodeableConcept Why task is needed
Binding: (unbound) (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Task.statusrequiredNonNegativeTaskStatus
http://hl7.org/fhir/us/qicore/ValueSet/qicore-non-negative-task-status
from this IG
Task.intentrequiredTaskIntent
http://hl7.org/fhir/ValueSet/task-intent|4.0.1
from the FHIR Standard
Task.priorityrequiredRequestPriority
http://hl7.org/fhir/ValueSet/request-priority|4.0.1
from the FHIR Standard
Task.codepreferredTaskCode
http://hl7.org/fhir/ValueSet/task-code
from the FHIR Standard
Task.reasonCodeexample

Constraints

IdGradePath(s)DetailsRequirements
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()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-1errorTaskLast modified date must be greater than or equal to authored-on date.
: lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn
NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C 0..* Task A task to be performed
inv-1: Last modified date must be greater than or equal to authored-on date.
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 1..* Identifier (QI-Core) Task Instance Identifier
... instantiatesCanonical Σ 0..1 canonical(ActivityDefinition) Formal definition of task
... instantiatesUri Σ 0..1 uri Formal definition of task
... basedOn Σ 0..* Reference(Resource) (QI) Request fulfilled by this task
... groupIdentifier Σ 0..1 Identifier Requisition or grouper id
... partOf Σ 0..* Reference(Task) Composite task
... status ?!Σ 1..1 code (QI-Core) draft​ | requested​ | received​ | accepted​ | ready​ | cancelled​ | in-progress​ | on-hold​ | failed​ | completed | entered-in-error
Binding: Non-Negative Task Status (required)
... statusReason Σ 0..1 CodeableConcept Reason 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..1 CodeableConcept E.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 Σ 1..1 code (QI-Core) unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance
Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order.

... priority 1..1 code (QI-Core) routine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.

... code Σ 1..1 CodeableConcept (QI-Core) Task Type
Binding: TaskCode (preferred): Codes to identify what the task involves. These will typically be specific to a particular workflow

... description Σ 0..1 string Human-readable explanation of task
... focus Σ 0..1 Reference(Resource) What task is acting on
... for Σ 0..1 Reference(Resource) Beneficiary of the Task
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this task originated
... executionPeriod Σ 1..1 Period (QI) Start and end time of execution
... authoredOn C 0..1 dateTime Task Creation Date
... lastModified ΣC 0..1 dateTime Task Last Modified Date
... requester Σ 0..1 Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) Who is asking for task to be done
... performerType 0..* CodeableConcept Requested performer
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.


... owner Σ 0..1 Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson) Responsible individual
... location Σ 0..1 Reference(Location) Where task occurs
... reasonCode 0..1 CodeableConcept Why task is needed
Binding: (unbound) (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.

... 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?
... input 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 1..1 CodeableConcept Label 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..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
... output 0..* 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 1..1 CodeableConcept Label 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..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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Task.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Task.statusrequiredNonNegativeTaskStatus
http://hl7.org/fhir/us/qicore/ValueSet/qicore-non-negative-task-status
from this IG
Task.statusReasonexample
Task.businessStatusexample
Task.intentrequiredTaskIntent
http://hl7.org/fhir/ValueSet/task-intent|4.0.1
from the FHIR Standard
Task.priorityrequiredRequestPriority
http://hl7.org/fhir/ValueSet/request-priority|4.0.1
from the FHIR Standard
Task.codepreferredTaskCode
http://hl7.org/fhir/ValueSet/task-code
from the FHIR Standard
Task.performerTypepreferredProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Task.reasonCodeexample
Task.input.typeexample
Task.output.typeexample

Constraints

IdGradePath(s)DetailsRequirements
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()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-1errorTaskLast modified date must be greater than or equal to authored-on date.
: lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn

This structure is derived from Task

Summary

Mandatory: 6 elements

Differential View

This structure is derived from Task

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task 0..* Task A task to be performed
... identifier 1..* Identifier (QI-Core) Task Instance Identifier
... basedOn 0..* Reference(Resource) (QI) Request fulfilled by this task
... status 1..1 code (QI-Core) draft​ | requested​ | received​ | accepted​ | ready​ | cancelled​ | in-progress​ | on-hold​ | failed​ | completed | entered-in-error
Binding: Non-Negative Task Status (required)
... priority 1..1 code (QI-Core) routine | urgent | asap | stat
... code 1..1 CodeableConcept (QI-Core) Task Type
Binding: TaskCode (preferred): Codes to identify what the task involves. These will typically be specific to a particular workflow

... executionPeriod 1..1 Period (QI) Start and end time of execution
... reasonCode 0..1 CodeableConcept Why task is needed

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Task.statusrequiredNonNegativeTaskStatus
http://hl7.org/fhir/us/qicore/ValueSet/qicore-non-negative-task-status
from this IG
Task.codepreferredTaskCode
http://hl7.org/fhir/ValueSet/task-code
from the FHIR Standard

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C 0..* Task A task to be performed
inv-1: Last modified date must be greater than or equal to authored-on date.
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 1..* Identifier (QI-Core) Task Instance Identifier
... status ?!Σ 1..1 code (QI-Core) draft​ | requested​ | received​ | accepted​ | ready​ | cancelled​ | in-progress​ | on-hold​ | failed​ | completed | entered-in-error
Binding: Non-Negative Task Status (required)
... intent Σ 1..1 code (QI-Core) unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance
Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order.

... priority 1..1 code (QI-Core) routine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.

... code Σ 1..1 CodeableConcept (QI-Core) Task Type
Binding: TaskCode (preferred): Codes to identify what the task involves. These will typically be specific to a particular workflow

... executionPeriod Σ 1..1 Period (QI) Start and end time of execution
... reasonCode 0..1 CodeableConcept Why task is needed
Binding: (unbound) (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Task.statusrequiredNonNegativeTaskStatus
http://hl7.org/fhir/us/qicore/ValueSet/qicore-non-negative-task-status
from this IG
Task.intentrequiredTaskIntent
http://hl7.org/fhir/ValueSet/task-intent|4.0.1
from the FHIR Standard
Task.priorityrequiredRequestPriority
http://hl7.org/fhir/ValueSet/request-priority|4.0.1
from the FHIR Standard
Task.codepreferredTaskCode
http://hl7.org/fhir/ValueSet/task-code
from the FHIR Standard
Task.reasonCodeexample

Constraints

IdGradePath(s)DetailsRequirements
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()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-1errorTaskLast modified date must be greater than or equal to authored-on date.
: lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C 0..* Task A task to be performed
inv-1: Last modified date must be greater than or equal to authored-on date.
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 1..* Identifier (QI-Core) Task Instance Identifier
... instantiatesCanonical Σ 0..1 canonical(ActivityDefinition) Formal definition of task
... instantiatesUri Σ 0..1 uri Formal definition of task
... basedOn Σ 0..* Reference(Resource) (QI) Request fulfilled by this task
... groupIdentifier Σ 0..1 Identifier Requisition or grouper id
... partOf Σ 0..* Reference(Task) Composite task
... status ?!Σ 1..1 code (QI-Core) draft​ | requested​ | received​ | accepted​ | ready​ | cancelled​ | in-progress​ | on-hold​ | failed​ | completed | entered-in-error
Binding: Non-Negative Task Status (required)
... statusReason Σ 0..1 CodeableConcept Reason 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..1 CodeableConcept E.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 Σ 1..1 code (QI-Core) unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance
Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order.

... priority 1..1 code (QI-Core) routine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.

... code Σ 1..1 CodeableConcept (QI-Core) Task Type
Binding: TaskCode (preferred): Codes to identify what the task involves. These will typically be specific to a particular workflow

... description Σ 0..1 string Human-readable explanation of task
... focus Σ 0..1 Reference(Resource) What task is acting on
... for Σ 0..1 Reference(Resource) Beneficiary of the Task
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this task originated
... executionPeriod Σ 1..1 Period (QI) Start and end time of execution
... authoredOn C 0..1 dateTime Task Creation Date
... lastModified ΣC 0..1 dateTime Task Last Modified Date
... requester Σ 0..1 Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) Who is asking for task to be done
... performerType 0..* CodeableConcept Requested performer
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.


... owner Σ 0..1 Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson) Responsible individual
... location Σ 0..1 Reference(Location) Where task occurs
... reasonCode 0..1 CodeableConcept Why task is needed
Binding: (unbound) (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.

... 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?
... input 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 1..1 CodeableConcept Label 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..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
... output 0..* 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 1..1 CodeableConcept Label 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..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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Task.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Task.statusrequiredNonNegativeTaskStatus
http://hl7.org/fhir/us/qicore/ValueSet/qicore-non-negative-task-status
from this IG
Task.statusReasonexample
Task.businessStatusexample
Task.intentrequiredTaskIntent
http://hl7.org/fhir/ValueSet/task-intent|4.0.1
from the FHIR Standard
Task.priorityrequiredRequestPriority
http://hl7.org/fhir/ValueSet/request-priority|4.0.1
from the FHIR Standard
Task.codepreferredTaskCode
http://hl7.org/fhir/ValueSet/task-code
from the FHIR Standard
Task.performerTypepreferredProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Task.reasonCodeexample
Task.input.typeexample
Task.output.typeexample

Constraints

IdGradePath(s)DetailsRequirements
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()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-1errorTaskLast modified date must be greater than or equal to authored-on date.
: lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn

This structure is derived from Task

Summary

Mandatory: 6 elements

 

Other representations of profile: CSV, Excel, Schematron