Da Vinci Health Record Exchange (HRex)
1.2.0-cibuild - STU 1.1

Da Vinci Health Record Exchange (HRex), published by HL7 International / Clinical Interoperability Council. This guide is not an authorized publication; it is the continuous build for version 1.2.0-cibuild built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/davinci-ehrx/ and changes regularly. See the Directory of published versions

## Resource Profile: HRex Task Data Request Profile

Official URL: http://hl7.org/fhir/us/davinci-hrex/StructureDefinition/hrex-task-data-request | Version: 1.2.0-cibuild
Standards status: Trial-use | Maturity Level: 3 | Computable Name: HRexTaskDataRequest
Other Identifiers: OID:2.16.840.1.113883.4.642.40.19.42.16

This Task profile is used to solicit information from a system when direct query is not possible and human intervention might be required

Several Da Vinci guides have a requirement to asynchronously request data that could involve a human collecting, organizing, and/or reviewing data, as described in Requesting exchange using Task. This profile shows how Da Vinci uses Task to perform that process, including defining 'standard' codes for the Task and its associated inputs and outputs.

The Task supports two approaches to data sharing:

- One involves leveraging the FHIR 'search' mechanism, but with the ability for humans to intervene to either refine the filter or to review/prune the result set.
- The second involves either specifying a code or text that describes the data to be retrieved

The content resulting from the request might be conveyed by reference or contained within the Task - and can be any sort of FHIR resource at all (and, using DocumentReference or Binary, can include non-FHIR content as well).

When a task is complete but yields no information (empty search results), an empty search-set Bundle will be returned. However, if searching is performed by document code, the result will be a 'failed' status with a statusReason.text indicating that no matching documents existed.

Other Da Vinci IGs can further derive from this profile to further refine the request mechanism and/or to constrain the location or permitted content of the returned data.

Usage:

- Examples for this Resource Profile: Task/document-complete, Task/min, Task/query-complete, Task/query-initial and Task/query-status

