Clinical Practice Guidelines
2.0.0-ballot - ballot International flag

This page is part of the Clinical Guidelines (v2.0.0-ballot: STU2 Ballot 1) based on FHIR (HL7® FHIR® Standard) R4. The current version which supersedes this version is 1.0.0. For a full list of available versions, see the Directory of published versions

Resource Profile: CPG Record Inference Task

Official URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-recordinferencetask Version: 2.0.0-ballot
Active as of 2023-12-19 Computable Name: CPGRecordInferenceTask

Recommendation to record a particular inference as part of the delivery of a computable clinical practice guideline

This is an activity request profile

Usage:

Formal Views of Profile Content

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

This structure is derived from CPGTask

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task 0..*CPGTaskA task to be performed
... code 0..1CodeableConceptTask Type
Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
... Slices for input S1..*BackboneElementInformation used to perform task
Slice: Unordered, Open by value:type
.... input:inference S1..1BackboneElementInference to record
..... type S1..1CodeableConceptLabel for the input
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
..... value[x] S1..1Reference(CPG Observation)Content to use in performing the task

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C0..*CPGTaskA task to be performed
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... rationale S0..1markdownCPG Rationale Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-rationale
... pertinent S0..*Reference()CPG Pertinent Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-pertinent
... modifierExtension:doNotPerform ?!S0..1DoNotPerformtrue if request is prohibiting action
... identifier S0..*IdentifierTask Instance Identifier
... instantiatesCanonical SΣ0..1canonical(ActivityDefinition)Source
... basedOn SΣ0..*Reference(Resource)Request fulfilled by this task
... status ?!SΣ1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.

