HL7 FHIR Implementation Guide: Rwanda HIV
0.1.0 - STU1 International flag

HL7 FHIR Implementation Guide: Rwanda HIV, published by Jembi Health Systems. This is not an authorized publication; it is the continuous build for version 0.1.0). This version is based on the current content of https://github.com/openhie/Rwanda-HIV and changes regularly. See the Directory of published versions

Resource Profile: HIV VL Lab Order Task

Official URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/hiv-lab-task Version: 0.1.0
Active as of 2023-09-15 Computable Name: HIVLabTask

Is primarily used to track the progress of a HIV VL lab order. More specifically, the lab order ID for the service request is documented in this profile and is also used to document other key data such as the reason(s) for sample cancellation or rejection and the type of output that, when applicable, will be produced by the task.

Usage:

Formal Views of Profile Content

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

This structure is derived from Task

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task 0..*TaskA task to be performed
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... ResultStatusIndex S0..1integerResult Status Index
URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/result-status-index
... SampleRejectedIndex S0..1integerSample Rejected Index
URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/sample-rejected-index
.... identifier:FILL 1..1IdentifierTask Instance Identifier
..... type
...... coding
....... system 0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... code 0..1codeSymbol in syntax defined by the system
Required Pattern: FILL
....... display 0..1stringRepresentation defined by the system
Required Pattern: Filler Identifier
...... text 0..1stringPlain text representation of the concept
Required Pattern: Lab order number
..... system 1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/lab-integration/order-number
..... value 1..1stringThe value that is unique
... instantiatesCanonical 1..1canonical(ActivityDefinition)Formal definition of task
... basedOn 1..*Reference(Resource)Request fulfilled by this task
... statusReason S0..1CodeableReference()Reason for current status
Binding: Lab Order Reasons For Cancelling/Rejecting Lab Order (extensible)
.... concept
..... text 0..1stringPlain text representation of the concept
Required Pattern: Reason For Canceling/Rejecting the Lab Order
... description S0..1stringHuman-readable explanation of task
... for 1..1Reference(Patient)Beneficiary of the Task
... encounter 1..1Reference(Encounter)Healthcare event during which this task originated
... executionPeriod S0..1PeriodStart and end time of execution
... lastModified 1..1dateTimeTask Last Modified Date
... note S0..*AnnotationComments made about the task
... output S0..*BackboneElementInformation produced as part of task
.... type
..... coding
...... system 0..1uriIdentity of the terminology system
Required Pattern: http://snomed.info/sct
...... code 0..1codeSymbol in syntax defined by the system
Required Pattern: 398579006
..... text 0..1stringPlain text representation of the concept
Required Pattern: Viral Load Result
.... Slices for value[x] 1..1Reference()Result of output
Slice: Unordered, Open by type:$this
..... value[x]:valueReference 1..1Reference()Result of output

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Task.statusReasonextensibleVSReasonForSampleCancellationOrRejection
NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C0..*TaskA task to be performed
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... SampleRejectedIndex S0..1integerSample Rejected Index
URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/sample-rejected-index
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... Slices for identifier 1..*IdentifierTask Instance Identifier
Slice: Unordered, Open by value:system
.... identifier:FILL 1..1IdentifierTask Instance Identifier
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/lab-integration/order-number
..... value ΣC1..1stringThe value that is unique
Example General: 123456
... instantiatesCanonical Σ1..1canonical(ActivityDefinition)Formal definition of task
... basedOn Σ1..*Reference(Resource)Request fulfilled by this task
... status ?!Σ1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.