### Formal Views of Profile Content

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

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

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Task | C | 0..* | Task | A task to be performed dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-3: 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 dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-5: If a resource is contained in another resource, it SHALL NOT have a security label dom-6: A resource should have narrative for robust management inv-1: Last modified date must be greater than or equal to authored-on date. tdr-1: Must have exactly one input that is data-query or data-code tdr-2: Task statusReason SHALL be populated if status is 'rejected' or 'failed' tdr-3: Task output SHALL be populated if status is 'completed'
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created ele-1: All FHIR elements must have a @value or children
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
basedOn | S Σ | 0..* | Reference(Resource) | Authorization for data request ele-1: All FHIR elements must have a @value or children
status | ?!S Σ | 1..1 | code | draft | requested | received | accepted | + Binding: HRex Task Status ValueSet (required) ele-1: All FHIR elements must have a @value or children
statusReason | S Σ | 0..1 | CodeableConcept | Reason for current status Binding Description (No ValueSet): (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow. ele-1: All FHIR elements must have a @value or children
text | S Σ | 1..1 | string | Plain text representation of the concept ele-1: All FHIR elements must have a @value or children
businessStatus | S Σ | 0..1 | CodeableConcept | E.g. 'waiting on internal review' Binding Description (No ValueSet): (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc. ele-1: All FHIR elements must have a @value or children
text | S Σ | 1..1 | string | Plain text representation of the concept ele-1: All FHIR elements must have a @value or children
intent | S Σ | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order. ele-1: All FHIR elements must have a @value or children Fixed Value: order
code | S Σ | 1..1 | CodeableConcept | Task Type Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow. ele-1: All FHIR elements must have a @value or children Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-request
for | S Σ | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Member being queried ele-1: All FHIR elements must have a @value or children
authoredOn | S C | 1..1 | dateTime | Task Creation Date ele-1: All FHIR elements must have a @value or children
requester | S Σ | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is asking for data ele-1: All FHIR elements must have a @value or children
owner | S Σ | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is being asked for data ele-1: All FHIR elements must have a @value or children
reasonCode | S | 0..1 | CodeableConcept | Why task is needed Binding Description (No ValueSet): (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital. ele-1: All FHIR elements must have a @value or children
text | S Σ | 1..1 | string | Plain text representation of the concept ele-1: All FHIR elements must have a @value or children
reasonReference | S | 0..1 | Reference(Claim | HRex Member Match Coverage Profile) | Why task is needed ele-1: All FHIR elements must have a @value or children
Slices for input | S | 1..* | BackboneElement | Information used to perform task Slice: Unordered, Open by value:type ele-1: All FHIR elements must have a @value or children
input:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
type |  | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (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. ele-1: All FHIR elements must have a @value or children
value[x] |  | 1..1 |  | Content to use in performing the task ele-1: All FHIR elements must have a @value or children
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
input:query | S | 0..1 | BackboneElement | Requested query ele-1: All FHIR elements must have a @value or children
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
type | S | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (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. ele-1: All FHIR elements must have a @value or children Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-query
value[x] | S | 1..1 | string | query value ele-1: All FHIR elements must have a @value or children
input:code | S | 0..1 | BackboneElement | Requested data code ele-1: All FHIR elements must have a @value or children
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
type | S | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (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. ele-1: All FHIR elements must have a @value or children Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-code
value[x] | S | 1..1 | CodeableConcept | query value ele-1: All FHIR elements must have a @value or children
Slices for output | S | 0..* | BackboneElement | Information produced as part of task Slice: Unordered, Open by value:type ele-1: All FHIR elements must have a @value or children
output:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
type |  | 1..1 | CodeableConcept | Label for output Binding Description (No ValueSet): (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. ele-1: All FHIR elements must have a @value or children
value[x] |  | 1..1 |  | Result of output ele-1: All FHIR elements must have a @value or children
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:data | S | 0..* | BackboneElement | Requested data ele-1: All FHIR elements must have a @value or children
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
type | S | 1..1 | CodeableConcept | Label for output Binding Description (No ValueSet): (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. ele-1: All FHIR elements must have a @value or children Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-value
value[x] | S | 1..1 | Reference() | data reference ele-1: All FHIR elements must have a @value or children
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Task.status | required | HRexTaskStatus `http://hl7.org/fhir/us/davinci-hrex/ValueSet/hrex-task-status` from this IG
Task.statusReason | example |
Task.businessStatus | example |
Task.intent | required | Fixed Value: order `http://hl7.org/fhir/ValueSet/task-intent|4.0.1` from the FHIR Standard
Task.code | example | Pattern: data-request `http://hl7.org/fhir/ValueSet/task-code` from the FHIR Standard
Task.reasonCode | example |
Task.input.type | example |
Task.input:query.type | example | Pattern: data-query
Task.input:code.type | example | Pattern: data-code
Task.output.type | example |
Task.output:data.type | example | Pattern: data-value

#### Constraints

Id | Grade | Path(s) | 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() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. : lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn |
tdr-1 | error | Task | Must have exactly one input that is data-query or data-code : input.type.where(coding.where(system='http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp' and (code='data-code' or code='data-query')).exists()).count()=1 |
tdr-2 | error | Task | Task statusReason SHALL be populated if status is 'rejected' or 'failed' : (status = 'rejected' or status = 'failed') implies statusReason.exists() |
tdr-3 | error | Task | Task output SHALL be populated if status is 'completed' : (status = 'completed') implies output.exists() |

This structure is derived from Task

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Task | C | 0..* | Task | A task to be performed tdr-1: Must have exactly one input that is data-query or data-code tdr-2: Task statusReason SHALL be populated if status is 'rejected' or 'failed' tdr-3: Task output SHALL be populated if status is 'completed'
basedOn | S | 0..* | Reference(Resource) | Authorization for data request
status | S | 1..1 | code | draft | requested | received | accepted | + Binding: HRex Task Status ValueSet (required)
statusReason | S | 0..1 | CodeableConcept | Reason for current status
text | S | 1..1 | string | Plain text representation of the concept
businessStatus | S | 0..1 | CodeableConcept | E.g. 'waiting on internal review'
text | S | 1..1 | string | Plain text representation of the concept
intent | S | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Fixed Value: order
code | S | 1..1 | CodeableConcept | Task Type Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-request
focus |  | 0..0 |  |
for | S | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Member being queried
authoredOn | S | 1..1 | dateTime | Task Creation Date
requester | S | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is asking for data
owner | S | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is being asked for data
reasonCode | S | 0..1 | CodeableConcept | Why task is needed
text | S | 1..1 | string | Plain text representation of the concept
reasonReference | S | 0..1 | Reference(Claim | HRex Member Match Coverage Profile) | Why task is needed
Slices for input | S | 1..* | BackboneElement | Information used to perform task Slice: Unordered, Open by value:type
input:query | S | 0..1 | BackboneElement | Requested query
type | S | 1..1 | CodeableConcept | Label for the input Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-query
value[x] | S | 1..1 | string | query value
input:code | S | 0..1 | BackboneElement | Requested data code
type | S | 1..1 | CodeableConcept | Label for the input Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-code
value[x] | S | 1..1 | CodeableConcept | query value
Slices for output | S | 0..* | BackboneElement | Information produced as part of task Slice: Unordered, Open by value:type
output:data | S | 0..* | BackboneElement | Requested data
type | S | 1..1 | CodeableConcept | Label for output Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-value
value[x] | S | 1..1 | Reference() | data reference
Documentation for this format

#### Terminology Bindings (Differential)

Path | Conformance | ValueSet | URI
Task.status | required | HRexTaskStatus `http://hl7.org/fhir/us/davinci-hrex/ValueSet/hrex-task-status` from this IG

#### Constraints

Id | Grade | Path(s) | Details | Requirements
tdr-1 | error | Task | Must have exactly one input that is data-query or data-code : input.type.where(coding.where(system='http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp' and (code='data-code' or code='data-query')).exists()).count()=1 |
tdr-2 | error | Task | Task statusReason SHALL be populated if status is 'rejected' or 'failed' : (status = 'rejected' or status = 'failed') implies statusReason.exists() |
tdr-3 | error | Task | Task output SHALL be populated if status is 'completed' : (status = 'completed') implies output.exists() |

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Task | C | 0..* | Task | A task to be performed inv-1: Last modified date must be greater than or equal to authored-on date. tdr-1: Must have exactly one input that is data-query or data-code tdr-2: Task statusReason SHALL be populated if status is 'rejected' or 'failed' tdr-3: Task output SHALL be populated if status is 'completed'
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | Task Instance Identifier
instantiatesCanonical | Σ | 0..1 | canonical(ActivityDefinition) | Formal definition of task
instantiatesUri | Σ | 0..1 | uri | Formal definition of task
basedOn | S Σ | 0..* | Reference(Resource) | Authorization for data request
groupIdentifier | Σ | 0..1 | Identifier | Requisition or grouper id
partOf | Σ | 0..* | Reference(Task) | Composite task
status | ?!S Σ | 1..1 | code | draft | requested | received | accepted | + Binding: HRex Task Status ValueSet (required)
statusReason | S Σ | 0..1 | CodeableConcept | Reason for current status Binding Description (No ValueSet): (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 1..1 | string | Plain text representation of the concept
businessStatus | S Σ | 0..1 | CodeableConcept | E.g. 'waiting on internal review' Binding Description (No ValueSet): (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 1..1 | string | Plain text representation of the concept
intent | S Σ | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order. Fixed Value: order
priority |  | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): The task's priority.
code | S Σ | 1..1 | CodeableConcept | Task Type Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-request
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
description | Σ | 0..1 | string | Human-readable explanation of task
for | S Σ | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Member being queried
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this task originated
executionPeriod | Σ | 0..1 | Period | Start and end time of execution
authoredOn | S C | 1..1 | dateTime | Task Creation Date
lastModified | Σ C | 0..1 | dateTime | Task Last Modified Date
requester | S Σ | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is asking for data
performerType |  | 0..* | CodeableConcept | Requested performer Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.
owner | S Σ | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is being asked for data
location | Σ | 0..1 | Reference(Location) | Where task occurs
reasonCode | S | 0..1 | CodeableConcept | Why task is needed Binding Description (No ValueSet): (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 1..1 | string | Plain text representation of the concept
reasonReference | S | 0..1 | Reference(Claim | HRex Member Match Coverage Profile) | Why task is needed
insurance |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage
note |  | 0..* | Annotation | Comments made about the task
relevantHistory |  | 0..* | Reference(Provenance) | Key events in history of the Task
restriction |  | 0..1 | BackboneElement | Constraints on fulfillment tasks
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
repetitions |  | 0..1 | positiveInt | How many times to repeat
period |  | 0..1 | Period | When fulfillment sought
recipient |  | 0..* | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization) | For whom is fulfillment sought?
Slices for input | S | 1..* | BackboneElement | Information used to perform task Slice: Unordered, Open by value:type
input:All Slices |  |  |  | Content/Rules for all slices
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type |  | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.
value[x] |  | 1..1 |  | Content to use in performing the task
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
input:query | S | 0..1 | BackboneElement | Requested query
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-query
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
value[x] | S | 1..1 | string | query value
input:code | S | 0..1 | BackboneElement | Requested data code
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-code
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
value[x] | S | 1..1 | CodeableConcept | query value
Slices for output | S | 0..* | BackboneElement | Information produced as part of task Slice: Unordered, Open by value:type
output:All Slices |  |  |  | Content/Rules for all slices
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type |  | 1..1 | CodeableConcept | Label for output Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.
value[x] |  | 1..1 |  | Result of output
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
output:data | S | 0..* | BackboneElement | Requested data
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for output Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-value
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
value[x] | S | 1..1 | Reference() | data reference
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Task.language | preferred | CommonLanguages `http://hl7.org/fhir/ValueSet/languages` from the FHIR Standard
Additional Bindings | Purpose
AllLanguages | Max Binding
Task.status | required | HRexTaskStatus `http://hl7.org/fhir/us/davinci-hrex/ValueSet/hrex-task-status` from this IG
Task.statusReason | example |
Task.businessStatus | example |
Task.intent | required | Fixed Value: order `http://hl7.org/fhir/ValueSet/task-intent|4.0.1` from the FHIR Standard
Task.priority | required | RequestPriority `http://hl7.org/fhir/ValueSet/request-priority|4.0.1` from the FHIR Standard
Task.code | example | Pattern: data-request `http://hl7.org/fhir/ValueSet/task-code` from the FHIR Standard
Task.performerType | preferred | ProcedurePerformerRoleCodes `http://hl7.org/fhir/ValueSet/performer-role` from the FHIR Standard
Task.reasonCode | example |
Task.input.type | example |
Task.input:query.type | example | Pattern: data-query
Task.input:code.type | example | Pattern: data-code
Task.output.type | example |
Task.output:data.type | example | Pattern: data-value

#### Constraints

Id | Grade | Path(s) | 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() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. : lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn |
tdr-1 | error | Task | Must have exactly one input that is data-query or data-code : input.type.where(coding.where(system='http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp' and (code='data-code' or code='data-query')).exists()).count()=1 |
tdr-2 | error | Task | Task statusReason SHALL be populated if status is 'rejected' or 'failed' : (status = 'rejected' or status = 'failed') implies statusReason.exists() |
tdr-3 | error | Task | Task output SHALL be populated if status is 'completed' : (status = 'completed') implies output.exists() |

This structure is derived from Task

Summary

Mandatory: 6 elements(3 nested mandatory elements)
Must-Support: 26 elements
Fixed: 1 element
Prohibited: 1 element

Structures

This structure refers to these other structures:

- US Core Patient Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0)
- HRex Organization Profile (http://hl7.org/fhir/us/davinci-hrex/StructureDefinition/hrex-organization)
- US Core Practitioner Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner|7.0.0)
- HRex Member Match Coverage Profile (http://hl7.org/fhir/us/davinci-hrex/StructureDefinition/hrex-coverage)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of Task.input
- The element 1 is sliced based on the value of Task.output

Maturity: 3

Key Elements View

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Task | C | 0..* | Task | A task to be performed dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-3: 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 dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-5: If a resource is contained in another resource, it SHALL NOT have a security label dom-6: A resource should have narrative for robust management inv-1: Last modified date must be greater than or equal to authored-on date. tdr-1: Must have exactly one input that is data-query or data-code tdr-2: Task statusReason SHALL be populated if status is 'rejected' or 'failed' tdr-3: Task output SHALL be populated if status is 'completed'
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created ele-1: All FHIR elements must have a @value or children
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
basedOn | S Σ | 0..* | Reference(Resource) | Authorization for data request ele-1: All FHIR elements must have a @value or children
status | ?!S Σ | 1..1 | code | draft | requested | received | accepted | + Binding: HRex Task Status ValueSet (required) ele-1: All FHIR elements must have a @value or children
statusReason | S Σ | 0..1 | CodeableConcept | Reason for current status Binding Description (No ValueSet): (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow. ele-1: All FHIR elements must have a @value or children
text | S Σ | 1..1 | string | Plain text representation of the concept ele-1: All FHIR elements must have a @value or children
businessStatus | S Σ | 0..1 | CodeableConcept | E.g. 'waiting on internal review' Binding Description (No ValueSet): (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc. ele-1: All FHIR elements must have a @value or children
text | S Σ | 1..1 | string | Plain text representation of the concept ele-1: All FHIR elements must have a @value or children
intent | S Σ | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order. ele-1: All FHIR elements must have a @value or children Fixed Value: order
code | S Σ | 1..1 | CodeableConcept | Task Type Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow. ele-1: All FHIR elements must have a @value or children Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-request
for | S Σ | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Member being queried ele-1: All FHIR elements must have a @value or children
authoredOn | S C | 1..1 | dateTime | Task Creation Date ele-1: All FHIR elements must have a @value or children
requester | S Σ | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is asking for data ele-1: All FHIR elements must have a @value or children
owner | S Σ | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is being asked for data ele-1: All FHIR elements must have a @value or children
reasonCode | S | 0..1 | CodeableConcept | Why task is needed Binding Description (No ValueSet): (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital. ele-1: All FHIR elements must have a @value or children
text | S Σ | 1..1 | string | Plain text representation of the concept ele-1: All FHIR elements must have a @value or children
reasonReference | S | 0..1 | Reference(Claim | HRex Member Match Coverage Profile) | Why task is needed ele-1: All FHIR elements must have a @value or children
Slices for input | S | 1..* | BackboneElement | Information used to perform task Slice: Unordered, Open by value:type ele-1: All FHIR elements must have a @value or children
input:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
type |  | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (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. ele-1: All FHIR elements must have a @value or children
value[x] |  | 1..1 |  | Content to use in performing the task ele-1: All FHIR elements must have a @value or children
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
input:query | S | 0..1 | BackboneElement | Requested query ele-1: All FHIR elements must have a @value or children
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
type | S | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (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. ele-1: All FHIR elements must have a @value or children Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-query
value[x] | S | 1..1 | string | query value ele-1: All FHIR elements must have a @value or children
input:code | S | 0..1 | BackboneElement | Requested data code ele-1: All FHIR elements must have a @value or children
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
type | S | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (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. ele-1: All FHIR elements must have a @value or children Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-code
value[x] | S | 1..1 | CodeableConcept | query value ele-1: All FHIR elements must have a @value or children
Slices for output | S | 0..* | BackboneElement | Information produced as part of task Slice: Unordered, Open by value:type ele-1: All FHIR elements must have a @value or children
output:All Slices |  |  |  | Content/Rules for all slices
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
type |  | 1..1 | CodeableConcept | Label for output Binding Description (No ValueSet): (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. ele-1: All FHIR elements must have a @value or children
value[x] |  | 1..1 |  | Result of output ele-1: All FHIR elements must have a @value or children
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:data | S | 0..* | BackboneElement | Requested data ele-1: All FHIR elements must have a @value or children
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both
type | S | 1..1 | CodeableConcept | Label for output Binding Description (No ValueSet): (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. ele-1: All FHIR elements must have a @value or children Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-value
value[x] | S | 1..1 | Reference() | data reference ele-1: All FHIR elements must have a @value or children
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Task.status | required | HRexTaskStatus `http://hl7.org/fhir/us/davinci-hrex/ValueSet/hrex-task-status` from this IG
Task.statusReason | example |
Task.businessStatus | example |
Task.intent | required | Fixed Value: order `http://hl7.org/fhir/ValueSet/task-intent|4.0.1` from the FHIR Standard
Task.code | example | Pattern: data-request `http://hl7.org/fhir/ValueSet/task-code` from the FHIR Standard
Task.reasonCode | example |
Task.input.type | example |
Task.input:query.type | example | Pattern: data-query
Task.input:code.type | example | Pattern: data-code
Task.output.type | example |
Task.output:data.type | example | Pattern: data-value

#### Constraints

Id | Grade | Path(s) | 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() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. : lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn |
tdr-1 | error | Task | Must have exactly one input that is data-query or data-code : input.type.where(coding.where(system='http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp' and (code='data-code' or code='data-query')).exists()).count()=1 |
tdr-2 | error | Task | Task statusReason SHALL be populated if status is 'rejected' or 'failed' : (status = 'rejected' or status = 'failed') implies statusReason.exists() |
tdr-3 | error | Task | Task output SHALL be populated if status is 'completed' : (status = 'completed') implies output.exists() |

Differential View

This structure is derived from Task

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Task | C | 0..* | Task | A task to be performed tdr-1: Must have exactly one input that is data-query or data-code tdr-2: Task statusReason SHALL be populated if status is 'rejected' or 'failed' tdr-3: Task output SHALL be populated if status is 'completed'
basedOn | S | 0..* | Reference(Resource) | Authorization for data request
status | S | 1..1 | code | draft | requested | received | accepted | + Binding: HRex Task Status ValueSet (required)
statusReason | S | 0..1 | CodeableConcept | Reason for current status
text | S | 1..1 | string | Plain text representation of the concept
businessStatus | S | 0..1 | CodeableConcept | E.g. 'waiting on internal review'
text | S | 1..1 | string | Plain text representation of the concept
intent | S | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Fixed Value: order
code | S | 1..1 | CodeableConcept | Task Type Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-request
focus |  | 0..0 |  |
for | S | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Member being queried
authoredOn | S | 1..1 | dateTime | Task Creation Date
requester | S | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is asking for data
owner | S | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is being asked for data
reasonCode | S | 0..1 | CodeableConcept | Why task is needed
text | S | 1..1 | string | Plain text representation of the concept
reasonReference | S | 0..1 | Reference(Claim | HRex Member Match Coverage Profile) | Why task is needed
Slices for input | S | 1..* | BackboneElement | Information used to perform task Slice: Unordered, Open by value:type
input:query | S | 0..1 | BackboneElement | Requested query
type | S | 1..1 | CodeableConcept | Label for the input Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-query
value[x] | S | 1..1 | string | query value
input:code | S | 0..1 | BackboneElement | Requested data code
type | S | 1..1 | CodeableConcept | Label for the input Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-code
value[x] | S | 1..1 | CodeableConcept | query value
Slices for output | S | 0..* | BackboneElement | Information produced as part of task Slice: Unordered, Open by value:type
output:data | S | 0..* | BackboneElement | Requested data
type | S | 1..1 | CodeableConcept | Label for output Required Pattern: At least the following
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-value
value[x] | S | 1..1 | Reference() | data reference
Documentation for this format

#### Terminology Bindings (Differential)

Path | Conformance | ValueSet | URI
Task.status | required | HRexTaskStatus `http://hl7.org/fhir/us/davinci-hrex/ValueSet/hrex-task-status` from this IG

#### Constraints

Id | Grade | Path(s) | Details | Requirements
tdr-1 | error | Task | Must have exactly one input that is data-query or data-code : input.type.where(coding.where(system='http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp' and (code='data-code' or code='data-query')).exists()).count()=1 |
tdr-2 | error | Task | Task statusReason SHALL be populated if status is 'rejected' or 'failed' : (status = 'rejected' or status = 'failed') implies statusReason.exists() |
tdr-3 | error | Task | Task output SHALL be populated if status is 'completed' : (status = 'completed') implies output.exists() |

Snapshot View

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Task | C | 0..* | Task | A task to be performed inv-1: Last modified date must be greater than or equal to authored-on date. tdr-1: Must have exactly one input that is data-query or data-code tdr-2: Task statusReason SHALL be populated if status is 'rejected' or 'failed' tdr-3: Task output SHALL be populated if status is 'completed'
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | Task Instance Identifier
instantiatesCanonical | Σ | 0..1 | canonical(ActivityDefinition) | Formal definition of task
instantiatesUri | Σ | 0..1 | uri | Formal definition of task
basedOn | S Σ | 0..* | Reference(Resource) | Authorization for data request
groupIdentifier | Σ | 0..1 | Identifier | Requisition or grouper id
partOf | Σ | 0..* | Reference(Task) | Composite task
status | ?!S Σ | 1..1 | code | draft | requested | received | accepted | + Binding: HRex Task Status ValueSet (required)
statusReason | S Σ | 0..1 | CodeableConcept | Reason for current status Binding Description (No ValueSet): (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 1..1 | string | Plain text representation of the concept
businessStatus | S Σ | 0..1 | CodeableConcept | E.g. 'waiting on internal review' Binding Description (No ValueSet): (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 1..1 | string | Plain text representation of the concept
intent | S Σ | 1..1 | code | unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order. Fixed Value: order
priority |  | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): The task's priority.
code | S Σ | 1..1 | CodeableConcept | Task Type Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-request
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
description | Σ | 0..1 | string | Human-readable explanation of task
for | S Σ | 1..1 | Reference(US Core Patient Profile(7.0.0)) | Member being queried
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this task originated
executionPeriod | Σ | 0..1 | Period | Start and end time of execution
authoredOn | S C | 1..1 | dateTime | Task Creation Date
lastModified | Σ C | 0..1 | dateTime | Task Last Modified Date
requester | S Σ | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is asking for data
performerType |  | 0..* | CodeableConcept | Requested performer Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.
owner | S Σ | 1..1 | Reference(HRex Organization Profile | US Core Practitioner Profile(7.0.0)) | Who is being asked for data
location | Σ | 0..1 | Reference(Location) | Where task occurs
reasonCode | S | 0..1 | CodeableConcept | Why task is needed Binding Description (No ValueSet): (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 1..1 | string | Plain text representation of the concept
reasonReference | S | 0..1 | Reference(Claim | HRex Member Match Coverage Profile) | Why task is needed
insurance |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage
note |  | 0..* | Annotation | Comments made about the task
relevantHistory |  | 0..* | Reference(Provenance) | Key events in history of the Task
restriction |  | 0..1 | BackboneElement | Constraints on fulfillment tasks
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
repetitions |  | 0..1 | positiveInt | How many times to repeat
period |  | 0..1 | Period | When fulfillment sought
recipient |  | 0..* | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization) | For whom is fulfillment sought?
Slices for input | S | 1..* | BackboneElement | Information used to perform task Slice: Unordered, Open by value:type
input:All Slices |  |  |  | Content/Rules for all slices
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type |  | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.
value[x] |  | 1..1 |  | Content to use in performing the task
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
input:query | S | 0..1 | BackboneElement | Requested query
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-query
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
value[x] | S | 1..1 | string | query value
input:code | S | 0..1 | BackboneElement | Requested data code
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-code
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
value[x] | S | 1..1 | CodeableConcept | query value
Slices for output | S | 0..* | BackboneElement | Information produced as part of task Slice: Unordered, Open by value:type
output:All Slices |  |  |  | Content/Rules for all slices
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type |  | 1..1 | CodeableConcept | Label for output Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.
value[x] |  | 1..1 |  | Result of output
valueBase64Binary |  |  | base64Binary |
valueBoolean |  |  | boolean |
valueCanonical |  |  | canonical(Any) |
valueCode |  |  | code |
valueDate |  |  | date |
valueDateTime |  |  | dateTime |
valueDecimal |  |  | decimal |
valueId |  |  | id |
valueInstant |  |  | instant |
valueInteger |  |  | integer |
valueMarkdown |  |  | markdown |
valueOid |  |  | oid |
valuePositiveInt |  |  | positiveInt |
valueString |  |  | string |
valueTime |  |  | time |
valueUnsignedInt |  |  | unsignedInt |
valueUri |  |  | uri |
valueUrl |  |  | url |
valueUuid |  |  | uuid |
valueAddress |  |  | Address |
valueAge |  |  | Age |
valueAnnotation |  |  | Annotation |
valueAttachment |  |  | Attachment |
valueCodeableConcept |  |  | CodeableConcept |
valueCoding |  |  | Coding |
valueContactPoint |  |  | ContactPoint |
valueCount |  |  | Count |
valueDistance |  |  | Distance |
valueDuration |  |  | Duration |
valueHumanName |  |  | HumanName |
valueIdentifier |  |  | Identifier |
valueMoney |  |  | Money |
valuePeriod |  |  | Period |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueReference |  |  | Reference(Any) |
valueSampledData |  |  | SampledData |
valueSignature |  |  | Signature |
valueTiming |  |  | Timing |
valueContactDetail |  |  | ContactDetail |
valueContributor |  |  | Contributor |
valueDataRequirement |  |  | DataRequirement |
valueExpression |  |  | Expression |
valueParameterDefinition |  |  | ParameterDefinition |
valueRelatedArtifact |  |  | RelatedArtifact |
valueTriggerDefinition |  |  | TriggerDefinition |
valueUsageContext |  |  | UsageContext |
valueDosage |  |  | Dosage |
valueMeta |  |  | Meta |
output:data | S | 0..* | BackboneElement | Requested data
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type | S | 1..1 | CodeableConcept | Label for output Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc. Required Pattern: At least the following
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: data-value
display |  | 0..1 | string | Representation defined by the system
userSelected |  | 0..1 | boolean | If this coding was chosen directly by the user
text |  | 0..1 | string | Plain text representation of the concept
value[x] | S | 1..1 | Reference() | data reference
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet / Code | URI
Task.language | preferred | CommonLanguages `http://hl7.org/fhir/ValueSet/languages` from the FHIR Standard
Additional Bindings | Purpose
AllLanguages | Max Binding
Task.status | required | HRexTaskStatus `http://hl7.org/fhir/us/davinci-hrex/ValueSet/hrex-task-status` from this IG
Task.statusReason | example |
Task.businessStatus | example |
Task.intent | required | Fixed Value: order `http://hl7.org/fhir/ValueSet/task-intent|4.0.1` from the FHIR Standard
Task.priority | required | RequestPriority `http://hl7.org/fhir/ValueSet/request-priority|4.0.1` from the FHIR Standard
Task.code | example | Pattern: data-request `http://hl7.org/fhir/ValueSet/task-code` from the FHIR Standard
Task.performerType | preferred | ProcedurePerformerRoleCodes `http://hl7.org/fhir/ValueSet/performer-role` from the FHIR Standard
Task.reasonCode | example |
Task.input.type | example |
Task.input:query.type | example | Pattern: data-query
Task.input:code.type | example | Pattern: data-code
Task.output.type | example |
Task.output:data.type | example | Pattern: data-value

#### Constraints

Id | Grade | Path(s) | 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() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. : lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn |
tdr-1 | error | Task | Must have exactly one input that is data-query or data-code : input.type.where(coding.where(system='http://hl7.org/fhir/us/davinci-hrex/CodeSystem/hrex-temp' and (code='data-code' or code='data-query')).exists()).count()=1 |
tdr-2 | error | Task | Task statusReason SHALL be populated if status is 'rejected' or 'failed' : (status = 'rejected' or status = 'failed') implies statusReason.exists() |
tdr-3 | error | Task | Task output SHALL be populated if status is 'completed' : (status = 'completed') implies output.exists() |

This structure is derived from Task

Summary

Mandatory: 6 elements(3 nested mandatory elements)
Must-Support: 26 elements
Fixed: 1 element
Prohibited: 1 element

Structures

This structure refers to these other structures:

- US Core Patient Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0)
- HRex Organization Profile (http://hl7.org/fhir/us/davinci-hrex/StructureDefinition/hrex-organization)
- US Core Practitioner Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner|7.0.0)
- HRex Member Match Coverage Profile (http://hl7.org/fhir/us/davinci-hrex/StructureDefinition/hrex-coverage)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of Task.input
- The element 1 is sliced based on the value of Task.output

Maturity: 3

Other representations of profile: CSV, Excel, Schematron

### Notes:

A single profile is defined, although what elements are appropriate will vary depending on the stage of the Task's life cycle. On initiation, the `status` would be 'requested' and there would not generally be a `businessStatus` or `statusReason` and certainly would not be any output. As execution progresses, the `Task.status` would be adjusted to reflect acceptance or rejection - and `statusReason` would typically be populated in the latter case. Once the Task gets underway, `businessStatus` might be filled in to help indicate progress/expected timelines. Finally, once the data becomes available, the `status` is changed to 'completed' and the outputs are linked. (In some cases, preliminary outputs might be linked prior to the Task becoming 'completed', though that would be unusual in the Da Vinci situation.)