Amakomaya Nepal FHIR Implementation Guide
2.0.0 - ci-build Nepal

Amakomaya Nepal FHIR Implementation Guide - Local Development build (v2.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: Reminder Task

Official URL: https://fhir.amakomaya.com/StructureDefinition/reminder-task Version: 2.0.0
Active as of 2026-08-21 Computable Name: ReminderTaskProfile

Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License

A profile for system-generated reminder tasks created by a mobile or web application (e.g., Amakomaya App). Supports reminders for ANC visits, immunization dates, medication reminders, and follow-up actions.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Task C 0..* Task A task to be performed
Constraints: tsk-0, tsk-1
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Slice: Unordered, Open by value:url
... 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.
... doNotPerform ?!Σ 0..1 boolean True if Task is prohibiting action
... description Σ 1..1 markdown Human-readable explanation of task
... executionPeriod Σ 1..1 Period Start and end time of execution
... authoredOn 1..1 dateTime Task Creation Date
... requester Σ 1..1 Reference(Device | Group | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) Who is asking for task to be done
... input 1..1 BackboneElement Information used to perform task
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... type 1..1 CodeableConcept Label for the input
Binding: TaskInputOutputParameterType (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitant Medications", etc.
.... Slices for value[x] 1..1 Timing Content to use in performing the task
Slice: Unordered, Closed by type:$this
..... value[x]:valueTiming 1..1 Timing Content to use in performing the task
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Task.status Base required Task Status 📍6.0.0-ballot5 FHIR Std.
Task.intent Base required Task Intent 📍6.0.0-ballot5 FHIR Std.
Task.input.type Base example Task Input/Output Parameter Type 📍6.0.0-ballot5 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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.trace('id') in %resource.descendants().select(reference | as(uri))) or descendants().where(reference='#' | as(uri)='#').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())
tsk-0 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
tsk-1 error Task Task.restriction is only allowed if the Task is seeking fulfillment and a focus is specified. restriction.exists() implies (code.coding.where(code='fulfill' and system='http://hl7.org/fhir/CodeSystem/task-code').exists() and focus.exists() and focus.value.ofType(Reference).exists())