... statusReason SΣ0..1CodeableReference()Reason for current status
Binding: Lab Order Reasons For Cancelling/Rejecting Lab Order (extensible)
... intent Σ1..1codeunknown | 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..1booleanTrue if Task is prohibiting action
... description SΣ0..1stringHuman-readable explanation of task
... for Σ1..1Reference(Patient)Beneficiary of the Task
... encounter Σ1..1Reference(Encounter)Healthcare event during which this task originated
... executionPeriod SΣ0..1PeriodStart and end time of execution
... lastModified ΣC1..1dateTimeTask Last Modified Date
... note S0..*AnnotationComments made about the task
... output S0..*BackboneElementInformation produced as part of task
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..1CodeableConceptLabel for output
Binding: (unbound) (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 Σ0..1stringPlain text representation of the concept
Required Pattern: Viral Load Result
.... Slices for value[x] 1..1Reference()Result of output
Slice: Unordered, Closed by type:$this
..... value[x]:valueReference 1..1Reference()Result of output

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Task.identifier:FILL.userequiredIdentifierUse
Task.statusrequiredTaskStatus
Task.statusReasonextensibleVSReasonForSampleCancellationOrRejection
Task.intentrequiredTaskIntent
Task.output.typeexample

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorTaskIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorTaskIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorTaskIf 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-5errorTaskIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceTaskA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-1errorTaskLast modified date must be greater than or equal to authored-on date.
: lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn
tsk-1errorTaskTask.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()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C0..*TaskA task to be performed
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... ResultStatusIndex S0..1integerResult Status Index
URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/result-status-index
... SampleRejectedIndex S0..1integerSample Rejected Index
URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/sample-rejected-index
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... Slices for identifier 1..*IdentifierTask Instance Identifier
Slice: Unordered, Open by value:system
.... identifier:FILL 1..1IdentifierTask Instance Identifier
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConceptDescription of identifier
Binding: IdentifierTypeCodes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

...... id 0..1idUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ0..*CodingCode defined by a terminology system
....... id 0..1idUnique id for inter-element referencing
....... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... version Σ0..1stringVersion of the system - if relevant
....... code ΣC0..1codeSymbol in syntax defined by the system
Required Pattern: FILL
....... display ΣC0..1stringRepresentation defined by the system
Required Pattern: Filler Identifier
....... userSelected Σ0..1booleanIf this coding was chosen directly by the user
...... text Σ0..1stringPlain text representation of the concept
Required Pattern: Lab order number
..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/lab-integration/order-number
..... value ΣC1..1stringThe value that is unique
Example General: 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... instantiatesCanonical Σ1..1canonical(ActivityDefinition)Formal definition of task
... instantiatesUri Σ0..1uriFormal definition of task
... basedOn Σ1..*Reference(Resource)Request fulfilled by this task
... groupIdentifier Σ0..1IdentifierRequisition or grouper id
... partOf Σ0..*Reference(Task)Composite task
... status ?!Σ1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.

... statusReason SΣ0..1CodeableReference()Reason for current status
Binding: Lab Order Reasons For Cancelling/Rejecting Lab Order (extensible)
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... concept Σ0..1CodeableConceptReference to a concept (by class)
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ0..*CodingCode defined by a terminology system
..... text Σ0..1stringPlain text representation of the concept
Required Pattern: Reason For Canceling/Rejecting the Lab Order
.... reference Σ0..1Reference()Reference to a resource (by instance)
... businessStatus Σ0..1CodeableConceptE.g. "Specimen collected", "IV prepped"
Binding: (unbound) (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.

... intent Σ1..1codeunknown | 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..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): The priority of a task (may affect service level applied to the task).

... doNotPerform ?!Σ0..1booleanTrue if Task is prohibiting action
... code ΣC0..1CodeableConceptTask Type
Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow.

... description SΣ0..1stringHuman-readable explanation of task
... focus ΣC0..1Reference(Resource)What task is acting on
... for Σ1..1Reference(Patient)Beneficiary of the Task
... encounter Σ1..1Reference(Encounter)Healthcare event during which this task originated
... requestedPeriod Σ0..1PeriodWhen the task should be performed
... executionPeriod SΣ0..1PeriodStart and end time of execution
... authoredOn C0..1dateTimeTask Creation Date
... lastModified ΣC1..1dateTimeTask Last Modified Date
... requester Σ0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)Who is asking for task to be done
... requestedPerformer 0..*CodeableReference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Who should perform Task
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.


... owner Σ0..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson)Responsible individual
... performer Σ0..*BackboneElementWho or what performed the task
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... function Σ0..1CodeableConceptType of performance
Binding: (unbound) (example): Codes to identify types of task performers.

