QI-Core Implementation Guide
4.1.0 - release

Publication Build: This will be filled in by the publication tooling

## Resource Profile: QICoreTaskNotDone

Defining URL: | http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-tasknotdone
Version: | 4.1.0
Name: | QICoreTaskNotDone
Status: | Draft as of 6/23/21
Definition: | Profile of TaskNotDone for decision support/quality metrics. Defines the core set of elements and extensions for quality rule and measure authors.
Publisher: | http://www.hl7.org/Special/committees/cqi/index.cfm
Source Resource: | XML / JSON / Turtle

The official URL for this profile is:

    http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-tasknotdone

Usage

See the patterns page for implementation and usage patterns.

The Task and TaskNotDone profiles represent the positive and negative statements for a task. To ensure instances retrieved meet negative intent, applications should check the status element as illustrated in this example:

    define TaskNotDone:
      [Task] T
        where T.status = 'rejected'

### Examples

Task not done using a value set to indicate what was not done
Task not done using a code to indicate what was not done

### Formal Views of Profile Content

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

- Text Summary
- Differential Table
- Snapshot Table
- Snapshot Table (Must Support)
- All

This structure is derived from Task

Summary

Mandatory: 5 elements
Must-Support: 4 elements
Fixed Value: 1 element

Structures

This structure refers to these other structures:

- QICorePatient (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-notDoneValueSet

This structure is derived from Task

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Task | I | 0..* | Task | A task to be performed tnd-1: to indicate what task was not performed, either at least one coding in the code or a notDoneValueSet extension shall be provided
status | S | 1..1 | code | The potential performer who claimed ownership of the task has decided not to execute it prior to performing any action Fixed Value: rejected
statusReason |  | 1..1 | CodeableConcept | Reason for current status Binding: Negation Reason Codes (extensible)
code | S I | 1..1 | CodeableConcept | Task Type
qicore-notDoneValueSet | S I | 0..1 | canonical(ValueSet) | Url of a value set of activities not requested or performed URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-notDoneValueSet
focus |  | 1..1 | Reference(Resource) | What task is acting on
for |  | 0..1 | Reference(QICorePatient) | Beneficiary of the Task
encounter |  | 0..1 | Reference(Encounter) | Healthcare event during which this task originated
executionPeriod | S | 1..1 | Period | The timing the task was rejected and the reason.
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Task | I | 0..* | Task | A task to be performed tnd-1: to indicate what task was not performed, either at least one coding in the code or a notDoneValueSet extension shall be provided
id | Σ | 0..1 | string | 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) Max Binding: AllLanguages: A human language.
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 |  | 0..* | Identifier | Task Instance Identifier
instantiatesCanonical | Σ | 0..1 | canonical(ActivityDefinition) | Formal definition of task
instantiatesUri | Σ | 0..1 | uri | Formal definition of task
basedOn | Σ | 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 | The potential performer who claimed ownership of the task has decided not to execute it prior to performing any action Binding: TaskStatus (required): The current status of the task. Fixed Value: rejected
statusReason | Σ | 1..1 | CodeableConcept | Reason for current status Binding: Negation Reason Codes (extensible)
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 | 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.
priority |  | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): The task's priority.
code | S Σ I | 1..1 | CodeableConcept | Task Type Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow.
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
qicore-notDoneValueSet | S I | 0..1 | canonical(ValueSet) | Url of a value set of activities not requested or performed URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-notDoneValueSet
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | Σ | 0..1 | string | Plain text representation of the concept
description | Σ | 0..1 | string | Human-readable explanation of task
focus | Σ | 1..1 | Reference(Resource) | What task is acting on
for | Σ | 0..1 | Reference(QICorePatient) | Beneficiary of the Task
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this task originated
executionPeriod | S Σ | 1..1 | Period | The timing the task was rejected and the reason.
authoredOn | I | 0..1 | dateTime | Task Creation Date
lastModified | Σ I | 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 |
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Task | I | 0..* | Task | A task to be performed tnd-1: to indicate what task was not performed, either at least one coding in the code or a notDoneValueSet extension shall be provided
status | ?!Σ | 1..1 | code | The potential performer who claimed ownership of the task has decided not to execute it prior to performing any action Binding: TaskStatus (required): The current status of the task. Fixed Value: rejected
code | Σ I | 1..1 | CodeableConcept | Task Type Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow.
qicore-notDoneValueSet | I | 0..1 | canonical(ValueSet) | Url of a value set of activities not requested or performed URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-notDoneValueSet
executionPeriod | Σ | 1..1 | Period | The timing the task was rejected and the reason.
Documentation for this format

This structure is derived from Task

Summary