This structure is derived from Task

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Task 0..* Task A task to be performed
... description 1..1 markdown Human-readable explanation of task
... executionPeriod 1..1 Period Start and end time of execution
... authoredOn 1..1 dateTime Task Creation Date
... input 1..1 BackboneElement Information used to perform task
.... Slices for value[x] 1..1 Timing Content to use in performing the task
Slice: Unordered, Open by type:$this
..... value[x]:valueTiming 1..1 Timing Content to use in performing the task
...... repeat
....... frequency 1..1 positiveInt Indicates the number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
....... period 1..1 decimal The duration to which the frequency applies. I.e. Event occurs frequency times per period
....... periodUnit 1..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Task C 0..* Task A task to be performed
Constraints: tsk-0, tsk-1
... 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: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Slice: Unordered, Open by value:url
... identifier 0..* Identifier Task Instance Identifier
... basedOn Σ 0..* Reference(Resource) Request fulfilled by this task
... groupIdentifier Σ 0..1 Identifier Requisition or grouper id
... partOf Σ 0..* Reference(Task) Composite task
... status ?!Σ 1..1 code draft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.
... statusReason Σ 0..* CodeableReference(Resource) Reason for current status
Binding: TaskStatusReason (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.
... businessStatus Σ 0..1 CodeableConcept E.g. "Specimen collected", "IV prepped"
Binding: TaskBusinessStatus (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 priority of a task (may affect service level applied to the task).
... doNotPerform ?!Σ 0..1 boolean True if Task is prohibiting action
... code ΣC 0..1 CodeableConcept Task Type
Binding: TaskCode (extensible): Codes to identify what the task involves. These will typically be specific to a particular workflow.
... description Σ 1..1 markdown Human-readable explanation of task
... focus ΣC 0..* BackboneElement What task is acting on
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... value[x] Σ 1..1 Reference(Resource), canonical(CanonicalResource) What task is acting on
... for Σ 0..1 Reference(Resource) Beneficiary of the Task
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this task originated
... requestedPeriod Σ 0..1 Period When the task should be performed
... executionPeriod Σ 1..1 Period Start and end time of execution
... authoredOn 1..1 dateTime Task Creation Date
... lastModified Σ 0..1 dateTime Task Last Modified Date
... requester Σ 1..1 Reference(Device | Group | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) Who is asking for task to be done
... requestedPerformer 0..* CodeableReference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson | Group) Who should perform the Task
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.
... owner Σ 0..1 Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson | Group) Responsible individual
... performer Σ 0..* BackboneElement Who or what performed the task
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... function Σ 0..1 CodeableConcept Type of performance
Binding: TaskPerformerFunctionCode (example): Codes to identify types of task performers.
.... actor Σ 1..1 Reference(Practitioner | Device | Organization | PractitionerRole | CareTeam | Patient | RelatedPerson | Group) Who performed the task
... location Σ 0..1 Reference(Location) Where task occurs
... reason 0..* CodeableReference(Resource) Why task is needed
Binding: TaskReason (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.
... 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 C 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
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... repetitions 0..1 positiveInt How many times to repeat
.... period 0..1 Period When fulfillment is sought
.... recipient 0..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization | Device) Individual or entity from whom fulfillment is being sought
... input 1..1 BackboneElement Information used to perform task
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... type 1..1 CodeableConcept Label for the input
Binding: TaskInputOutputParameterType (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitant Medications", etc.
.... Slices for value[x] 1..1 Timing Content to use in performing the task
Slice: Unordered, Closed by type:$this
..... value[x]:valueTiming 1..1 Timing Content to use in performing the task
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
...... event Σ 0..* dateTime When the event occurs
...... repeat ΣC 0..1 Element When the event is to occur
Constraints: tim-1, tim-2, tim-4, tim-5, tim-6, tim-7, tim-8, tim-9, tim-10, tim-11, tim-12
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... bounds[x] Σ 0..1 Length/Range of lengths, or (Start and/or end) limits
........ boundsDuration Duration
........ boundsRange Range
........ boundsPeriod Period
....... count ΣC 0..1 positiveInt Number of times to repeat
....... countMax ΣC 0..1 positiveInt Maximum number of times to repeat
....... duration ΣC 0..1 decimal How long when it happens
....... durationMax ΣC 0..1 decimal How long when it happens (Max)
....... durationUnit ΣC 0..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
Binding: UnitsOfTime (required): A unit of time (units from UCUM).
....... frequency Σ 1..1 positiveInt Indicates the number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
....... frequencyMax Σ 0..1 positiveInt Event occurs up to frequencyMax times per period
....... period ΣC 1..1 decimal The duration to which the frequency applies. I.e. Event occurs frequency times per period
....... periodMax ΣC 0..1 decimal Upper limit of period (3-4 hours)
....... periodUnit ΣC 1..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
Binding: UnitsOfTime (required): A unit of time (units from UCUM).
....... startOffset Σ 0..1 SimpleQuantity(6.0.0-ballot5) Events within the repeat period do not start until startOffset has elapsed
....... endOffset Σ 0..1 SimpleQuantity(6.0.0-ballot5) Events within the repeat period stop once endOffset before the end of the period
....... dayOfWeek Σ 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required)
....... timeOfDay ΣC 0..* time Time of day for action
....... when ΣC 0..* code Code for time period of occurrence
Binding: EventTiming (required): Real-world event relating to the schedule.
....... offset ΣC 0..1 unsignedInt Minutes from event (before or after)
...... code Σ 0..1 CodeableConcept C | BID | TID | QID | AM | PM | QD | QOD | +
Binding: TimingAbbreviation (preferred): Code for a known / defined timing pattern.
... 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
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... type 1..1 CodeableConcept Label for output
Binding: TaskInputOutputParameterType (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
..... valueInteger64 integer64
..... 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
..... valueCodeableReference CodeableReference
..... valueCoding Coding
..... valueContactPoint ContactPoint
..... valueCount Count
..... valueDistance Distance
..... valueDuration Duration
..... valueHumanName HumanName
..... valueIdentifier Identifier
..... valueMoney Money
..... valuePeriod Period
..... valueQuantity Quantity
..... valueRange Range
..... valueRatio Ratio
..... valueRatioRange RatioRange
..... valueReference Reference(Any)
..... valueSampledData SampledData
..... valueSignature Signature
..... valueTiming Timing
..... valueContactDetail ContactDetail
..... valueDataRequirement DataRequirement
..... valueExpression Expression
..... valueParameterDefinition ParameterDefinition
..... valueRelatedArtifact RelatedArtifact
..... valueTriggerDefinition TriggerDefinition
..... valueUsageContext UsageContext
..... valueAvailability Availability
..... valueExtendedContactDetail ExtendedContactDetail
..... valueVirtualServiceDetail VirtualServiceDetail
..... valueDosage Dosage
..... valueMeta Meta

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Task.language Base required All Languages 📍6.0.0-ballot5 FHIR Std.
Task.status Base required Task Status 📍6.0.0-ballot5 FHIR Std.
Task.statusReason Base example Task Status Reason 📍6.0.0-ballot5 FHIR Std.
Task.businessStatus Base example Task Business Status 📍6.0.0-ballot5 FHIR Std.
Task.intent Base required Task Intent 📍6.0.0-ballot5 FHIR Std.
Task.priority Base required RequestPriority 📍6.0.0-ballot5 FHIR Std.
Task.code Base extensible Task Codes 📍6.0.0-ballot5 FHIR Std.
Task.requestedPerformer Base preferred Procedure Performer Role Codes 📍6.0.0-ballot5 FHIR Std.
Task.performer.function Base example Task Performer Function Code 📍6.0.0-ballot5 FHIR Std.
Task.reason Base example Task Reason 📍6.0.0-ballot5 FHIR Std.
Task.input.type Base example Task Input/Output Parameter Type 📍6.0.0-ballot5 FHIR Std.
Task.input.value[x]:valueTiming.​repeat.durationUnit Base required UnitsOfTime 📍6.0.0-ballot5 FHIR Std.
Task.input.value[x]:valueTiming.​repeat.periodUnit Base required UnitsOfTime 📍6.0.0-ballot5 FHIR Std.
Task.input.value[x]:valueTiming.​repeat.dayOfWeek Base required Days Of Week 📍6.0.0-ballot5 FHIR Std.
Task.input.value[x]:valueTiming.​repeat.when Base required EventTiming 📍6.0.0-ballot5 FHIR Std.
Task.input.value[x]:valueTiming.​code Base preferred TimingAbbreviation 📍6.0.0-ballot5 FHIR Std.
Task.output.type Base example Task Input/Output Parameter Type 📍6.0.0-ballot5 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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.trace('id') in %resource.descendants().select(reference | as(uri))) or descendants().where(reference='#' | as(uri)='#').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())
tim-1 error Task.input.value[x]:valueTiming.repeat if there's a duration, there needs to be duration units duration.empty() or durationUnit.exists()
tim-2 error Task.input.value[x]:valueTiming.repeat if there's a period, there needs to be period units period.empty() or periodUnit.exists()
tim-4 error Task.input.value[x]:valueTiming.repeat duration SHALL be a non-negative value duration.exists() implies duration >= 0
tim-5 error Task.input.value[x]:valueTiming.repeat period SHALL be a non-negative value period.exists() implies period >= 0
tim-6 error Task.input.value[x]:valueTiming.repeat If there's a periodMax, there must be a period periodMax.empty() or period.exists()
tim-7 error Task.input.value[x]:valueTiming.repeat If there's a durationMax, there must be a duration durationMax.empty() or duration.exists()
tim-8 error Task.input.value[x]:valueTiming.repeat If there's a countMax, there must be a count countMax.empty() or count.exists()
tim-9 error Task.input.value[x]:valueTiming.repeat If there's an offset, there must be a when (and not C, CM, CD, CV) offset.empty() or (when.exists() and when.select($this in ('C' | 'CM' | 'CD' | 'CV')).allFalse())
tim-10 error Task.input.value[x]:valueTiming.repeat If there's a timeOfDay, there cannot be a when, or vice versa timeOfDay.empty() or when.empty()
tim-11 error Task.input.value[x]:valueTiming.repeat Only use startOffset when frequency is present and > 1, and period is present startOffset.exists() implies (frequency > 1 and period.exists())
tim-12 error Task.input.value[x]:valueTiming.repeat Only use endOffset when frequency is present and > 1, and period is present endOffset.exists() implies (frequency > 1 and period.exists())
tsk-0 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
tsk-1 error Task Task.restriction is only allowed if the Task is seeking fulfillment and a focus is specified. restriction.exists() implies (code.coding.where(code='fulfill' and system='http://hl7.org/fhir/CodeSystem/task-code').exists() and focus.exists() and focus.value.ofType(Reference).exists())