.... actor Σ1..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson)Who performed the task
... location Σ0..1Reference(Location)Where task occurs
... reason 0..*CodeableReference()Why task is needed
Binding: (unbound) (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.


... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... note S0..*AnnotationComments made about the task
... relevantHistory 0..*Reference(Provenance)Key events in history of the Task
... restriction C0..1BackboneElementConstraints on fulfillment tasks
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... repetitions 0..1positiveIntHow many times to repeat
.... period 0..1PeriodWhen fulfillment is sought
.... recipient 0..*Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization)For whom is fulfillment sought?
... input 0..*BackboneElementInformation used to perform task
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..1CodeableConceptLabel for the input
Binding: (unbound) (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..1Content to use in performing the task
..... valueBase64Binarybase64Binary
..... valueBooleanboolean
..... valueCanonicalcanonical(Any)
..... valueCodecode
..... valueDatedate
..... valueDateTimedateTime
..... valueDecimaldecimal
..... valueIdid
..... valueInstantinstant
..... valueIntegerinteger
..... valueInteger64integer64
..... valueMarkdownmarkdown
..... valueOidoid
..... valuePositiveIntpositiveInt
..... valueStringstring
..... valueTimetime
..... valueUnsignedIntunsignedInt
..... valueUriuri
..... valueUrlurl
..... valueUuiduuid
..... valueAddressAddress
..... valueAgeAge
..... valueAnnotationAnnotation
..... valueAttachmentAttachment
..... valueCodeableConceptCodeableConcept
..... valueCodeableReferenceCodeableReference
..... valueCodingCoding
..... valueContactPointContactPoint
..... valueCountCount
..... valueDistanceDistance
..... valueDurationDuration
..... valueHumanNameHumanName
..... valueIdentifierIdentifier
..... valueMoneyMoney
..... valuePeriodPeriod
..... valueQuantityQuantity
..... valueRangeRange
..... valueRatioRatio
..... valueRatioRangeRatioRange
..... valueReferenceReference(Any)
..... valueSampledDataSampledData
..... valueSignatureSignature
..... valueTimingTiming
..... valueContactDetailContactDetail
..... valueDataRequirementDataRequirement
..... valueExpressionExpression
..... valueParameterDefinitionParameterDefinition
..... valueRelatedArtifactRelatedArtifact
..... valueTriggerDefinitionTriggerDefinition
..... valueUsageContextUsageContext
..... valueAvailabilityAvailability
..... valueExtendedContactDetailExtendedContactDetail
..... valueDosageDosage
..... valueMetaMeta
... output S0..*BackboneElementInformation produced as part of task
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..1CodeableConceptLabel for output
Binding: (unbound) (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..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ0..*CodingCode defined by a terminology system
...... id 0..1idUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ0..1uriIdentity of the terminology system
Required Pattern: http://snomed.info/sct
...... version Σ0..1stringVersion of the system - if relevant
...... code ΣC0..1codeSymbol in syntax defined by the system
Required Pattern: 398579006
...... display ΣC0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... text Σ0..1stringPlain text representation of the concept
Required Pattern: Viral Load Result
.... Slices for value[x] 1..1Reference()Result of output
Slice: Unordered, Closed by type:$this
..... value[x]:valueReference 1..1Reference()Result of output

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Task.languagerequiredAllLanguages
Task.identifier:FILL.userequiredIdentifierUse
Task.identifier:FILL.typeextensibleIdentifierTypeCodes
Task.statusrequiredTaskStatus
Task.statusReasonextensibleVSReasonForSampleCancellationOrRejection
Task.businessStatusexample
Task.intentrequiredTaskIntent
Task.priorityrequiredRequestPriority
Task.codeexampleTaskCode
Task.requestedPerformerpreferredProcedurePerformerRoleCodes
Task.performer.functionexample
Task.reasonexample
Task.input.typeexample
Task.output.typeexample

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorTaskIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorTaskIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorTaskIf 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-5errorTaskIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceTaskA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-1errorTaskLast modified date must be greater than or equal to authored-on date.
: lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn
tsk-1errorTaskTask.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()

This structure is derived from Task

Summary

Mandatory: 9 elements (1 nested mandatory element)
Must-Support: 7 elements
Fixed Value: 1 element

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Task.identifier is sliced based on the value of value:system
  • The element Task.output.value[x] is sliced based on the value of type:$this

Differential View

This structure is derived from Task

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task 0..*TaskA task to be performed
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... ResultStatusIndex S0..1integerResult Status Index
URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/result-status-index
... SampleRejectedIndex S0..1integerSample Rejected Index
URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/sample-rejected-index
.... identifier:FILL 1..1IdentifierTask Instance Identifier
..... type
...... coding
....... system 0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... code 0..1codeSymbol in syntax defined by the system
Required Pattern: FILL
....... display 0..1stringRepresentation defined by the system
Required Pattern: Filler Identifier
...... text 0..1stringPlain text representation of the concept
Required Pattern: Lab order number
..... system 1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/lab-integration/order-number
..... value 1..1stringThe value that is unique
... instantiatesCanonical 1..1canonical(ActivityDefinition)Formal definition of task
... basedOn 1..*Reference(Resource)Request fulfilled by this task
... statusReason S0..1CodeableReference()Reason for current status
Binding: Lab Order Reasons For Cancelling/Rejecting Lab Order (extensible)
.... concept
..... text 0..1stringPlain text representation of the concept
Required Pattern: Reason For Canceling/Rejecting the Lab Order
... description S0..1stringHuman-readable explanation of task
... for 1..1Reference(Patient)Beneficiary of the Task
... encounter 1..1Reference(Encounter)Healthcare event during which this task originated
... executionPeriod S0..1PeriodStart and end time of execution
... lastModified 1..1dateTimeTask Last Modified Date
... note S0..*AnnotationComments made about the task
... output S0..*BackboneElementInformation produced as part of task
.... type
..... coding
...... system 0..1uriIdentity of the terminology system
Required Pattern: http://snomed.info/sct
...... code 0..1codeSymbol in syntax defined by the system
Required Pattern: 398579006
..... text 0..1stringPlain text representation of the concept
Required Pattern: Viral Load Result
.... Slices for value[x] 1..1Reference()Result of output
Slice: Unordered, Open by type:$this
..... value[x]:valueReference 1..1Reference()Result of output

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Task.statusReasonextensibleVSReasonForSampleCancellationOrRejection

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C0..*TaskA task to be performed
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... SampleRejectedIndex S0..1integerSample Rejected Index
URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/sample-rejected-index
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... Slices for identifier 1..*IdentifierTask Instance Identifier
Slice: Unordered, Open by value:system
.... identifier:FILL 1..1IdentifierTask Instance Identifier
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/lab-integration/order-number
..... value ΣC1..1stringThe value that is unique
Example General: 123456
... instantiatesCanonical Σ1..1canonical(ActivityDefinition)Formal definition of task
... basedOn Σ1..*Reference(Resource)Request fulfilled by this task
... status ?!Σ1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.

... statusReason SΣ0..1CodeableReference()Reason for current status
Binding: Lab Order Reasons For Cancelling/Rejecting Lab Order (extensible)
... intent Σ1..1codeunknown | 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..1booleanTrue if Task is prohibiting action
... description SΣ0..1stringHuman-readable explanation of task
... for Σ1..1Reference(Patient)Beneficiary of the Task
... encounter Σ1..1Reference(Encounter)Healthcare event during which this task originated
... executionPeriod SΣ0..1PeriodStart and end time of execution
... lastModified ΣC1..1dateTimeTask Last Modified Date
... note S0..*AnnotationComments made about the task
... output S0..*BackboneElementInformation produced as part of task
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..1CodeableConceptLabel for output
Binding: (unbound) (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 Σ0..1stringPlain text representation of the concept
Required Pattern: Viral Load Result
.... Slices for value[x] 1..1Reference()Result of output
Slice: Unordered, Closed by type:$this
..... value[x]:valueReference 1..1Reference()Result of output

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Task.identifier:FILL.userequiredIdentifierUse
Task.statusrequiredTaskStatus
Task.statusReasonextensibleVSReasonForSampleCancellationOrRejection
Task.intentrequiredTaskIntent
Task.output.typeexample

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorTaskIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorTaskIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorTaskIf 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-5errorTaskIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceTaskA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-1errorTaskLast modified date must be greater than or equal to authored-on date.
: lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn
tsk-1errorTaskTask.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()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C0..*TaskA task to be performed
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... ResultStatusIndex S0..1integerResult Status Index
URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/result-status-index
... SampleRejectedIndex S0..1integerSample Rejected Index
URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/sample-rejected-index
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... Slices for identifier 1..*IdentifierTask Instance Identifier
Slice: Unordered, Open by value:system
.... identifier:FILL 1..1IdentifierTask Instance Identifier
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConceptDescription of identifier
Binding: IdentifierTypeCodes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

...... id 0..1idUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ0..*CodingCode defined by a terminology system
....... id 0..1idUnique id for inter-element referencing
....... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... version Σ0..1stringVersion of the system - if relevant
....... code ΣC0..1codeSymbol in syntax defined by the system
Required Pattern: FILL
....... display ΣC0..1stringRepresentation defined by the system
Required Pattern: Filler Identifier
....... userSelected Σ0..1booleanIf this coding was chosen directly by the user
...... text Σ0..1stringPlain text representation of the concept
Required Pattern: Lab order number
..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/lab-integration/order-number
..... value ΣC1..1stringThe value that is unique
Example General: 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... instantiatesCanonical Σ1..1canonical(ActivityDefinition)Formal definition of task
... instantiatesUri Σ0..1uriFormal definition of task
... basedOn Σ1..*Reference(Resource)Request fulfilled by this task
... groupIdentifier Σ0..1IdentifierRequisition or grouper id
... partOf Σ0..*Reference(Task)Composite task
... status ?!Σ1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.

... statusReason SΣ0..1CodeableReference()Reason for current status
Binding: Lab Order Reasons For Cancelling/Rejecting Lab Order (extensible)
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... concept Σ0..1CodeableConceptReference to a concept (by class)
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ0..*CodingCode defined by a terminology system
..... text Σ0..1stringPlain text representation of the concept
Required Pattern: Reason For Canceling/Rejecting the Lab Order
.... reference Σ0..1Reference()Reference to a resource (by instance)
... businessStatus Σ0..1CodeableConceptE.g. "Specimen collected", "IV prepped"
Binding: (unbound) (example): The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.

... intent Σ1..1codeunknown | 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..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): The priority of a task (may affect service level applied to the task).

... doNotPerform ?!Σ0..1booleanTrue if Task is prohibiting action
... code ΣC0..1CodeableConceptTask Type
Binding: TaskCode (example): Codes to identify what the task involves. These will typically be specific to a particular workflow.

... description SΣ0..1stringHuman-readable explanation of task
... focus ΣC0..1Reference(Resource)What task is acting on
... for Σ1..1Reference(Patient)Beneficiary of the Task
... encounter Σ1..1Reference(Encounter)Healthcare event during which this task originated
... requestedPeriod Σ0..1PeriodWhen the task should be performed
... executionPeriod SΣ0..1PeriodStart and end time of execution
... authoredOn C0..1dateTimeTask Creation Date
... lastModified ΣC1..1dateTimeTask Last Modified Date
... requester Σ0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)Who is asking for task to be done
... requestedPerformer 0..*CodeableReference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Who should perform Task
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.


... owner Σ0..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson)Responsible individual
... performer Σ0..*BackboneElementWho or what performed the task
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... function Σ0..1CodeableConceptType of performance
Binding: (unbound) (example): Codes to identify types of task performers.

.... actor Σ1..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson)Who performed the task
... location Σ0..1Reference(Location)Where task occurs
... reason 0..*CodeableReference()Why task is needed
Binding: (unbound) (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.


... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... note S0..*AnnotationComments made about the task
... relevantHistory 0..*Reference(Provenance)Key events in history of the Task
... restriction C0..1BackboneElementConstraints on fulfillment tasks
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... repetitions 0..1positiveIntHow many times to repeat
.... period 0..1PeriodWhen fulfillment is sought
.... recipient 0..*Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization)For whom is fulfillment sought?
... input 0..*BackboneElementInformation used to perform task
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..1CodeableConceptLabel for the input
Binding: (unbound) (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..1Content to use in performing the task
..... valueBase64Binarybase64Binary
..... valueBooleanboolean
..... valueCanonicalcanonical(Any)
..... valueCodecode
..... valueDatedate
..... valueDateTimedateTime
..... valueDecimaldecimal
..... valueIdid
..... valueInstantinstant
..... valueIntegerinteger
..... valueInteger64integer64
..... valueMarkdownmarkdown
..... valueOidoid
..... valuePositiveIntpositiveInt
..... valueStringstring
..... valueTimetime
..... valueUnsignedIntunsignedInt
..... valueUriuri
..... valueUrlurl
..... valueUuiduuid
..... valueAddressAddress
..... valueAgeAge
..... valueAnnotationAnnotation
..... valueAttachmentAttachment
..... valueCodeableConceptCodeableConcept
..... valueCodeableReferenceCodeableReference
..... valueCodingCoding
..... valueContactPointContactPoint
..... valueCountCount
..... valueDistanceDistance
..... valueDurationDuration
..... valueHumanNameHumanName
..... valueIdentifierIdentifier
..... valueMoneyMoney
..... valuePeriodPeriod
..... valueQuantityQuantity
..... valueRangeRange
..... valueRatioRatio
..... valueRatioRangeRatioRange
..... valueReferenceReference(Any)
..... valueSampledDataSampledData
..... valueSignatureSignature
..... valueTimingTiming
..... valueContactDetailContactDetail
..... valueDataRequirementDataRequirement
..... valueExpressionExpression
..... valueParameterDefinitionParameterDefinition
..... valueRelatedArtifactRelatedArtifact
..... valueTriggerDefinitionTriggerDefinition
..... valueUsageContextUsageContext
..... valueAvailabilityAvailability
..... valueExtendedContactDetailExtendedContactDetail
..... valueDosageDosage
..... valueMetaMeta
... output S0..*BackboneElementInformation produced as part of task
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..1CodeableConceptLabel for output
Binding: (unbound) (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..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ0..*CodingCode defined by a terminology system
...... id 0..1idUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ0..1uriIdentity of the terminology system
Required Pattern: http://snomed.info/sct
...... version Σ0..1stringVersion of the system - if relevant
...... code ΣC0..1codeSymbol in syntax defined by the system
Required Pattern: 398579006
...... display ΣC0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... text Σ0..1stringPlain text representation of the concept
Required Pattern: Viral Load Result
.... Slices for value[x] 1..1Reference()Result of output
Slice: Unordered, Closed by type:$this
..... value[x]:valueReference 1..1Reference()Result of output

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Task.languagerequiredAllLanguages
Task.identifier:FILL.userequiredIdentifierUse
Task.identifier:FILL.typeextensibleIdentifierTypeCodes
Task.statusrequiredTaskStatus
Task.statusReasonextensibleVSReasonForSampleCancellationOrRejection
Task.businessStatusexample
Task.intentrequiredTaskIntent
Task.priorityrequiredRequestPriority
Task.codeexampleTaskCode
Task.requestedPerformerpreferredProcedurePerformerRoleCodes
Task.performer.functionexample
Task.reasonexample
Task.input.typeexample
Task.output.typeexample

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorTaskIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorTaskIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorTaskIf 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-5errorTaskIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceTaskA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
inv-1errorTaskLast modified date must be greater than or equal to authored-on date.
: lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn
tsk-1errorTaskTask.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()

This structure is derived from Task

Summary

Mandatory: 9 elements (1 nested mandatory element)
Must-Support: 7 elements
Fixed Value: 1 element

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Task.identifier is sliced based on the value of value:system
  • The element Task.output.value[x] is sliced based on the value of type:$this

 

Other representations of profile: CSV, Excel, Schematron