A task resource describes an activity that can be performed and tracks the state of completion of that activity. It is a representation that an activity should be or has been initiated, and eventually, represents the successful or unsuccessful completion of that activity.
In scope of the eHealth Infrastructure, the Task resource is used for:
ehealth-task-responsible
.owner
.Task resources are produced by eHealth Infrastructure as reaction to measurements being submitted or expected measurements not being submitted. Measurements in the form of Observation, QuestionnaireResponse or other resources are expected to be submitted by a Patient according to a measurement regime specified in a CarePlan and referenced CarePlan/ProcedureRequest.
The context in which the Task is created is identified through context
. In the eHealth Infrastructure, this is currently a reference to an EpisodeOfCare, but in future use, it could be a reference to an Encounter. The focus
element describes what resource the Task responsible should be acting on and can reference any resource.
The eHealth Infrastructure supports triaging based on comparison of submitted measurements against reference ranges specified in CarePlan/ProcedureRequest. The result of triaging is captured in a ClinicalImpression which is referenced as Task focus in a Task created by the eHealth Infrastructure. The Task has:
In case the eHealth Infrastructure detects that measurement submissions are missing, it creates a Communication to the Patient reminding to follow measurement regime. It also creates a Task:
An unexpected measurement can be in terms of unexpected measurement type, for instance observation code or questionnaire not specified in the CarePlan/ProcedureRequest, or in terms of measurement with odd timing compared to the measurement regime.
In case the eHealth Infrastructure detects an unexpected measurement submission, it creates a ClinicalImpression resource stating this. It also creates a Task where:
No Task resources are created to assist in adhering to a measurement regime.
The Task has been extended with support for CareTeam as Task owner. It is expected that each CareTeam will provide support/monitoring of multiple patients. The Task resources owned by a CareTeam can form a list sorted by priority to support triaging.
The Task has also been extended with support for multiple Task owner. This way, CareTeam members can coordinate Task assignments (by adding Practitioner as Task owner and setting Task status) while preserving the CareTeam as fallback in case the Practitioner is unable to process the Task, for instance due to absence.
The official URL for this profile is:
http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-task
This profile builds on Task.
This profile was published on Fri Nov 08 13:01:00 UTC 2019 as a draft by ehealth.sundhed.dk.
Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.
Path | Conformance | ValueSet |
Task.language | extensible | Common Languages Max Binding: All Languages |
Task.groupIdentifier.use | required | IdentifierUse |
Task.groupIdentifier.type | extensible | Identifier Type Codes |
Task.status | required | TaskStatus |
Task.statusReason | example | |
Task.businessStatus | example | |
Task.intent | required | RequestIntent |
Task.priority | required | RequestPriority |
Task.code | example | |
Task.performerType | preferred | TaskPerformerType |
Task.reason | example | |
Task.input.type | example | |
Task.output.type | example |
Id | Path | Details | Requirements |
dom-2 | Task | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-1 | Task | If the resource is contained in another resource, it SHALL NOT contain any narrative : contained.text.empty() | |
dom-4 | 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-3 | Task | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource : contained.where(('#'+id in %resource.descendants().reference).not()).empty() | |
inv-1 | Task | Last modified date must be greater than or equal to authored-on date. : lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn | |
ele-1 | Task.extension | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
ext-1 | Task.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Task.extension | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
ext-1 | Task.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Task.extension | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
ext-1 | Task.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Task.extension | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
ext-1 | Task.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Task.requester | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
ele-1 | Task.restriction | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
ele-1 | Task.input | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
ele-1 | Task.output | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) |