This structure is derived from Task

Summary

Mandatory: 6 elements(3 nested mandatory elements)

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Task.input.value[x]

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Task C 0..* Task A task to be performed
Constraints: tsk-0, tsk-1
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Slice: Unordered, Open by value:url
... 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.
... doNotPerform ?!Σ 0..1 boolean True if Task is prohibiting action
... description Σ 1..1 markdown Human-readable explanation of task
... executionPeriod Σ 1..1 Period Start and end time of execution
... authoredOn 1..1 dateTime Task Creation Date
... requester Σ 1..1 Reference(Device | Group | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) Who is asking for task to be done
... input 1..1 BackboneElement Information used to perform task
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... type 1..1 CodeableConcept Label for the input
Binding: TaskInputOutputParameterType (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitant Medications", etc.
.... Slices for value[x] 1..1 Timing Content to use in performing the task
Slice: Unordered, Closed by type:$this
..... value[x]:valueTiming 1..1 Timing Content to use in performing the task
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Task.status Base required Task Status 📍6.0.0-ballot5 FHIR Std.
Task.intent Base required Task Intent 📍6.0.0-ballot5 FHIR Std.
Task.input.type Base example Task Input/Output Parameter Type 📍6.0.0-ballot5 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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.trace('id') in %resource.descendants().select(reference | as(uri))) or descendants().where(reference='#' | as(uri)='#').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())
tsk-0 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
tsk-1 error Task Task.restriction is only allowed if the Task is seeking fulfillment and a focus is specified. restriction.exists() implies (code.coding.where(code='fulfill' and system='http://hl7.org/fhir/CodeSystem/task-code').exists() and focus.exists() and focus.value.ofType(Reference).exists())

