Botswana FHIR Implementation Guide - Laboratory
1.0.0 - STU1
Botswana FHIR Implementation Guide - Laboratory, published by Jembi Health Systems. 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/jembi/bw-laboratory-workflows-ig/ and changes regularly. See the Directory of published versions
Official URL: http://moh.bw.org/StructureDefinition/uat-pims-lab-order-task | Version: 1.0.0 | |||
Active as of 2024-08-28 | Computable Name: PimsUATLabTask |
Assists with tracking the state of the lab order and its completion status.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from GenericUATLabTask
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Task | 0..* | GenericUATLabTask | A task to be performed | |
basedOn | 1..* | Reference(Service Request - PIMS Lab Orders) | Request fulfilled by this task | |
for | 1..1 | Reference(Patient - PIMS) | Beneficiary of the Task | |
output | ||||
Slices for value[x] | Content/Rules for all slices | |||
value[x]:valueReference | 1..1 | Reference(Diagnostic Report - PIMS Lab Result) | Result of output | |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Task | C | 0..* | GenericUATLabTask | A task to be performed inv-1: Last modified date must be greater than or equal to authored-on date. |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
Slices for identifier | 1..* | Identifier | Task Instance Identifier Slice: Unordered, Open by value:system | |
identifier:FILL | 1..1 | Identifier | Task Instance Identifier | |
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . |
system | Σ | 1..1 | uri | The namespace for the identifier value Required Pattern: http://moh.bw.org/identifier/task-id |
value | Σ | 1..1 | string | The value that is unique Example General: 123456 |
basedOn | Σ | 1..* | Reference(Service Request - PIMS Lab Orders) | Request fulfilled by this task |
status | ?!Σ | 1..1 | code | draft | requested | received | accepted | + Binding: TaskStatus (required): The current status of the task. |
statusReason | SΣ | 0..1 | CodeableConcept | Indicates a reason for the lab order being cancelled or rejected. Binding: Reasons why a lab order was cancelled or rejected (extensible) |
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. Required Pattern: order |
for | Σ | 1..1 | Reference(Patient - PIMS) | Beneficiary of the Task |
executionPeriod | Σ | 1..1 | Period | Start and end time of execution |
requester | Σ | 1..1 | Reference(Practitioner - General Practitioner | Organization) | Who is asking for task to be done |
owner | Σ | 1..1 | Reference(Practitioner - General Practitioner | Organization) | Responsible individual |
output | S | 0..* | BackboneElement | Indicates artifacts directly associated with the task. |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
type | 1..1 | CodeableConcept | Label for output Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc. | |
text | Σ | 1..1 | string | Plain text representation of the concept |
Slices for value[x] | 1..1 | Reference() | Result of output Slice: Unordered, Closed by type:$this | |
value[x]:valueReference | 1..1 | Reference(Diagnostic Report - PIMS Lab Result) | Result of output | |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Task.identifier:FILL.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | |
Task.status | required | TaskStatushttp://hl7.org/fhir/ValueSet/task-status|4.0.1 from the FHIR Standard | |
Task.statusReason | extensible | VSReasonForSampleCancellationOrRejectionhttp://moh.bw.org/ValueSet/vs-reason-sample-cancelled-or-rejected from this IG | |
Task.intent | required | Pattern: orderhttp://hl7.org/fhir/ValueSet/task-intent|4.0.1 from the FHIR Standard | |
Task.output.type | example |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Task | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Task | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Task | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Task | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Task | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. : lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Task | C | 0..* | GenericUATLabTask | A task to be performed inv-1: Last modified date must be greater than or equal to authored-on date. | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
Slices for identifier | 1..* | Identifier | Task Instance Identifier Slice: Unordered, Open by value:system | |||||
identifier:FILL | 1..1 | 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 | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
type | Σ | 0..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 | Σ | 1..1 | uri | The namespace for the identifier value Required Pattern: http://moh.bw.org/identifier/task-id | ||||
value | Σ | 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 | Σ | 1..* | Reference(Service Request - PIMS Lab Orders) | 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 | SΣ | 0..1 | CodeableConcept | Indicates a reason for the lab order being cancelled or rejected. Binding: Reasons why a lab order was cancelled or rejected (extensible) | ||||
businessStatus | Σ | 0..1 | CodeableConcept | E.g. "Specimen collected", "IV prepped" Binding Description (No ValueSet): (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc. | ||||
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. Required Pattern: order | ||||
priority | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): The task's priority. | |||||
code | Σ | 0..1 | CodeableConcept | Task Type Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow. | ||||
description | Σ | 0..1 | string | Human-readable explanation of task | ||||
focus | Σ | 0..1 | Reference(Resource) | What task is acting on | ||||
for | Σ | 1..1 | Reference(Patient - PIMS) | Beneficiary of the Task | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this task originated | ||||
executionPeriod | Σ | 1..1 | Period | Start and end time of execution | ||||
authoredOn | C | 0..1 | dateTime | Task Creation Date | ||||
lastModified | ΣC | 0..1 | dateTime | Task Last Modified Date | ||||
requester | Σ | 1..1 | Reference(Practitioner - General Practitioner | Organization) | Who is asking for task to be done | ||||
performerType | 0..* | CodeableConcept | Requested performer Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed. | |||||
owner | Σ | 1..1 | Reference(Practitioner - General Practitioner | Organization) | Responsible individual | ||||
location | Σ | 0..1 | Reference(Location) | Where task occurs | ||||
reasonCode | 0..1 | CodeableConcept | Why task is needed Binding Description (No ValueSet): (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital. | |||||
reasonReference | 0..1 | Reference(Resource) | Why task is needed | |||||
insurance | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage | |||||
note | 0..* | Annotation | Comments made about the task | |||||
relevantHistory | 0..* | Reference(Provenance) | Key events in history of the Task | |||||
restriction | 0..1 | BackboneElement | Constraints on fulfillment tasks | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
repetitions | 0..1 | positiveInt | How many times to repeat | |||||
period | 0..1 | Period | When fulfillment sought | |||||
recipient | 0..* | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization) | For whom is fulfillment sought? | |||||
input | 0..* | BackboneElement | Information used to perform task | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
type | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. | |||||
value[x] | 1..1 | Content to use in performing the task | ||||||
valueBase64Binary | base64Binary | |||||||
valueBoolean | boolean | |||||||
valueCanonical | canonical(Any) | |||||||
valueCode | code | |||||||
valueDate | date | |||||||
valueDateTime | dateTime | |||||||
valueDecimal | decimal | |||||||
valueId | id | |||||||
valueInstant | instant | |||||||
valueInteger | integer | |||||||
valueMarkdown | markdown | |||||||
valueOid | oid | |||||||
valuePositiveInt | positiveInt | |||||||
valueString | string | |||||||
valueTime | time | |||||||
valueUnsignedInt | unsignedInt | |||||||
valueUri | uri | |||||||
valueUrl | url | |||||||
valueUuid | uuid | |||||||
valueAddress | Address | |||||||
valueAge | Age | |||||||
valueAnnotation | Annotation | |||||||
valueAttachment | Attachment | |||||||
valueCodeableConcept | CodeableConcept | |||||||
valueCoding | Coding | |||||||
valueContactPoint | ContactPoint | |||||||
valueCount | Count | |||||||
valueDistance | Distance | |||||||
valueDuration | Duration | |||||||
valueHumanName | HumanName | |||||||
valueIdentifier | Identifier | |||||||
valueMoney | Money | |||||||
valuePeriod | Period | |||||||
valueQuantity | Quantity | |||||||
valueRange | Range | |||||||
valueRatio | Ratio | |||||||
valueReference | Reference(Any) | |||||||
valueSampledData | SampledData | |||||||
valueSignature | Signature | |||||||
valueTiming | Timing | |||||||
valueContactDetail | ContactDetail | |||||||
valueContributor | Contributor | |||||||
valueDataRequirement | DataRequirement | |||||||
valueExpression | Expression | |||||||
valueParameterDefinition | ParameterDefinition | |||||||
valueRelatedArtifact | RelatedArtifact | |||||||
valueTriggerDefinition | TriggerDefinition | |||||||
valueUsageContext | UsageContext | |||||||
valueDosage | Dosage | |||||||
valueMeta | Meta | |||||||
output | S | 0..* | BackboneElement | Indicates artifacts directly associated with the 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 (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc. | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
coding | Σ | 0..* | Coding | Code defined by a terminology system | ||||
text | Σ | 1..1 | string | Plain text representation of the concept | ||||
Slices for value[x] | 1..1 | Reference() | Result of output Slice: Unordered, Closed by type:$this | |||||
value[x]:valueReference | 1..1 | Reference(Diagnostic Report - PIMS Lab Result) | Result of output | |||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
Task.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Task.identifier:FILL.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Task.identifier:FILL.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Task.status | required | TaskStatushttp://hl7.org/fhir/ValueSet/task-status|4.0.1 from the FHIR Standard | ||||
Task.statusReason | extensible | VSReasonForSampleCancellationOrRejectionhttp://moh.bw.org/ValueSet/vs-reason-sample-cancelled-or-rejected from this IG | ||||
Task.businessStatus | example | |||||
Task.intent | required | Pattern: orderhttp://hl7.org/fhir/ValueSet/task-intent|4.0.1 from the FHIR Standard | ||||
Task.priority | required | RequestPriorityhttp://hl7.org/fhir/ValueSet/request-priority|4.0.1 from the FHIR Standard | ||||
Task.code | example | TaskCodehttp://hl7.org/fhir/ValueSet/task-code from the FHIR Standard | ||||
Task.performerType | preferred | ProcedurePerformerRoleCodeshttp://hl7.org/fhir/ValueSet/performer-role from the FHIR Standard | ||||
Task.reasonCode | example | |||||
Task.input.type | example | |||||
Task.output.type | example |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Task | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Task | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Task | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Task | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Task | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. : lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn |
This structure is derived from GenericUATLabTask
Differential View
This structure is derived from GenericUATLabTask
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Task | 0..* | GenericUATLabTask | A task to be performed | |
basedOn | 1..* | Reference(Service Request - PIMS Lab Orders) | Request fulfilled by this task | |
for | 1..1 | Reference(Patient - PIMS) | Beneficiary of the Task | |
output | ||||
Slices for value[x] | Content/Rules for all slices | |||
value[x]:valueReference | 1..1 | Reference(Diagnostic Report - PIMS Lab Result) | Result of output | |
Documentation for this format |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Task | C | 0..* | GenericUATLabTask | A task to be performed inv-1: Last modified date must be greater than or equal to authored-on date. |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
Slices for identifier | 1..* | Identifier | Task Instance Identifier Slice: Unordered, Open by value:system | |
identifier:FILL | 1..1 | Identifier | Task Instance Identifier | |
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . |
system | Σ | 1..1 | uri | The namespace for the identifier value Required Pattern: http://moh.bw.org/identifier/task-id |
value | Σ | 1..1 | string | The value that is unique Example General: 123456 |
basedOn | Σ | 1..* | Reference(Service Request - PIMS Lab Orders) | Request fulfilled by this task |
status | ?!Σ | 1..1 | code | draft | requested | received | accepted | + Binding: TaskStatus (required): The current status of the task. |
statusReason | SΣ | 0..1 | CodeableConcept | Indicates a reason for the lab order being cancelled or rejected. Binding: Reasons why a lab order was cancelled or rejected (extensible) |
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. Required Pattern: order |
for | Σ | 1..1 | Reference(Patient - PIMS) | Beneficiary of the Task |
executionPeriod | Σ | 1..1 | Period | Start and end time of execution |
requester | Σ | 1..1 | Reference(Practitioner - General Practitioner | Organization) | Who is asking for task to be done |
owner | Σ | 1..1 | Reference(Practitioner - General Practitioner | Organization) | Responsible individual |
output | S | 0..* | BackboneElement | Indicates artifacts directly associated with the task. |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
type | 1..1 | CodeableConcept | Label for output Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc. | |
text | Σ | 1..1 | string | Plain text representation of the concept |
Slices for value[x] | 1..1 | Reference() | Result of output Slice: Unordered, Closed by type:$this | |
value[x]:valueReference | 1..1 | Reference(Diagnostic Report - PIMS Lab Result) | Result of output | |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Task.identifier:FILL.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | |
Task.status | required | TaskStatushttp://hl7.org/fhir/ValueSet/task-status|4.0.1 from the FHIR Standard | |
Task.statusReason | extensible | VSReasonForSampleCancellationOrRejectionhttp://moh.bw.org/ValueSet/vs-reason-sample-cancelled-or-rejected from this IG | |
Task.intent | required | Pattern: orderhttp://hl7.org/fhir/ValueSet/task-intent|4.0.1 from the FHIR Standard | |
Task.output.type | example |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Task | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Task | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Task | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Task | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Task | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. : lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Task | C | 0..* | GenericUATLabTask | A task to be performed inv-1: Last modified date must be greater than or equal to authored-on date. | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
Slices for identifier | 1..* | Identifier | Task Instance Identifier Slice: Unordered, Open by value:system | |||||
identifier:FILL | 1..1 | 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 | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
type | Σ | 0..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 | Σ | 1..1 | uri | The namespace for the identifier value Required Pattern: http://moh.bw.org/identifier/task-id | ||||
value | Σ | 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 | Σ | 1..* | Reference(Service Request - PIMS Lab Orders) | 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 | SΣ | 0..1 | CodeableConcept | Indicates a reason for the lab order being cancelled or rejected. Binding: Reasons why a lab order was cancelled or rejected (extensible) | ||||
businessStatus | Σ | 0..1 | CodeableConcept | E.g. "Specimen collected", "IV prepped" Binding Description (No ValueSet): (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc. | ||||
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. Required Pattern: order | ||||
priority | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): The task's priority. | |||||
code | Σ | 0..1 | CodeableConcept | Task Type Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow. | ||||
description | Σ | 0..1 | string | Human-readable explanation of task | ||||
focus | Σ | 0..1 | Reference(Resource) | What task is acting on | ||||
for | Σ | 1..1 | Reference(Patient - PIMS) | Beneficiary of the Task | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this task originated | ||||
executionPeriod | Σ | 1..1 | Period | Start and end time of execution | ||||
authoredOn | C | 0..1 | dateTime | Task Creation Date | ||||
lastModified | ΣC | 0..1 | dateTime | Task Last Modified Date | ||||
requester | Σ | 1..1 | Reference(Practitioner - General Practitioner | Organization) | Who is asking for task to be done | ||||
performerType | 0..* | CodeableConcept | Requested performer Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed. | |||||
owner | Σ | 1..1 | Reference(Practitioner - General Practitioner | Organization) | Responsible individual | ||||
location | Σ | 0..1 | Reference(Location) | Where task occurs | ||||
reasonCode | 0..1 | CodeableConcept | Why task is needed Binding Description (No ValueSet): (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital. | |||||
reasonReference | 0..1 | Reference(Resource) | Why task is needed | |||||
insurance | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage | |||||
note | 0..* | Annotation | Comments made about the task | |||||
relevantHistory | 0..* | Reference(Provenance) | Key events in history of the Task | |||||
restriction | 0..1 | BackboneElement | Constraints on fulfillment tasks | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
repetitions | 0..1 | positiveInt | How many times to repeat | |||||
period | 0..1 | Period | When fulfillment sought | |||||
recipient | 0..* | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization) | For whom is fulfillment sought? | |||||
input | 0..* | BackboneElement | Information used to perform task | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
type | 1..1 | CodeableConcept | Label for the input Binding Description (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Comparison source", "Applicable consent", "Concomitent Medications", etc. | |||||
value[x] | 1..1 | Content to use in performing the task | ||||||
valueBase64Binary | base64Binary | |||||||
valueBoolean | boolean | |||||||
valueCanonical | canonical(Any) | |||||||
valueCode | code | |||||||
valueDate | date | |||||||
valueDateTime | dateTime | |||||||
valueDecimal | decimal | |||||||
valueId | id | |||||||
valueInstant | instant | |||||||
valueInteger | integer | |||||||
valueMarkdown | markdown | |||||||
valueOid | oid | |||||||
valuePositiveInt | positiveInt | |||||||
valueString | string | |||||||
valueTime | time | |||||||
valueUnsignedInt | unsignedInt | |||||||
valueUri | uri | |||||||
valueUrl | url | |||||||
valueUuid | uuid | |||||||
valueAddress | Address | |||||||
valueAge | Age | |||||||
valueAnnotation | Annotation | |||||||
valueAttachment | Attachment | |||||||
valueCodeableConcept | CodeableConcept | |||||||
valueCoding | Coding | |||||||
valueContactPoint | ContactPoint | |||||||
valueCount | Count | |||||||
valueDistance | Distance | |||||||
valueDuration | Duration | |||||||
valueHumanName | HumanName | |||||||
valueIdentifier | Identifier | |||||||
valueMoney | Money | |||||||
valuePeriod | Period | |||||||
valueQuantity | Quantity | |||||||
valueRange | Range | |||||||
valueRatio | Ratio | |||||||
valueReference | Reference(Any) | |||||||
valueSampledData | SampledData | |||||||
valueSignature | Signature | |||||||
valueTiming | Timing | |||||||
valueContactDetail | ContactDetail | |||||||
valueContributor | Contributor | |||||||
valueDataRequirement | DataRequirement | |||||||
valueExpression | Expression | |||||||
valueParameterDefinition | ParameterDefinition | |||||||
valueRelatedArtifact | RelatedArtifact | |||||||
valueTriggerDefinition | TriggerDefinition | |||||||
valueUsageContext | UsageContext | |||||||
valueDosage | Dosage | |||||||
valueMeta | Meta | |||||||
output | S | 0..* | BackboneElement | Indicates artifacts directly associated with the 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 (No ValueSet): (example): Codes to identify types of input parameters. These will typically be specific to a particular workflow. E.g. "Identified issues", "Preliminary results", "Filler order", "Final results", etc. | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
coding | Σ | 0..* | Coding | Code defined by a terminology system | ||||
text | Σ | 1..1 | string | Plain text representation of the concept | ||||
Slices for value[x] | 1..1 | Reference() | Result of output Slice: Unordered, Closed by type:$this | |||||
value[x]:valueReference | 1..1 | Reference(Diagnostic Report - PIMS Lab Result) | Result of output | |||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
Task.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Task.identifier:FILL.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Task.identifier:FILL.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Task.status | required | TaskStatushttp://hl7.org/fhir/ValueSet/task-status|4.0.1 from the FHIR Standard | ||||
Task.statusReason | extensible | VSReasonForSampleCancellationOrRejectionhttp://moh.bw.org/ValueSet/vs-reason-sample-cancelled-or-rejected from this IG | ||||
Task.businessStatus | example | |||||
Task.intent | required | Pattern: orderhttp://hl7.org/fhir/ValueSet/task-intent|4.0.1 from the FHIR Standard | ||||
Task.priority | required | RequestPriorityhttp://hl7.org/fhir/ValueSet/request-priority|4.0.1 from the FHIR Standard | ||||
Task.code | example | TaskCodehttp://hl7.org/fhir/ValueSet/task-code from the FHIR Standard | ||||
Task.performerType | preferred | ProcedurePerformerRoleCodeshttp://hl7.org/fhir/ValueSet/performer-role from the FHIR Standard | ||||
Task.reasonCode | example | |||||
Task.input.type | example | |||||
Task.output.type | example |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Task | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Task | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Task | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Task | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Task | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
inv-1 | error | Task | Last modified date must be greater than or equal to authored-on date. : lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn |
This structure is derived from GenericUATLabTask
Other representations of profile: CSV, Excel, Schematron