... statusReason SΣ0..1CodeableConceptReason for current status
Binding: (unbound) (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.

... intent SΣ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 S0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.

... code SΣ0..1CodeableConceptTask Type
Binding: CPG Activity Type Value Set (extensible): Activity types for use in computable guidelines


Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
... description SΣ0..1stringHuman-readable explanation of task
... for SΣ0..1Reference(CPG Patient)Beneficiary of the Task
... encounter SΣ0..1Reference(CPG Encounter)Healthcare event during which this task originated
... executionPeriod SΣ0..1PeriodStart and end time of execution
... authoredOn SC0..1dateTimeTask Creation Date
... Slices for input S1..*BackboneElementInformation used to perform task
Slice: Unordered, Open by value:type
.... input:All Slices Content/Rules for all slices
..... 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
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueUrlurl
...... valueUuiduuid
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueContactDetailContactDetail
...... valueContributorContributor
...... valueDataRequirementDataRequirement
...... valueExpressionExpression
...... valueParameterDefinitionParameterDefinition
...... valueRelatedArtifactRelatedArtifact
...... valueTriggerDefinitionTriggerDefinition
...... valueUsageContextUsageContext
...... valueDosageDosage
...... valueMetaMeta
.... input:inference S1..1BackboneElementInference to record
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type S1..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.


Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
..... value[x] S1..1Reference(CPG Observation)Content to use in performing 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.

.... value[x] 1..1Result of output
..... valueBase64Binarybase64Binary
..... valueBooleanboolean
..... valueCanonicalcanonical(Any)
..... valueCodecode
..... valueDatedate
..... valueDateTimedateTime
..... valueDecimaldecimal
..... valueIdid
..... valueInstantinstant
..... valueIntegerinteger
..... valueMarkdownmarkdown
..... valueOidoid
..... valuePositiveIntpositiveInt
..... valueStringstring
..... valueTimetime
..... valueUnsignedIntunsignedInt
..... valueUriuri
..... valueUrlurl
..... valueUuiduuid
..... valueAddressAddress
..... valueAgeAge
..... valueAnnotationAnnotation
..... valueAttachmentAttachment
..... valueCodeableConceptCodeableConcept
..... valueCodingCoding
..... valueContactPointContactPoint
..... valueCountCount
..... valueDistanceDistance
..... valueDurationDuration
..... valueHumanNameHumanName
..... valueIdentifierIdentifier
..... valueMoneyMoney
..... valuePeriodPeriod
..... valueQuantityQuantity
..... valueRangeRange
..... valueRatioRatio
..... valueReferenceReference(Any)
..... valueSampledDataSampledData
..... valueSignatureSignature
..... valueTimingTiming
..... valueContactDetailContactDetail
..... valueContributorContributor
..... valueDataRequirementDataRequirement
..... valueExpressionExpression
..... valueParameterDefinitionParameterDefinition
..... valueRelatedArtifactRelatedArtifact
..... valueTriggerDefinitionTriggerDefinition
..... valueUsageContextUsageContext
..... valueDosageDosage
..... valueMetaMeta

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Task.statusrequiredTaskStatus
Task.statusReasonexample
Task.intentrequiredTaskIntent
Task.priorityrequiredRequestPriority
Task.codeextensiblePattern: record-inference
Task.input.typeexample
Task.input:inference.typeexamplePattern: record-inference
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().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-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
NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C0..*CPGTaskA 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: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... 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
... rationale S0..1markdownCPG Rationale Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-rationale
... pertinent S0..*Reference()CPG Pertinent Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-pertinent
... Slices for modifierExtension ?!0..*ExtensionExtension
Slice: Unordered, Open by value:url
... modifierExtension:doNotPerform ?!S0..1DoNotPerformtrue if request is prohibiting action
... identifier S0..*IdentifierTask Instance Identifier
... instantiatesCanonical SΣ0..1canonical(ActivityDefinition)Source
... instantiatesUri Σ0..1uriFormal definition of task
... basedOn SΣ0..*Reference(Resource)Request fulfilled by this task
... groupIdentifier Σ0..1IdentifierRequisition or grouper id
... partOf Σ0..*Reference(Task)Composite task
... status ?!SΣ1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.

... statusReason SΣ0..1CodeableConceptReason for current status
Binding: (unbound) (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.

... 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 SΣ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 S0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.

... code SΣ0..1CodeableConceptTask Type
Binding: CPG Activity Type Value Set (extensible): Activity types for use in computable guidelines


Required Pattern: At least the following
.... id0..1stringUnique id for inter-element referencing
.... extension0..*ExtensionAdditional content defined by implementations
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text0..1stringPlain text representation of the concept
... description SΣ0..1stringHuman-readable explanation of task
... focus Σ0..1Reference(Resource)What task is acting on
... for SΣ0..1Reference(CPG Patient)Beneficiary of the Task
... encounter SΣ0..1Reference(CPG Encounter)Healthcare event during which this task originated
... executionPeriod SΣ0..1PeriodStart and end time of execution
... authoredOn SC0..1dateTimeTask Creation Date
... lastModified ΣC0..1dateTimeTask Last Modified Date
... requester Σ0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)Who is asking for task to be done
... performerType 0..*CodeableConceptRequested performer
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.


... owner Σ0..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Responsible individual
... location Σ0..1Reference(Location)Where task occurs
... reasonCode 0..1CodeableConceptWhy task is needed
Binding: (unbound) (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.

... reasonReference 0..1Reference(Resource)Why task is needed
... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... note 0..*AnnotationComments made about the task
... relevantHistory 0..*Reference(Provenance)Key events in history of the Task
... restriction 0..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 sought
.... recipient 0..*Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization)For whom is fulfillment sought?
... Slices for input S1..*BackboneElementInformation used to perform task
Slice: Unordered, Open by value:type
.... input:All Slices Content/Rules for all slices
..... 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
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueUrlurl
...... valueUuiduuid
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueContactDetailContactDetail
...... valueContributorContributor
...... valueDataRequirementDataRequirement
...... valueExpressionExpression
...... valueParameterDefinitionParameterDefinition
...... valueRelatedArtifactRelatedArtifact
...... valueTriggerDefinitionTriggerDefinition
...... valueUsageContextUsageContext
...... valueDosageDosage
...... valueMetaMeta
.... input:inference S1..1BackboneElementInference to record
..... 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 S1..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.


Required Pattern: At least the following
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
....... display0..1stringRepresentation defined by the system
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] S1..1Reference(CPG Observation)Content to use in performing the task
... 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.