Mandatory: 5 elements
Must-Support: 4 elements
Fixed Value: 1 element

Structures

This structure refers to these other structures:

- QICorePatient (http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-notDoneValueSet

Differential View

This structure is derived from Task

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Task | I | 0..* | Task | A task to be performed tnd-1: to indicate what task was not performed, either at least one coding in the code or a notDoneValueSet extension shall be provided
status | S | 1..1 | code | The potential performer who claimed ownership of the task has decided not to execute it prior to performing any action Fixed Value: rejected
statusReason |  | 1..1 | CodeableConcept | Reason for current status Binding: Negation Reason Codes (extensible)
code | S I | 1..1 | CodeableConcept | Task Type
qicore-notDoneValueSet | S I | 0..1 | canonical(ValueSet) | Url of a value set of activities not requested or performed URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-notDoneValueSet
focus |  | 1..1 | Reference(Resource) | What task is acting on
for |  | 0..1 | Reference(QICorePatient) | Beneficiary of the Task
encounter |  | 0..1 | Reference(Encounter) | Healthcare event during which this task originated
executionPeriod | S | 1..1 | Period | The timing the task was rejected and the reason.
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Task | I | 0..* | Task | A task to be performed tnd-1: to indicate what task was not performed, either at least one coding in the code or a notDoneValueSet extension shall be provided
id | Σ | 0..1 | string | 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) Max Binding: AllLanguages: A human language.
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 |  | 0..* | Identifier | Task Instance Identifier
instantiatesCanonical | Σ | 0..1 | canonical(ActivityDefinition) | Formal definition of task
instantiatesUri | Σ | 0..1 | uri | Formal definition of task
basedOn | Σ | 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 | The potential performer who claimed ownership of the task has decided not to execute it prior to performing any action Binding: TaskStatus (required): The current status of the task. Fixed Value: rejected
statusReason | Σ | 1..1 | CodeableConcept | Reason for current status Binding: Negation Reason Codes (extensible)
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 | 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.
priority |  | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): The task's priority.
code | S Σ I | 1..1 | CodeableConcept | Task Type Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow.
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
qicore-notDoneValueSet | S I | 0..1 | canonical(ValueSet) | Url of a value set of activities not requested or performed URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-notDoneValueSet
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | Σ | 0..1 | string | Plain text representation of the concept
description | Σ | 0..1 | string | Human-readable explanation of task
focus | Σ | 1..1 | Reference(Resource) | What task is acting on
for | Σ | 0..1 | Reference(QICorePatient) | Beneficiary of the Task
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this task originated
executionPeriod | S Σ | 1..1 | Period | The timing the task was rejected and the reason.
authoredOn | I | 0..1 | dateTime | Task Creation Date
lastModified | Σ I | 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 |
Documentation for this format

Other representations of profile: CSV, Excel, Schematron

#### Terminology Bindings

Path | Conformance | ValueSet / Code
Task.language | preferred | CommonLanguages Max Binding: AllLanguages
Task.status | required | Fixed Value: rejected
Task.statusReason | extensible | NegationReasonCodes
Task.businessStatus | example |
Task.intent | required | TaskIntent
Task.priority | required | RequestPriority
Task.code | example | TaskCode
Task.performerType | preferred | ProcedurePerformerRoleCodes
Task.reasonCode | example |
Task.input.type | example |
Task.output.type | example |

#### Constraints

Id | Grade | Path | Details | Requirements
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() |
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 |
tnd-1 | error | Task | to indicate what task was not performed, either at least one coding in the code or a notDoneValueSet extension shall be provided : code.extension('http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-notDoneValueSet').exists() xor code.coding.exists() |
ele-1 | error | Task.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Task.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Task.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Task.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Task.identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.instantiatesCanonical | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.instantiatesUri | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.basedOn | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.groupIdentifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.partOf | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.status | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.statusReason | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.businessStatus | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.intent | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.priority | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.code.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Task.code.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Task.code.extension:notDoneValueSet | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Task.code.extension:notDoneValueSet | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Task.code.coding | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.code.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.description | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.focus | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.for | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.encounter | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.executionPeriod | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.authoredOn | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.lastModified | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.requester | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.performerType | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.owner | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.location | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.reasonCode | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.reasonReference | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.insurance | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.note | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.relevantHistory | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.restriction | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.restriction.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Task.restriction.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Task.restriction.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Task.restriction.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Task.restriction.repetitions | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.restriction.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.restriction.recipient | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.input | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.input.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Task.input.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Task.input.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Task.input.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Task.input.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.input.value[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.output | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.output.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Task.output.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Task.output.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | Task.output.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
ele-1 | error | Task.output.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ele-1 | error | Task.output.value[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |