Kenya Core Implementation Guide
1.0.0 - release Kenya flag

Kenya Core Implementation Guide, published by Digital Health Agency (DHA), Kenya. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/IntelliSOFT-Consulting/Kenya-core-FHIR-IG/ and changes regularly. See the Directory of published versions

Resource Profile: Kenya Core Task Profile

Official URL: https://fhir.dha.go.ke/ig/core/StructureDefinition/kenya-core-task Version: 1.0.0
Active as of 2026-08-11 Computable Name: KenyaCoreTask

Kenya Core base profile for a Task representing a piece of work to be performed in a clinical or administrative workflow, e.g. referral coordination, order fulfilment tracking. Intended to be reused and further constrained by other Kenya implementation guides.

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: inv-1
... id SΣ 1..1 id Logical id of this artifact
... meta SΣ 1..1 Meta Metadata about the resource
.... profile Σ 1..* canonical(StructureDefinition) Profiles this resource claims to conform to

Required Pattern: https://fhir.dha.go.ke/ig/core/StructureDefinition/kenya-core-task|1.0.0
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... identifier S 0..* Identifier Task Instance Identifier
.... use ?!SΣ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
.... type SΣ 1..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
.... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string The value that is unique
Example General: 123456
... status ?!SΣ 1..1 code draft | requested | received | accepted | ... | completed | entered-in-error
Binding: TaskStatus (required): The current status of the task.
... intent SΣ 1..1 code unknown | proposal | plan | order | ...
Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order.
... priority S 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.
... code SΣ 0..1 CodeableConcept What action is being requested/ordered
Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow.
.... coding SΣ 1..* Coding Code defined by a terminology system
..... system SΣ 1..1 uri Identity of the terminology system
..... code SΣ 1..1 code Symbol in syntax defined by the system
..... display SΣ 0..1 string Representation defined by the system
.... text SΣ 0..1 string Plain text representation of the concept
... description SΣ 0..1 string Human-readable explanation of task
... focus SΣ 0..1 Reference(Kenya Core ServiceRequest Profile) What request fulfilled by this task
... for SΣ 0..1 Reference(KenyaCore Patient Profile) Beneficiary of the Task
... encounter SΣ 0..1 Reference(Kenya Core Encounter Profile) Healthcare event during which this task originated
... executionPeriod SΣ 0..1 Period Start and end time of execution
... authoredOn SC 0..1 dateTime Task creation date
... lastModified SΣC 0..1 dateTime Task last modified date
... requester SΣ 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Who is asking for task to be done
... owner SΣ 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Responsible individual/organization for task execution
... input S 0..* BackboneElement Information used to perform task
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept Label for the input
Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.
.... value[x] 1..1 Content to use in performing the task
..... valueBase64Binary base64Binary
..... valueBoolean boolean
..... valueCanonical canonical(Any)
..... valueCode code
..... valueDate date
..... valueDateTime dateTime
..... valueDecimal decimal
..... valueId id
..... valueInstant instant
..... valueInteger integer
..... valueMarkdown markdown
..... valueOid oid
..... valuePositiveInt positiveInt
..... valueString string
..... valueTime time
..... valueUnsignedInt unsignedInt
..... valueUri uri
..... valueUrl url
..... valueUuid uuid
..... valueAddress Address
..... valueAge Age
..... valueAnnotation Annotation
..... valueAttachment Attachment
..... valueCodeableConcept CodeableConcept
..... valueCoding Coding
..... valueContactPoint ContactPoint
..... valueCount Count
..... valueDistance Distance
..... valueDuration Duration
..... valueHumanName HumanName
..... valueIdentifier Identifier
..... valueMoney Money
..... valuePeriod Period
..... valueQuantity Quantity
..... valueRange Range
..... valueRatio Ratio
..... valueReference Reference(Any)
..... valueSampledData SampledData
..... valueSignature Signature
..... valueTiming Timing
..... valueContactDetail ContactDetail
..... valueContributor Contributor
..... valueDataRequirement DataRequirement
..... valueExpression Expression
..... valueParameterDefinition ParameterDefinition
..... valueRelatedArtifact RelatedArtifact
..... valueTriggerDefinition TriggerDefinition
..... valueUsageContext UsageContext
..... valueDosage Dosage
..... valueMeta Meta
... output S 0..* BackboneElement Information produced as part of task
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept Label for output
Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.
.... value[x] 1..1 Result of output
..... valueBase64Binary base64Binary
..... valueBoolean boolean
..... valueCanonical canonical(Any)
..... valueCode code
..... valueDate date
..... valueDateTime dateTime
..... valueDecimal decimal
..... valueId id
..... valueInstant instant
..... valueInteger integer
..... valueMarkdown markdown
..... valueOid oid
..... valuePositiveInt positiveInt
..... valueString string
..... valueTime time
..... valueUnsignedInt unsignedInt
..... valueUri uri
..... valueUrl url
..... valueUuid uuid
..... valueAddress Address
..... valueAge Age
..... valueAnnotation Annotation
..... valueAttachment Attachment
..... valueCodeableConcept CodeableConcept
..... valueCoding Coding
..... valueContactPoint ContactPoint
..... valueCount Count
..... valueDistance Distance
..... valueDuration Duration
..... valueHumanName HumanName
..... valueIdentifier Identifier
..... valueMoney Money
..... valuePeriod Period
..... valueQuantity Quantity
..... valueRange Range
..... valueRatio Ratio
..... valueReference Reference(Any)
..... valueSampledData SampledData
..... valueSignature Signature
..... valueTiming Timing
..... valueContactDetail ContactDetail
..... valueContributor Contributor
..... valueDataRequirement DataRequirement
..... valueExpression Expression
..... valueParameterDefinition ParameterDefinition
..... valueRelatedArtifact RelatedArtifact
..... valueTriggerDefinition TriggerDefinition
..... valueUsageContext UsageContext
..... valueDosage Dosage
..... valueMeta Meta

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Task.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Task.identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Task.status Base required TaskStatus 📍4.0.1 FHIR Std.
Task.intent Base required TaskIntent 📍4.0.1 FHIR Std.
Task.priority Base required Request priority 📍4.0.1 FHIR Std.
Task.code Base example Task Codes 📍4.0.1 FHIR Std.
Task.input.type Base example Not State Unknown
Task.output.type Base example Not State Unknown

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 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

This structure is derived from Task

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Task 0..* Task A task to be performed
... id S 1..1 id Logical id of this artifact
... meta S 1..1 Meta Metadata about the resource
.... profile 1..* canonical(StructureDefinition) Profiles this resource claims to conform to
Required Pattern: https://fhir.dha.go.ke/ig/core/StructureDefinition/kenya-core-task|1.0.0
... identifier S 0..* Identifier Task Instance Identifier
.... use S 0..1 code usual | official | temp | secondary | old (If known)
.... type S 1..1 CodeableConcept Description of identifier
.... system S 1..1 uri The namespace for the identifier value
.... value S 1..1 string The value that is unique
... intent S 1..1 code unknown | proposal | plan | order | ...
... priority S 0..1 code routine | urgent | asap | stat
... code S 0..1 CodeableConcept What action is being requested/ordered
.... coding S 1..* Coding Code defined by a terminology system
..... system S 1..1 uri Identity of the terminology system
..... code S 1..1 code Symbol in syntax defined by the system
..... display S 0..1 string Representation defined by the system
.... text S 0..1 string Plain text representation of the concept
... description S 0..1 string Human-readable explanation of task
... focus S 0..1 Reference(Kenya Core ServiceRequest Profile) What request fulfilled by this task
... for S 0..1 Reference(KenyaCore Patient Profile) Beneficiary of the Task
... encounter S 0..1 Reference(Kenya Core Encounter Profile) Healthcare event during which this task originated
... executionPeriod S 0..1 Period Start and end time of execution
... authoredOn S 0..1 dateTime Task creation date
... lastModified S 0..1 dateTime Task last modified date
... requester S 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Who is asking for task to be done
... owner S 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Responsible individual/organization for task execution
... input S 0..* BackboneElement Information used to perform task
... output S 0..* BackboneElement Information produced as part of task

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Task C 0..* Task A task to be performed
Constraints: inv-1
... id SΣ 1..1 id Logical id of this artifact
... meta SΣ 1..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated Σ 0..1 instant When the resource version last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile Σ 1..* canonical(StructureDefinition) Profiles this resource claims to conform to

Required Pattern: https://fhir.dha.go.ke/ig/core/StructureDefinition/kenya-core-task|1.0.0
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
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
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier S 0..* Identifier Task Instance Identifier
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!SΣ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
.... type SΣ 1..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
.... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string The value that is unique
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... instantiatesCanonical Σ 0..1 canonical(ActivityDefinition) Formal definition of task
... instantiatesUri Σ 0..1 uri Formal definition of task
... basedOn Σ 0..* Reference(Resource) Request fulfilled by this task
... groupIdentifier Σ 0..1 Identifier Requisition or grouper id
... partOf Σ 0..* Reference(Task) Composite task
... status ?!SΣ 1..1 code draft | requested | received | accepted | ... | completed | entered-in-error
Binding: TaskStatus (required): The current status of the task.
... statusReason Σ 0..1 CodeableConcept Reason for current status
Binding Description: (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 Description: (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.
... intent SΣ 1..1 code unknown | proposal | plan | order | ...
Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order.
... priority S 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.
... code SΣ 0..1 CodeableConcept What action is being requested/ordered
Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding SΣ 1..* Coding Code defined by a terminology system
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system SΣ 1..1 uri Identity of the terminology system
..... version Σ 0..1 string Version of the system - if relevant
..... code SΣ 1..1 code Symbol in syntax defined by the system
..... display SΣ 0..1 string Representation defined by the system
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text SΣ 0..1 string Plain text representation of the concept
... description SΣ 0..1 string Human-readable explanation of task
... focus SΣ 0..1 Reference(Kenya Core ServiceRequest Profile) What request fulfilled by this task
... for SΣ 0..1 Reference(KenyaCore Patient Profile) Beneficiary of the Task
... encounter SΣ 0..1 Reference(Kenya Core Encounter Profile) Healthcare event during which this task originated
... executionPeriod SΣ 0..1 Period Start and end time of execution
... authoredOn SC 0..1 dateTime Task creation date
... lastModified SΣC 0..1 dateTime Task last modified date
... requester SΣ 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Who is asking for task to be done
... performerType 0..* CodeableConcept Requested performer
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.
... owner SΣ 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Responsible individual/organization for task execution
... location Σ 0..1 Reference(Location) Where task occurs
... reasonCode 0..1 CodeableConcept Why task is needed
Binding Description: (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.
... reasonReference 0..1 Reference(Resource) Why task is needed
... insurance 0..* Reference(Coverage | ClaimResponse) Associated insurance coverage
... note 0..* Annotation Comments made about the task
... relevantHistory 0..* Reference(Provenance) Key events in history of the Task
... restriction 0..1 BackboneElement Constraints on fulfillment tasks
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... repetitions 0..1 positiveInt How many times to repeat
.... period 0..1 Period When fulfillment sought
.... recipient 0..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization) For whom is fulfillment sought?
... input S 0..* BackboneElement Information used to perform task
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept Label for the input
Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.
.... value[x] 1..1 Content to use in performing the task
..... valueBase64Binary base64Binary
..... valueBoolean boolean
..... valueCanonical canonical(Any)
..... valueCode code
..... valueDate date
..... valueDateTime dateTime
..... valueDecimal decimal
..... valueId id
..... valueInstant instant
..... valueInteger integer
..... valueMarkdown markdown
..... valueOid oid
..... valuePositiveInt positiveInt
..... valueString string
..... valueTime time
..... valueUnsignedInt unsignedInt
..... valueUri uri
..... valueUrl url
..... valueUuid uuid
..... valueAddress Address
..... valueAge Age
..... valueAnnotation Annotation
..... valueAttachment Attachment
..... valueCodeableConcept CodeableConcept
..... valueCoding Coding
..... valueContactPoint ContactPoint
..... valueCount Count
..... valueDistance Distance
..... valueDuration Duration
..... valueHumanName HumanName
..... valueIdentifier Identifier
..... valueMoney Money
..... valuePeriod Period
..... valueQuantity Quantity
..... valueRange Range
..... valueRatio Ratio
..... valueReference Reference(Any)
..... valueSampledData SampledData
..... valueSignature Signature
..... valueTiming Timing
..... valueContactDetail ContactDetail
..... valueContributor Contributor
..... valueDataRequirement DataRequirement
..... valueExpression Expression
..... valueParameterDefinition ParameterDefinition
..... valueRelatedArtifact RelatedArtifact
..... valueTriggerDefinition TriggerDefinition
..... valueUsageContext UsageContext
..... valueDosage Dosage
..... valueMeta Meta
... output S 0..* BackboneElement Information produced as part of task
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept Label for output
Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.
.... value[x] 1..1 Result of output
..... valueBase64Binary base64Binary
..... valueBoolean boolean
..... valueCanonical canonical(Any)
..... valueCode code
..... valueDate date
..... valueDateTime dateTime
..... valueDecimal decimal
..... valueId id
..... valueInstant instant
..... valueInteger integer
..... valueMarkdown markdown
..... valueOid oid
..... valuePositiveInt positiveInt
..... valueString string
..... valueTime time
..... valueUnsignedInt unsignedInt
..... valueUri uri
..... valueUrl url
..... valueUuid uuid
..... valueAddress Address
..... valueAge Age
..... valueAnnotation Annotation
..... valueAttachment Attachment
..... valueCodeableConcept CodeableConcept
..... valueCoding Coding
..... valueContactPoint ContactPoint
..... valueCount Count
..... valueDistance Distance
..... valueDuration Duration
..... valueHumanName HumanName
..... valueIdentifier Identifier
..... valueMoney Money
..... valuePeriod Period
..... valueQuantity Quantity
..... valueRange Range
..... valueRatio Ratio
..... valueReference Reference(Any)
..... valueSampledData SampledData
..... valueSignature Signature
..... valueTiming Timing
..... valueContactDetail ContactDetail
..... valueContributor Contributor
..... valueDataRequirement DataRequirement
..... valueExpression Expression
..... valueParameterDefinition ParameterDefinition
..... valueRelatedArtifact RelatedArtifact
..... valueTriggerDefinition TriggerDefinition
..... valueUsageContext UsageContext
..... valueDosage Dosage
..... valueMeta Meta

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Task.meta.security Base extensible SecurityLabels 📍4.0.1 FHIR Std.
Task.meta.tag Base example Common Tags 📍4.0.1 FHIR Std.
Task.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Task.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Task.identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Task.status Base required TaskStatus 📍4.0.1 FHIR Std.
Task.statusReason Base example Not State Unknown
Task.businessStatus Base example Not State Unknown
Task.intent Base required TaskIntent 📍4.0.1 FHIR Std.
Task.priority Base required Request priority 📍4.0.1 FHIR Std.
Task.code Base example Task Codes 📍4.0.1 FHIR Std.
Task.performerType Base preferred Procedure Performer Role Codes 📍4.0.1 FHIR Std.
Task.reasonCode Base example Not State Unknown
Task.input.type Base example Not State Unknown
Task.output.type Base example Not State Unknown

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 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

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Task C 0..* Task A task to be performed
Constraints: inv-1
... id SΣ 1..1 id Logical id of this artifact
... meta SΣ 1..1 Meta Metadata about the resource
.... profile Σ 1..* canonical(StructureDefinition) Profiles this resource claims to conform to

Required Pattern: https://fhir.dha.go.ke/ig/core/StructureDefinition/kenya-core-task|1.0.0
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... identifier S 0..* Identifier Task Instance Identifier
.... use ?!SΣ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
.... type SΣ 1..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
.... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string The value that is unique
Example General: 123456
... status ?!SΣ 1..1 code draft | requested | received | accepted | ... | completed | entered-in-error
Binding: TaskStatus (required): The current status of the task.
... intent SΣ 1..1 code unknown | proposal | plan | order | ...
Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order.
... priority S 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.
... code SΣ 0..1 CodeableConcept What action is being requested/ordered
Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow.
.... coding SΣ 1..* Coding Code defined by a terminology system
..... system SΣ 1..1 uri Identity of the terminology system
..... code SΣ 1..1 code Symbol in syntax defined by the system
..... display SΣ 0..1 string Representation defined by the system
.... text SΣ 0..1 string Plain text representation of the concept
... description SΣ 0..1 string Human-readable explanation of task
... focus SΣ 0..1 Reference(Kenya Core ServiceRequest Profile) What request fulfilled by this task
... for SΣ 0..1 Reference(KenyaCore Patient Profile) Beneficiary of the Task
... encounter SΣ 0..1 Reference(Kenya Core Encounter Profile) Healthcare event during which this task originated
... executionPeriod SΣ 0..1 Period Start and end time of execution
... authoredOn SC 0..1 dateTime Task creation date
... lastModified SΣC 0..1 dateTime Task last modified date
... requester SΣ 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Who is asking for task to be done
... owner SΣ 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Responsible individual/organization for task execution
... input S 0..* BackboneElement Information used to perform task
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept Label for the input
Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.
.... value[x] 1..1 Content to use in performing the task
..... valueBase64Binary base64Binary
..... valueBoolean boolean
..... valueCanonical canonical(Any)
..... valueCode code
..... valueDate date
..... valueDateTime dateTime
..... valueDecimal decimal
..... valueId id
..... valueInstant instant
..... valueInteger integer
..... valueMarkdown markdown
..... valueOid oid
..... valuePositiveInt positiveInt
..... valueString string
..... valueTime time
..... valueUnsignedInt unsignedInt
..... valueUri uri
..... valueUrl url
..... valueUuid uuid
..... valueAddress Address
..... valueAge Age
..... valueAnnotation Annotation
..... valueAttachment Attachment
..... valueCodeableConcept CodeableConcept
..... valueCoding Coding
..... valueContactPoint ContactPoint
..... valueCount Count
..... valueDistance Distance
..... valueDuration Duration
..... valueHumanName HumanName
..... valueIdentifier Identifier
..... valueMoney Money
..... valuePeriod Period
..... valueQuantity Quantity
..... valueRange Range
..... valueRatio Ratio
..... valueReference Reference(Any)
..... valueSampledData SampledData
..... valueSignature Signature
..... valueTiming Timing
..... valueContactDetail ContactDetail
..... valueContributor Contributor
..... valueDataRequirement DataRequirement
..... valueExpression Expression
..... valueParameterDefinition ParameterDefinition
..... valueRelatedArtifact RelatedArtifact
..... valueTriggerDefinition TriggerDefinition
..... valueUsageContext UsageContext
..... valueDosage Dosage
..... valueMeta Meta
... output S 0..* BackboneElement Information produced as part of task
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept Label for output
Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.
.... value[x] 1..1 Result of output
..... valueBase64Binary base64Binary
..... valueBoolean boolean
..... valueCanonical canonical(Any)
..... valueCode code
..... valueDate date
..... valueDateTime dateTime
..... valueDecimal decimal
..... valueId id
..... valueInstant instant
..... valueInteger integer
..... valueMarkdown markdown
..... valueOid oid
..... valuePositiveInt positiveInt
..... valueString string
..... valueTime time
..... valueUnsignedInt unsignedInt
..... valueUri uri
..... valueUrl url
..... valueUuid uuid
..... valueAddress Address
..... valueAge Age
..... valueAnnotation Annotation
..... valueAttachment Attachment
..... valueCodeableConcept CodeableConcept
..... valueCoding Coding
..... valueContactPoint ContactPoint
..... valueCount Count
..... valueDistance Distance
..... valueDuration Duration
..... valueHumanName HumanName
..... valueIdentifier Identifier
..... valueMoney Money
..... valuePeriod Period
..... valueQuantity Quantity
..... valueRange Range
..... valueRatio Ratio
..... valueReference Reference(Any)
..... valueSampledData SampledData
..... valueSignature Signature
..... valueTiming Timing
..... valueContactDetail ContactDetail
..... valueContributor Contributor
..... valueDataRequirement DataRequirement
..... valueExpression Expression
..... valueParameterDefinition ParameterDefinition
..... valueRelatedArtifact RelatedArtifact
..... valueTriggerDefinition TriggerDefinition
..... valueUsageContext UsageContext
..... valueDosage Dosage
..... valueMeta Meta

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Task.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Task.identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Task.status Base required TaskStatus 📍4.0.1 FHIR Std.
Task.intent Base required TaskIntent 📍4.0.1 FHIR Std.
Task.priority Base required Request priority 📍4.0.1 FHIR Std.
Task.code Base example Task Codes 📍4.0.1 FHIR Std.
Task.input.type Base example Not State Unknown
Task.output.type Base example Not State Unknown

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 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

Differential View

This structure is derived from Task

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Task 0..* Task A task to be performed
... id S 1..1 id Logical id of this artifact
... meta S 1..1 Meta Metadata about the resource
.... profile 1..* canonical(StructureDefinition) Profiles this resource claims to conform to
Required Pattern: https://fhir.dha.go.ke/ig/core/StructureDefinition/kenya-core-task|1.0.0
... identifier S 0..* Identifier Task Instance Identifier
.... use S 0..1 code usual | official | temp | secondary | old (If known)
.... type S 1..1 CodeableConcept Description of identifier
.... system S 1..1 uri The namespace for the identifier value
.... value S 1..1 string The value that is unique
... intent S 1..1 code unknown | proposal | plan | order | ...
... priority S 0..1 code routine | urgent | asap | stat
... code S 0..1 CodeableConcept What action is being requested/ordered
.... coding S 1..* Coding Code defined by a terminology system
..... system S 1..1 uri Identity of the terminology system
..... code S 1..1 code Symbol in syntax defined by the system
..... display S 0..1 string Representation defined by the system
.... text S 0..1 string Plain text representation of the concept
... description S 0..1 string Human-readable explanation of task
... focus S 0..1 Reference(Kenya Core ServiceRequest Profile) What request fulfilled by this task
... for S 0..1 Reference(KenyaCore Patient Profile) Beneficiary of the Task
... encounter S 0..1 Reference(Kenya Core Encounter Profile) Healthcare event during which this task originated
... executionPeriod S 0..1 Period Start and end time of execution
... authoredOn S 0..1 dateTime Task creation date
... lastModified S 0..1 dateTime Task last modified date
... requester S 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Who is asking for task to be done
... owner S 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Responsible individual/organization for task execution
... input S 0..* BackboneElement Information used to perform task
... output S 0..* BackboneElement Information produced as part of task

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Task C 0..* Task A task to be performed
Constraints: inv-1
... id SΣ 1..1 id Logical id of this artifact
... meta SΣ 1..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated Σ 0..1 instant When the resource version last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile Σ 1..* canonical(StructureDefinition) Profiles this resource claims to conform to

Required Pattern: https://fhir.dha.go.ke/ig/core/StructureDefinition/kenya-core-task|1.0.0
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
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
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier S 0..* Identifier Task Instance Identifier
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!SΣ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
.... type SΣ 1..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
.... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string The value that is unique
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... instantiatesCanonical Σ 0..1 canonical(ActivityDefinition) Formal definition of task
... instantiatesUri Σ 0..1 uri Formal definition of task
... basedOn Σ 0..* Reference(Resource) Request fulfilled by this task
... groupIdentifier Σ 0..1 Identifier Requisition or grouper id
... partOf Σ 0..* Reference(Task) Composite task
... status ?!SΣ 1..1 code draft | requested | received | accepted | ... | completed | entered-in-error
Binding: TaskStatus (required): The current status of the task.
... statusReason Σ 0..1 CodeableConcept Reason for current status
Binding Description: (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 Description: (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.
... intent SΣ 1..1 code unknown | proposal | plan | order | ...
Binding: TaskIntent (required): Distinguishes whether the task is a proposal, plan or full order.
... priority S 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.
... code SΣ 0..1 CodeableConcept What action is being requested/ordered
Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding SΣ 1..* Coding Code defined by a terminology system
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system SΣ 1..1 uri Identity of the terminology system
..... version Σ 0..1 string Version of the system - if relevant
..... code SΣ 1..1 code Symbol in syntax defined by the system
..... display SΣ 0..1 string Representation defined by the system
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text SΣ 0..1 string Plain text representation of the concept
... description SΣ 0..1 string Human-readable explanation of task
... focus SΣ 0..1 Reference(Kenya Core ServiceRequest Profile) What request fulfilled by this task
... for SΣ 0..1 Reference(KenyaCore Patient Profile) Beneficiary of the Task
... encounter SΣ 0..1 Reference(Kenya Core Encounter Profile) Healthcare event during which this task originated
... executionPeriod SΣ 0..1 Period Start and end time of execution
... authoredOn SC 0..1 dateTime Task creation date
... lastModified SΣC 0..1 dateTime Task last modified date
... requester SΣ 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Who is asking for task to be done
... performerType 0..* CodeableConcept Requested performer
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.
... owner SΣ 0..1 Reference(KenyaCore Organization Profile | KenyaCore PractitionerRole Profile | KenyaCore Practitioner Profile) Responsible individual/organization for task execution
... location Σ 0..1 Reference(Location) Where task occurs
... reasonCode 0..1 CodeableConcept Why task is needed
Binding Description: (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.
... reasonReference 0..1 Reference(Resource) Why task is needed
... insurance 0..* Reference(Coverage | ClaimResponse) Associated insurance coverage
... note 0..* Annotation Comments made about the task
... relevantHistory 0..* Reference(Provenance) Key events in history of the Task
... restriction 0..1 BackboneElement Constraints on fulfillment tasks
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... repetitions 0..1 positiveInt How many times to repeat
.... period 0..1 Period When fulfillment sought
.... recipient 0..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization) For whom is fulfillment sought?
... input S 0..* BackboneElement Information used to perform task
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept Label for the input
Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc.
.... value[x] 1..1 Content to use in performing the task
..... valueBase64Binary base64Binary
..... valueBoolean boolean
..... valueCanonical canonical(Any)
..... valueCode code
..... valueDate date
..... valueDateTime dateTime
..... valueDecimal decimal
..... valueId id
..... valueInstant instant
..... valueInteger integer
..... valueMarkdown markdown
..... valueOid oid
..... valuePositiveInt positiveInt
..... valueString string
..... valueTime time
..... valueUnsignedInt unsignedInt
..... valueUri uri
..... valueUrl url
..... valueUuid uuid
..... valueAddress Address
..... valueAge Age
..... valueAnnotation Annotation
..... valueAttachment Attachment
..... valueCodeableConcept CodeableConcept
..... valueCoding Coding
..... valueContactPoint ContactPoint
..... valueCount Count
..... valueDistance Distance
..... valueDuration Duration
..... valueHumanName HumanName
..... valueIdentifier Identifier
..... valueMoney Money
..... valuePeriod Period
..... valueQuantity Quantity
..... valueRange Range
..... valueRatio Ratio
..... valueReference Reference(Any)
..... valueSampledData SampledData
..... valueSignature Signature
..... valueTiming Timing
..... valueContactDetail ContactDetail
..... valueContributor Contributor
..... valueDataRequirement DataRequirement
..... valueExpression Expression
..... valueParameterDefinition ParameterDefinition
..... valueRelatedArtifact RelatedArtifact
..... valueTriggerDefinition TriggerDefinition
..... valueUsageContext UsageContext
..... valueDosage Dosage
..... valueMeta Meta
... output S 0..* BackboneElement Information produced as part of task
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept Label for output
Binding Description: (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc.
.... value[x] 1..1 Result of output
..... valueBase64Binary base64Binary
..... valueBoolean boolean
..... valueCanonical canonical(Any)
..... valueCode code
..... valueDate date
..... valueDateTime dateTime
..... valueDecimal decimal
..... valueId id
..... valueInstant instant
..... valueInteger integer
..... valueMarkdown markdown
..... valueOid oid
..... valuePositiveInt positiveInt
..... valueString string
..... valueTime time
..... valueUnsignedInt unsignedInt
..... valueUri uri
..... valueUrl url
..... valueUuid uuid
..... valueAddress Address
..... valueAge Age
..... valueAnnotation Annotation
..... valueAttachment Attachment
..... valueCodeableConcept CodeableConcept
..... valueCoding Coding
..... valueContactPoint ContactPoint
..... valueCount Count
..... valueDistance Distance
..... valueDuration Duration
..... valueHumanName HumanName
..... valueIdentifier Identifier
..... valueMoney Money
..... valuePeriod Period
..... valueQuantity Quantity
..... valueRange Range
..... valueRatio Ratio
..... valueReference Reference(Any)
..... valueSampledData SampledData
..... valueSignature Signature
..... valueTiming Timing
..... valueContactDetail ContactDetail
..... valueContributor Contributor
..... valueDataRequirement DataRequirement
..... valueExpression Expression
..... valueParameterDefinition ParameterDefinition
..... valueRelatedArtifact RelatedArtifact
..... valueTriggerDefinition TriggerDefinition
..... valueUsageContext UsageContext
..... valueDosage Dosage
..... valueMeta Meta

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Task.meta.security Base extensible SecurityLabels 📍4.0.1 FHIR Std.
Task.meta.tag Base example Common Tags 📍4.0.1 FHIR Std.
Task.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Task.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Task.identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Task.status Base required TaskStatus 📍4.0.1 FHIR Std.
Task.statusReason Base example Not State Unknown
Task.businessStatus Base example Not State Unknown
Task.intent Base required TaskIntent 📍4.0.1 FHIR Std.
Task.priority Base required Request priority 📍4.0.1 FHIR Std.
Task.code Base example Task Codes 📍4.0.1 FHIR Std.
Task.performerType Base preferred Procedure Performer Role Codes 📍4.0.1 FHIR Std.
Task.reasonCode Base example Not State Unknown
Task.input.type Base example Not State Unknown
Task.output.type Base example Not State Unknown

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 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

 

Other representations of profile: CSV, Excel, Schematron