.... value[x] 1..1Result of output
..... valueBase64Binarybase64Binary
..... valueBooleanboolean
..... valueCanonicalcanonical(Any)
..... valueCodecode
..... valueDatedate
..... valueDateTimedateTime
..... valueDecimaldecimal
..... valueIdid
..... valueInstantinstant
..... valueIntegerinteger
..... valueMarkdownmarkdown
..... valueOidoid
..... valuePositiveIntpositiveInt
..... valueStringstring
..... valueTimetime
..... valueUnsignedIntunsignedInt
..... valueUriuri
..... valueUrlurl
..... valueUuiduuid
..... valueAddressAddress
..... valueAgeAge
..... valueAnnotationAnnotation
..... valueAttachmentAttachment
..... valueCodeableConceptCodeableConcept
..... valueCodingCoding
..... valueContactPointContactPoint
..... valueCountCount
..... valueDistanceDistance
..... valueDurationDuration
..... valueHumanNameHumanName
..... valueIdentifierIdentifier
..... valueMoneyMoney
..... valuePeriodPeriod
..... valueQuantityQuantity
..... valueRangeRange
..... valueRatioRatio
..... valueReferenceReference(Any)
..... valueSampledDataSampledData
..... valueSignatureSignature
..... valueTimingTiming
..... valueContactDetailContactDetail
..... valueContributorContributor
..... valueDataRequirementDataRequirement
..... valueExpressionExpression
..... valueParameterDefinitionParameterDefinition
..... valueRelatedArtifactRelatedArtifact
..... valueTriggerDefinitionTriggerDefinition
..... valueUsageContextUsageContext
..... valueDosageDosage
..... valueMetaMeta

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Task.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Task.statusrequiredTaskStatus
Task.statusReasonexample
Task.businessStatusexample
Task.intentrequiredTaskIntent
Task.priorityrequiredRequestPriority
Task.codeextensiblePattern: record-inference
Task.performerTypepreferredProcedurePerformerRoleCodes
Task.reasonCodeexample
Task.input.typeexample
Task.input:inference.typeexamplePattern: record-inference
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().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-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

This structure is derived from CPGTask

Summary

Mandatory: 2 elements
Must-Support: 4 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Task.input is sliced based on the value of value:type

Differential View

This structure is derived from CPGTask

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task 0..*CPGTaskA task to be performed
... code 0..1CodeableConceptTask Type
Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
... Slices for input S1..*BackboneElementInformation used to perform task
Slice: Unordered, Open by value:type
.... input:inference S1..1BackboneElementInference to record
..... type S1..1CodeableConceptLabel for the input
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
..... value[x] S1..1Reference(CPG Observation)Content to use in performing the task

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C0..*CPGTaskA task to be performed
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... rationale S0..1markdownCPG Rationale Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-rationale
... pertinent S0..*Reference()CPG Pertinent Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-pertinent
... modifierExtension:doNotPerform ?!S0..1DoNotPerformtrue if request is prohibiting action
... identifier S0..*IdentifierTask Instance Identifier
... instantiatesCanonical SΣ0..1canonical(ActivityDefinition)Source
... basedOn SΣ0..*Reference(Resource)Request fulfilled by this task
... status ?!SΣ1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.