Differential View

This structure is derived from Task

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Task 0..* Task A task to be performed
... description 1..1 markdown Human-readable explanation of task
... executionPeriod 1..1 Period Start and end time of execution
... authoredOn 1..1 dateTime Task Creation Date
... input 1..1 BackboneElement Information used to perform task
.... Slices for value[x] 1..1 Timing Content to use in performing the task
Slice: Unordered, Open by type:$this
..... value[x]:valueTiming 1..1 Timing Content to use in performing the task
...... repeat
....... frequency 1..1 positiveInt Indicates the number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
....... period 1..1 decimal The duration to which the frequency applies. I.e. Event occurs frequency times per period
....... periodUnit 1..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Task C 0..* Task A task to be performed
Constraints: tsk-0, tsk-1
... 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: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Slice: Unordered, Open by value:url
... identifier 0..* Identifier Task Instance Identifier
... basedOn Σ 0..* Reference(Resource) Request fulfilled by this task
... groupIdentifier Σ 0..1 Identifier Requisition or grouper id
... partOf Σ 0..* Reference(Task) Composite task
... status ?!Σ 1..1 code draft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.
... statusReason Σ 0..* CodeableReference(Resource) Reason for current status
Binding: TaskStatusReason (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.
... businessStatus Σ 0..1 CodeableConcept E.g. "Specimen collected", "IV prepped"
Binding: TaskBusinessStatus (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 priority of a task (may affect service level applied to the task).
... doNotPerform ?!Σ 0..1 boolean True if Task is prohibiting action
... code ΣC 0..1 CodeableConcept Task Type
Binding: TaskCode (extensible): Codes to identify what the task involves. These will typically be specific to a particular workflow.
... description Σ 1..1 markdown Human-readable explanation of task
... focus ΣC 0..* BackboneElement What task is acting on
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... value[x] Σ 1..1 Reference(Resource), canonical(CanonicalResource) What task is acting on
... for Σ 0..1 Reference(Resource) Beneficiary of the Task
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this task originated
... requestedPeriod Σ 0..1 Period When the task should be performed
... executionPeriod Σ 1..1 Period Start and end time of execution
... authoredOn 1..1 dateTime Task Creation Date
... lastModified Σ 0..1 dateTime Task Last Modified Date
... requester Σ 1..1 Reference(Device | Group | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) Who is asking for task to be done
... requestedPerformer 0..* CodeableReference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson | Group) Who should perform the Task
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.
... owner Σ 0..1 Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson | Group) Responsible individual
... performer Σ 0..* BackboneElement Who or what performed the task
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... function Σ 0..1 CodeableConcept Type of performance
Binding: TaskPerformerFunctionCode (example): Codes to identify types of task performers.
.... actor Σ 1..1 Reference(Practitioner | Device | Organization | PractitionerRole | CareTeam | Patient | RelatedPerson | Group) Who performed the task
... location Σ 0..1 Reference(Location) Where task occurs
... reason 0..* CodeableReference(Resource) Why task is needed
Binding: TaskReason (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.
... 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 C 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
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... repetitions 0..1 positiveInt How many times to repeat
.... period 0..1 Period When fulfillment is sought
.... recipient 0..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization | Device) Individual or entity from whom fulfillment is being sought
... input 1..1 BackboneElement Information used to perform task
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... type 1..1 CodeableConcept Label for the input
Binding: TaskInputOutputParameterType (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitant Medications", etc.
.... Slices for value[x] 1..1 Timing Content to use in performing the task
Slice: Unordered, Closed by type:$this
..... value[x]:valueTiming 1..1 Timing Content to use in performing the task
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
...... event Σ 0..* dateTime When the event occurs
...... repeat ΣC 0..1 Element When the event is to occur
Constraints: tim-1, tim-2, tim-4, tim-5, tim-6, tim-7, tim-8, tim-9, tim-10, tim-11, tim-12
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... bounds[x] Σ 0..1 Length/Range of lengths, or (Start and/or end) limits
........ boundsDuration Duration
........ boundsRange Range
........ boundsPeriod Period
....... count ΣC 0..1 positiveInt Number of times to repeat
....... countMax ΣC 0..1 positiveInt Maximum number of times to repeat
....... duration ΣC 0..1 decimal How long when it happens
....... durationMax ΣC 0..1 decimal How long when it happens (Max)
....... durationUnit ΣC 0..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
Binding: UnitsOfTime (required): A unit of time (units from UCUM).
....... frequency Σ 1..1 positiveInt Indicates the number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
....... frequencyMax Σ 0..1 positiveInt Event occurs up to frequencyMax times per period
....... period ΣC 1..1 decimal The duration to which the frequency applies. I.e. Event occurs frequency times per period
....... periodMax ΣC 0..1 decimal Upper limit of period (3-4 hours)
....... periodUnit ΣC 1..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
Binding: UnitsOfTime (required): A unit of time (units from UCUM).
....... startOffset Σ 0..1 SimpleQuantity(6.0.0-ballot5) Events within the repeat period do not start until startOffset has elapsed
....... endOffset Σ 0..1 SimpleQuantity(6.0.0-ballot5) Events within the repeat period stop once endOffset before the end of the period
....... dayOfWeek Σ 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required)
....... timeOfDay ΣC 0..* time Time of day for action
....... when ΣC 0..* code Code for time period of occurrence
Binding: EventTiming (required): Real-world event relating to the schedule.
....... offset ΣC 0..1 unsignedInt Minutes from event (before or after)
...... code Σ 0..1 CodeableConcept C | BID | TID | QID | AM | PM | QD | QOD | +
Binding: TimingAbbreviation (preferred): Code for a known / defined timing pattern.
... 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
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... type 1..1 CodeableConcept Label for output
Binding: TaskInputOutputParameterType (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
..... valueInteger64 integer64
..... 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
..... valueCodeableReference CodeableReference
..... valueCoding Coding
..... valueContactPoint ContactPoint
..... valueCount Count
..... valueDistance Distance
..... valueDuration Duration
..... valueHumanName HumanName
..... valueIdentifier Identifier
..... valueMoney Money
..... valuePeriod Period
..... valueQuantity Quantity
..... valueRange Range
..... valueRatio Ratio
..... valueRatioRange RatioRange
..... valueReference Reference(Any)
..... valueSampledData SampledData
..... valueSignature Signature
..... valueTiming Timing
..... valueContactDetail ContactDetail
..... valueDataRequirement DataRequirement
..... valueExpression Expression
..... valueParameterDefinition ParameterDefinition
..... valueRelatedArtifact RelatedArtifact
..... valueTriggerDefinition TriggerDefinition
..... valueUsageContext UsageContext
..... valueAvailability Availability
..... valueExtendedContactDetail ExtendedContactDetail
..... valueVirtualServiceDetail VirtualServiceDetail
..... valueDosage Dosage
..... valueMeta Meta

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Task.language Base required All Languages 📍6.0.0-ballot5 FHIR Std.
Task.status Base required Task Status 📍6.0.0-ballot5 FHIR Std.
Task.statusReason Base example Task Status Reason 📍6.0.0-ballot5 FHIR Std.
Task.businessStatus Base example Task Business Status 📍6.0.0-ballot5 FHIR Std.
Task.intent Base required Task Intent 📍6.0.0-ballot5 FHIR Std.
Task.priority Base required RequestPriority 📍6.0.0-ballot5 FHIR Std.
Task.code Base extensible Task Codes 📍6.0.0-ballot5 FHIR Std.
Task.requestedPerformer Base preferred Procedure Performer Role Codes 📍6.0.0-ballot5 FHIR Std.
Task.performer.function Base example Task Performer Function Code 📍6.0.0-ballot5 FHIR Std.
Task.reason Base example Task Reason 📍6.0.0-ballot5 FHIR Std.
Task.input.type Base example Task Input/Output Parameter Type 📍6.0.0-ballot5 FHIR Std.
Task.input.value[x]:valueTiming.​repeat.durationUnit Base required UnitsOfTime 📍6.0.0-ballot5 FHIR Std.
Task.input.value[x]:valueTiming.​repeat.periodUnit Base required UnitsOfTime 📍6.0.0-ballot5 FHIR Std.
Task.input.value[x]:valueTiming.​repeat.dayOfWeek Base required Days Of Week 📍6.0.0-ballot5 FHIR Std.
Task.input.value[x]:valueTiming.​repeat.when Base required EventTiming 📍6.0.0-ballot5 FHIR Std.
Task.input.value[x]:valueTiming.​code Base preferred TimingAbbreviation 📍6.0.0-ballot5 FHIR Std.
Task.output.type Base example Task Input/Output Parameter Type 📍6.0.0-ballot5 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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.trace('id') in %resource.descendants().select(reference | as(uri))) or descendants().where(reference='#' | as(uri)='#').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())
tim-1 error Task.input.value[x]:valueTiming.repeat if there's a duration, there needs to be duration units duration.empty() or durationUnit.exists()
tim-2 error Task.input.value[x]:valueTiming.repeat if there's a period, there needs to be period units period.empty() or periodUnit.exists()
tim-4 error Task.input.value[x]:valueTiming.repeat duration SHALL be a non-negative value duration.exists() implies duration >= 0
tim-5 error Task.input.value[x]:valueTiming.repeat period SHALL be a non-negative value period.exists() implies period >= 0
tim-6 error Task.input.value[x]:valueTiming.repeat If there's a periodMax, there must be a period periodMax.empty() or period.exists()
tim-7 error Task.input.value[x]:valueTiming.repeat If there's a durationMax, there must be a duration durationMax.empty() or duration.exists()
tim-8 error Task.input.value[x]:valueTiming.repeat If there's a countMax, there must be a count countMax.empty() or count.exists()
tim-9 error Task.input.value[x]:valueTiming.repeat If there's an offset, there must be a when (and not C, CM, CD, CV) offset.empty() or (when.exists() and when.select($this in ('C' | 'CM' | 'CD' | 'CV')).allFalse())
tim-10 error Task.input.value[x]:valueTiming.repeat If there's a timeOfDay, there cannot be a when, or vice versa timeOfDay.empty() or when.empty()
tim-11 error Task.input.value[x]:valueTiming.repeat Only use startOffset when frequency is present and > 1, and period is present startOffset.exists() implies (frequency > 1 and period.exists())
tim-12 error Task.input.value[x]:valueTiming.repeat Only use endOffset when frequency is present and > 1, and period is present endOffset.exists() implies (frequency > 1 and period.exists())
tsk-0 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
tsk-1 error Task Task.restriction is only allowed if the Task is seeking fulfillment and a focus is specified. restriction.exists() implies (code.coding.where(code='fulfill' and system='http://hl7.org/fhir/CodeSystem/task-code').exists() and focus.exists() and focus.value.ofType(Reference).exists())

This structure is derived from Task

Summary

Mandatory: 6 elements(3 nested mandatory elements)

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Task.input.value[x]

 

Other representations of profile: CSV, Excel, Schematron