... statusReason SΣ0..1CodeableConceptReason for current status
Binding: (unbound) (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.

... intent SΣ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 S0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.

... code SΣ0..1CodeableConceptTask Type
Binding: CPG Activity Type Value Set (extensible): Activity types for use in computable guidelines


Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
... description SΣ0..1stringHuman-readable explanation of task
... for SΣ0..1Reference(CPG Patient)Beneficiary of the Task
... encounter SΣ0..1Reference(CPG Encounter)Healthcare event during which this task originated
... executionPeriod SΣ0..1PeriodStart and end time of execution
... authoredOn SC0..1dateTimeTask Creation Date
... Slices for input S1..*BackboneElementInformation used to perform task
Slice: Unordered, Open by value:type
.... input:All Slices Content/Rules for all slices
..... 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
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueUrlurl
...... valueUuiduuid
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueContactDetailContactDetail
...... valueContributorContributor
...... valueDataRequirementDataRequirement
...... valueExpressionExpression
...... valueParameterDefinitionParameterDefinition
...... valueRelatedArtifactRelatedArtifact
...... valueTriggerDefinitionTriggerDefinition
...... valueUsageContextUsageContext
...... valueDosageDosage
...... valueMetaMeta
.... input:inference S1..1BackboneElementInference to record
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type S1..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.


Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
..... value[x] S1..1Reference(CPG Observation)Content to use in performing 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.

.... value[x] 1..1Result of output
..... valueBase64Binarybase64Binary
..... valueBooleanboolean
..... valueCanonicalcanonical(Any)
..... valueCodecode
..... valueDatedate
..... valueDateTimedateTime
..... valueDecimaldecimal
..... valueIdid
..... valueInstantinstant
..... valueIntegerinteger
..... valueMarkdownmarkdown
..... valueOidoid
..... valuePositiveIntpositiveInt
..... valueStringstring
..... valueTimetime
..... valueUnsignedIntunsignedInt
..... valueUriuri
..... valueUrlurl
..... valueUuiduuid
..... valueAddressAddress
..... valueAgeAge
..... valueAnnotationAnnotation
..... valueAttachmentAttachment
..... valueCodeableConceptCodeableConcept
..... valueCodingCoding
..... valueContactPointContactPoint
..... valueCountCount
..... valueDistanceDistance
..... valueDurationDuration
..... valueHumanNameHumanName
..... valueIdentifierIdentifier
..... valueMoneyMoney
..... valuePeriodPeriod
..... valueQuantityQuantity
..... valueRangeRange
..... valueRatioRatio
..... valueReferenceReference(Any)
..... valueSampledDataSampledData
..... valueSignatureSignature
..... valueTimingTiming
..... valueContactDetailContactDetail
..... valueContributorContributor
..... valueDataRequirementDataRequirement
..... valueExpressionExpression
..... valueParameterDefinitionParameterDefinition
..... valueRelatedArtifactRelatedArtifact
..... valueTriggerDefinitionTriggerDefinition
..... valueUsageContextUsageContext
..... valueDosageDosage
..... valueMetaMeta

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Task.statusrequiredTaskStatus
Task.statusReasonexample
Task.intentrequiredTaskIntent
Task.priorityrequiredRequestPriority
Task.codeextensiblePattern: record-inference
Task.input.typeexample
Task.input:inference.typeexamplePattern: record-inference
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().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-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

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task C0..*CPGTaskA 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: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... 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
... rationale S0..1markdownCPG Rationale Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-rationale
... pertinent S0..*Reference()CPG Pertinent Extension
URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-pertinent
... Slices for modifierExtension ?!0..*ExtensionExtension
Slice: Unordered, Open by value:url
... modifierExtension:doNotPerform ?!S0..1DoNotPerformtrue if request is prohibiting action
... identifier S0..*IdentifierTask Instance Identifier
... instantiatesCanonical SΣ0..1canonical(ActivityDefinition)Source
... instantiatesUri Σ0..1uriFormal definition of task
... basedOn SΣ0..*Reference(Resource)Request fulfilled by this task
... groupIdentifier Σ0..1IdentifierRequisition or grouper id
... partOf Σ0..*Reference(Task)Composite task
... status ?!SΣ1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.

... statusReason SΣ0..1CodeableConceptReason for current status
Binding: (unbound) (example): Codes to identify the reason for current status. These will typically be specific to a particular workflow.

... 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 SΣ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 S0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): The task's priority.

... code SΣ0..1CodeableConceptTask Type
Binding: CPG Activity Type Value Set (extensible): Activity types for use in computable guidelines


Required Pattern: At least the following
.... id0..1stringUnique id for inter-element referencing
.... extension0..*ExtensionAdditional content defined by implementations
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text0..1stringPlain text representation of the concept
... description SΣ0..1stringHuman-readable explanation of task
... focus Σ0..1Reference(Resource)What task is acting on
... for SΣ0..1Reference(CPG Patient)Beneficiary of the Task
... encounter SΣ0..1Reference(CPG Encounter)Healthcare event during which this task originated
... executionPeriod SΣ0..1PeriodStart and end time of execution
... authoredOn SC0..1dateTimeTask Creation Date
... lastModified ΣC0..1dateTimeTask Last Modified Date
... requester Σ0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)Who is asking for task to be done
... performerType 0..*CodeableConceptRequested performer
Binding: ProcedurePerformerRoleCodes (preferred): The type(s) of task performers allowed.


... owner Σ0..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Responsible individual
... location Σ0..1Reference(Location)Where task occurs
... reasonCode 0..1CodeableConceptWhy task is needed
Binding: (unbound) (example): Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.

... reasonReference 0..1Reference(Resource)Why task is needed
... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... note 0..*AnnotationComments made about the task
... relevantHistory 0..*Reference(Provenance)Key events in history of the Task
... restriction 0..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 sought
.... recipient 0..*Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Group | Organization)For whom is fulfillment sought?
... Slices for input S1..*BackboneElementInformation used to perform task
Slice: Unordered, Open by value:type
.... input:All Slices Content/Rules for all slices
..... 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
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueUrlurl
...... valueUuiduuid
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueContactDetailContactDetail
...... valueContributorContributor
...... valueDataRequirementDataRequirement
...... valueExpressionExpression
...... valueParameterDefinitionParameterDefinition
...... valueRelatedArtifactRelatedArtifact
...... valueTriggerDefinitionTriggerDefinition
...... valueUsageContextUsageContext
...... valueDosageDosage
...... valueMetaMeta
.... input:inference S1..1BackboneElementInference to record
..... 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 S1..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.


Required Pattern: At least the following
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://hl7.org/fhir/uv/cpg/CodeSystem/cpg-activity-type-cs
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: record-inference
....... display0..1stringRepresentation defined by the system
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] S1..1Reference(CPG Observation)Content to use in performing the task
... 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.

.... value[x] 1..1Result of output
..... valueBase64Binarybase64Binary
..... valueBooleanboolean
..... valueCanonicalcanonical(Any)
..... valueCodecode
..... valueDatedate
..... valueDateTimedateTime
..... valueDecimaldecimal
..... valueIdid
..... valueInstantinstant
..... valueIntegerinteger
..... valueMarkdownmarkdown
..... valueOidoid
..... valuePositiveIntpositiveInt
..... valueStringstring
..... valueTimetime
..... valueUnsignedIntunsignedInt
..... valueUriuri
..... valueUrlurl
..... valueUuiduuid
..... valueAddressAddress
..... valueAgeAge
..... valueAnnotationAnnotation
..... valueAttachmentAttachment
..... valueCodeableConceptCodeableConcept
..... valueCodingCoding
..... valueContactPointContactPoint
..... valueCountCount
..... valueDistanceDistance
..... valueDurationDuration
..... valueHumanNameHumanName
..... valueIdentifierIdentifier
..... valueMoneyMoney
..... valuePeriodPeriod
..... valueQuantityQuantity
..... valueRangeRange
..... valueRatioRatio
..... valueReferenceReference(Any)
..... valueSampledDataSampledData
..... valueSignatureSignature
..... valueTimingTiming
..... valueContactDetailContactDetail
..... valueContributorContributor
..... valueDataRequirementDataRequirement
..... valueExpressionExpression
..... valueParameterDefinitionParameterDefinition
..... valueRelatedArtifactRelatedArtifact
..... valueTriggerDefinitionTriggerDefinition
..... valueUsageContextUsageContext
..... valueDosageDosage
..... valueMetaMeta

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Task.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Task.statusrequiredTaskStatus
Task.statusReasonexample
Task.businessStatusexample
Task.intentrequiredTaskIntent
Task.priorityrequiredRequestPriority
Task.codeextensiblePattern: record-inference
Task.performerTypepreferredProcedurePerformerRoleCodes
Task.reasonCodeexample
Task.input.typeexample
Task.input:inference.typeexamplePattern: record-inference
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().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-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

This structure is derived from CPGTask

Summary

Mandatory: 2 elements
Must-Support: 4 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Task.input is sliced based on the value of value:type

 

Other representations of profile: CSV, Excel, Schematron