PrescribeIT® Specification and Guide Version 5.0


v5.0 of this specification has been superseded by v5.3. v5.3 is compatible but adds additional features for Quebec.

The version (Bundle.meta.tag:version) that is sent in the message will remain PrescribeIT5.0

 

The official URL for this profile is:

http://prescribeit.ca/fhir/StructureDefinition/task-e140-m

The Cancel RX Request Notification can be used to cancel both ‘New’ and ‘Renewal’ requests. This is typically issued when an error has occurred, and where it is believed that the patient has not yet picked up the prescription. Given that the service intends to have a ‘delay (5 minutes)’ between polling for messages, it is likely that the pharmacy will receive the original RX request plus the cancellation notice. See below, we have allowed for a Pharmacy response of both Refuse and Accept to allow Prescriber and Pharmacy to be in-sync on what medications the patient is actively taking.

Conformance rules specific to this task may exist. Refer to the Business Rules.

Download Excel representation

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

>

This structure is derived from PrescribeIT® Request from EMR Task

NameCard.TypeConstraints and Usage
.  Task 0..*PrescribeIT® Request from EMR Taskinv-2: A Failure reason may be present only when a task has failed.
inv-1: Last modified date must be greater than or equal to created date.
Definition:
A task to be performed.

..  id 1..1idDefinition:
The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.


Comments:
Usage Note: This will usually be a GUID and is assigned by the requesting application.

..  meta 1..1MetaDefinition:
The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource.

...  profile 1..*uriSlice: Unordered, Open by value:value
Definition:
A list of profiles [[[StructureDefinition]]]s that this resource claims to conform to. The URL is a reference to [[[StructureDefinition.url]]].


Comments:
It is up to the server and/or other infrastructure of policy to determine whether/how these claims are verified and/or updated over time.

...  profile
       (task-e140-m)
1..1uriFixed Value: http://prescribeit.ca/fhir/StructureDefinition/task-e140-m
Definition:
A list of profiles [[[StructureDefinition]]]s that this resource claims to conform to. The URL is a reference to [[[StructureDefinition.url]]].


Comments:
Fixed value: http://prescribeit.ca/fhir/StructureDefinition/task-e140-m

..  extension 0..*ExtensionSlice: Unordered, Open by value:url
Definition:
An Extension

..  extension
     (groupIdentifier)
1..1Task Group IdentifierDefinition:
This is the common identifier that represents a paper order. It may be shared by multiple Task instances for various Medication Orders, reflecting multiple requests that are authorized simultaneously for a patient by a single prescriber


Comments:
Usage Note: This business identifier is assigned by the sending application and is used to group tasks together that need to be processed and managed together. The following scenarios provide further detail:



Scenario 1) Single Task allowed within a Bundle: There are some business scenarios where a given task will be managed individually and only a single task is allowed in a bundle. This is true for the Adapt (p170) and the Pharmacist Prescribe (p190). Multiple tasks of the same type are not allowed, nor are any other task type.



Scenario 2) Single Task is sent. For any task type, the source system may send a single task within the bundle.



Scenario 3) In either scenario 1 or 2, the task will be assigned its own Group Identifier and will be handled as a group of one.



Scenario 4) Bundle restricted to same task type only: There are cases when only tasks of the same type can be grouped together. This is true for the cancel request (e140), Dispense Notifications (p200), Cancel RX Dispense Notification (p210). In this scenario, no other task types are allowed within the bundle.



Scenario 5) Same or Mixed Task Types within a single group: There are cases when either all the tasks within a group happen to have the same task type (p160) which are not necessary restricted due to 4 or certain task types that are different can be grouped together. This is true for new (e110) and renewal (e120) where these are part of the same prescription. Another scenario is that renewal responses (e161, e162, e163, e164) may be sent with an e110 and/or an e120.



Scenario 6) In either scenario 4 and 5, the same Group Identifier must be assigned to the multiple tasks as they are all part of the same group. All task resources sharing a Group Identifier must be transmitted in the same message bundle and should be treated as a group by the receiving system.



Scenario 7) The p160 task type can only be sent within it's own bundle.



Multiple Group Identifiers within the same Bundle is not allowed.



The Task.extension:groupIdentifier.valueIdentifier.system element will be an OID of the form [Vendor root].[Application instance node].3 expressed as a uri (e.g. urn:oid:1.2.3.4). The branch “.3” is appended to create a unique namespace for the Group Identifer. The Task.extension:groupIdentifier.valueIdentifier.value element will be assigned by the sending system and must be a unique business identifier.

..  extension
     (reason)
1..1Task ReasonDefinition:
Indicates the reason for the current task's status or existence - used for reasons other than 'failed'


Comments:
Conformance Rule: This will contain the reason for the cancellation

...  url 1..1uri"http://hl7.org/fhir/StructureDefinition/extension-Task.reason"
...  value[x] 1..1Shared Health CodeableConcept Code Required with Text OptionalSlice: Unordered, Closed by type:$this
Binding: PrescriptionCancelReason (20210401) (required)
Definition:
A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.


Comments:
Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

...  value[x]
       (valueCodeableConcept)
1..1Shared Health CodeableConcept Code Required with Text OptionalDefinition:
A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.


Comments:
Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

....  coding 1..*CodingDefinition:
A reference to a code defined by a terminology system.


Comments:
Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labelled as UserSelected = true.

.....  system 1..1uriDefinition:
The identification of the code system that defines the meaning of the symbol in the code.


Comments:
This is the URI that represents the coding system as defined within the binding.

.....  code 1..1codeDefinition:
A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).


Comments:
This is the code as defined within the binding.

.....  display 1..1stringDefinition:
A representation of the meaning of the code in the system, following the rules of the system.

....  text 0..1stringMax Length: 2500
Definition:
A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.


Comments:
Conformance Rule: This is the text used to convey the exact word that was displayed to the practitioner

..  type 1..1Shared Health CodeableConcept CodeBinding: PrescriptionTaskType (20190315) (required)
Definition:
A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.


Comments:
This will be a fixed code for each type of task. Review usage comments on child elements.

...  coding 1..*CodingSlice: Unordered, Open by value:system
Definition:
A reference to a code defined by a terminology system.


Comments:
Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labelled as UserSelected = true.

....  system 1..1uriDefinition:
The identification of the code system that defines the meaning of the symbol in the code.


Comments:
This is the URI that represents the coding system as defined within the binding.

....  code 1..1codeDefinition:
A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).


Comments:
This is the code as defined within the binding.

...  coding
       (taskCode)
1..*CodingDefinition:
A reference to a code defined by a terminology system.


Comments:
Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labelled as UserSelected = true.

....  system 1..1uriFixed Value: https://fhir.infoway-inforoute.ca/CodeSystem/prescriptiontasktype
Definition:
The identification of the code system that defines the meaning of the symbol in the code.


Comments:
Fixed value: https://fhir.infoway-inforoute.ca/CodeSystem/prescriptiontasktype

....  code 1..1codeFixed Value: e140-m
Definition:
A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).


Comments:
Fixed value: e140-m

..  priority 0..1codeBinding: PrescriptionTaskPriority (20190415) (required)
Definition:
The priority of the task among other tasks of the same type.


Comments:
This element does not apply to Tasks p170-m (Pharmacist Adapt), p200-m (RX Dispense Notification), and p210-m (RX Dispense Cancel Notification)



Conformance Rule: If one of the medications within a group is a high priority, the EMR should present the entire renewal request (based on Group Identifier) as a high priority item within the queue.



Conformance Rule: For Tasks p141-m (Cancel RX Request Denied) and p143-m (Cancel RX Remaining Fills Revoked) the priority must be set to high.



Conformance Rule: For Task p166-m - RX Renewal Remindar, if the priority has escalated to high, the EMR must present this to the Prescriber.

..  status 1..1codeBinding: TaskStatus (required): The current status of the task.


Fixed Value: requested
Definition:
The current status of the task.


Comments:
Fixed value: requested

..  subject 1..1Reference(PrescribeIT® Prescription) {b}Definition:
A reference from one resource to another.

...  reference 1..1stringDefinition:
A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.


Comments:
This is the reference to the MedicationOrder.id assigned by the Sending system. This is not a business identifier. Example: value='MedicationOrder/[guid].

..  for 1..1Reference(Shared Health Patient) {b}Definition:
The entity who benefits from the performance of the service specified in the task (e.g., the patient).


Comments:
Identifies the patient tied to the task. (FHIR prohibits inheritance of context, so this must be explicitly declared rather than inferred from the presence of the Patient resource in the message)

...  reference 1..1stringDefinition:
A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.


Comments:
This is a reference to the Patient associated with the task. It will be a URN pointing to the id of the patient record in the message

..  created 1..1dateTimecreated-full: Must be at least a full date. i.e. yyyy-mm-dd
Definition:
The date and time this task was created.


Comments:
This indicates when the request was created. This will generally be the same as the date of message construction.



Conformance Rule: Date-Time must be specified down to the day. Time is optional and may be ignored.



Usage Note: If time is present, FHIR requires the UTC offset and for time to be specified down to the seconds. If seconds aren't available, they may be filled with '00'

..  lastModified 1..1dateTimecreated-full: Must be at least a full date. i.e. yyyy-mm-dd
Definition:
The date and time of last modification to this task.


Comments:
This is required by FHIR but is not needed. It should generally be set to the same value as Task.created. This is the date of the most recent transaction as recorded in the EMR.



Usage Note: If time is present, FHIR requires the UTC offset and for time to be specified down to the seconds. If seconds aren't available, they may be filled with '00'.



Conformance Rule: PMS is not expected to display this date as it is irrelevant to the Pharmacist or to the processing of the discontinue notification.

..  creator 1..1Reference(Shared Health SAML Practitioner) {b}Definition:
The creator of the task.


Comments:
This is who is submitting the task and asking for it be done.



In the context of all EMR message this will be the PrescribeIT® Prescriber that responsible for initiating or overseeing the clinical event in the message.

...  reference 1..1stringDefinition:
A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.


Comments:
This is a reference to the originating prescriber Practitioner. This value will be returned from the Provider Registry Practitioner query. Example: value='https://EnvironmentSpecificHost/EnvironmentAndContextSpecificPathRegistry/Practitioner/CPRID'

..  owner 1..1Reference(Shared Health - eRx Service Location) {b}Definition:
The owner of this task. The participant who can execute this task.


Comments:
This is who is intended to receive/act on the task

...  reference 1..1stringDefinition:
A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.


Comments:
This is a reference to the pharmacy Organization being requested to act. This value will be returned from the Provider Registry query. Example: value='https://EnvironmentSpecificHost/EnvironmentAndContextSpecificPathRegistry/Organization/CPRID'

This structure is derived from PrescribeIT® Request from EMR Task

Summary

Mandatory: 13 elements
Must-Support: 16 elements
Fixed Value: 4 elements
Prohibited: 2 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Task.meta.profile is sliced based on the value of value:value
  • The element Task.type.coding is sliced based on the value of value:system

This structure is derived from PrescribeIT® Request from EMR Task

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task 0..*PrescribeIT® Request from EMR TaskCancel RX Fill Request
... meta S1..1MetaMetadata about the resource
.... profile S1..*(Slice Definition)Profiles this resource claims to conform to
Slice: Unordered, Open by value:value
..... profile:task-e140-m S1..1uriProfiles this resource claims to conform to
Fixed Value: http://prescribeit.ca/fhir/StructureDefinition/task-e140-m
... extension S0..*ExtensionExtension
Slice: Unordered, Open by value:url
... ext-task-reason S1..1CodeableConceptTask reason
URL: http://hl7.org/fhir/StructureDefinition/extension-Task.reason profiled by http://prescribeit.ca/fhir/StructureDefinition/ext-task-reason
.... value[x] S1..1Shared Health CodeableConcept Code Required with Text OptionalConcept - reference to a terminology or just text
Binding: PrescriptionCancelReason (20210401) (required)
.... value[x]:valueCodeableConcept S1..1Shared Health CodeableConcept Code Required with Text OptionalConcept - reference to a terminology or just text
..... coding S1..*CodingCode defined by a terminology system
...... display S1..1stringRepresentation defined by the system
... type S1..1Shared Health CodeableConcept CodeConcept - reference to a terminology or just text
.... coding S1..*(Slice Definition)Code defined by a terminology system
Slice: Unordered, Open by value:system
..... coding:taskCode S1..*CodingCode defined by a terminology system
...... system S1..1uriIdentity of the terminology system
Fixed Value: https://fhir.infoway-inforoute.ca/CodeSystem/prescriptiontasktype
...... code S1..1codeSymbol in syntax defined by the system
Fixed Value: e140-m
... status S1..1codedraft | requested | received | accepted | +
Fixed Value: requested
... subject S1..1Reference(PrescribeIT® Prescription) {b}Prescription being cancelled
... input 0..0
... output 0..0

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Task I0..*PrescribeIT® Request from EMR TaskCancel RX Fill Request
... id SΣ1..1idLogical id of this artifact
... meta SΣ1..1MetaMetadata about the resource
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... versionId Σ0..1idVersion specific identifier
.... lastUpdated Σ0..1instantWhen the resource version last changed
.... profile SΣ1..*(Slice Definition)Profiles this resource claims to conform to
Slice: Unordered, Open by value:value
..... profile:task-e140-m SΣ1..1uriProfiles this resource claims to conform to

Fixed Value: http://prescribeit.ca/fhir/StructureDefinition/task-e140-m
.... tag Σ0..*CodingTags applied to this resource
Binding: (unbound) (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones"


... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: http://tools.ietf.org/html/bcp47 (required): A human language.


... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension S0..*ExtensionExtension
Slice: Unordered, Open by value:url
... ext-task-group-identifier S1..1Shared Health IdentifierGroup Identifier
URL: http://hl7.org/fhir/StructureDefinition/extension-Task.groupIdentifier profiled by http://prescribeit.ca/fhir/StructureDefinition/ext-task-group-identifier
... ext-task-reason S1..1CodeableConceptTask reason
URL: http://hl7.org/fhir/StructureDefinition/extension-Task.reason profiled by http://prescribeit.ca/fhir/StructureDefinition/ext-task-reason
.... id 0..1idxml:id (or equivalent in JSON)
.... url S1..1uri"http://hl7.org/fhir/StructureDefinition/extension-Task.reason"
.... value[x] S1..1(Slice Definition)Concept - reference to a terminology or just text
Slice: Unordered, Closed by type:$this
Binding: PrescriptionCancelReason (20210401) (required)
..... value[x]:valueCodeableConcept S1..1Shared Health CodeableConcept Code Required with Text OptionalConcept - reference to a terminology or just text
...... id 0..1idxml:id (or equivalent in JSON)
...... extension 0..*ExtensionAdditional Content defined by implementations
...... coding SΣ1..*CodingCode defined by a terminology system
....... id 0..1idxml:id (or equivalent in JSON)
....... extension 0..*ExtensionAdditional Content defined by implementations
....... system SΣ1..1uriIdentity of the terminology system
....... version Σ0..1stringVersion of the system - if relevant
....... code SΣ1..1codeSymbol in syntax defined by the system
....... display SΣ1..1stringRepresentation defined by the system
....... userSelected Σ0..1booleanIf this coding was chosen directly by the user
...... text SΣ0..1stringPlain text representation of the concept
Max Length: 2500
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..1IdentifierTask Instance Identifier
... type S1..1Shared Health CodeableConcept CodeConcept - reference to a terminology or just text
Binding: PrescriptionTaskType (20190315) (required)
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... coding SΣ1..*(Slice Definition)Code defined by a terminology system
Slice: Unordered, Open by value:system
..... coding:All Slices Content/Rules for all slices
...... id 0..1idxml:id (or equivalent in JSON)
...... extension 0..*ExtensionAdditional Content defined by implementations
...... system SΣ1..1uriIdentity of the terminology system
...... version Σ0..1stringVersion of the system - if relevant
...... code SΣ1..1codeSymbol in syntax defined by the system
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... coding:taskCode SΣ1..*CodingCode defined by a terminology system
...... id 0..1idxml:id (or equivalent in JSON)
...... extension 0..*ExtensionAdditional Content defined by implementations
...... system SΣ1..1uriIdentity of the terminology system
Fixed Value: https://fhir.infoway-inforoute.ca/CodeSystem/prescriptiontasktype
...... version Σ0..1stringVersion of the system - if relevant
...... code SΣ1..1codeSymbol in syntax defined by the system
Fixed Value: e140-m
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... description Σ0..1stringTask Description
... performerType 0..*Codingrequester | dispatcher | scheduler | performer | monitor | manager | acquirer | reviewer
Binding: TaskPerformerType (preferred): The type(s) of task performers allowed


... priority S0..1codenormal | high
Binding: PrescriptionTaskPriority (20190415) (required)
... status SΣI1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.


Fixed Value: requested
... failureReason ΣI0..1CodeableConceptTask Failure Reason
... subject S1..1Reference(PrescribeIT® Prescription) {b}Prescription being cancelled
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... reference SΣI1..1stringRelative, internal or absolute URL reference
.... display Σ0..1stringText alternative for the resource
... for SΣ1..1Reference(Shared Health Patient) {b}Beneficiary of the Task
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... reference SΣI1..1stringRelative, internal or absolute URL reference
.... display Σ0..1stringText alternative for the resource
... definition Σ0..1uriTask Definition
... created SI1..1dateTimeTask Creation Date
created-full: Must be at least a full date. i.e. yyyy-mm-dd
... lastModified SΣI1..1dateTimeTask Last Modified Date
created-full: Must be at least a full date. i.e. yyyy-mm-dd
... creator S1..1Reference(Shared Health SAML Practitioner) {b}Task requestor
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... reference SΣI1..1stringRelative, internal or absolute URL reference
.... display Σ0..1stringText alternative for the resource
... owner S1..1Reference(Shared Health - eRx Service Location) {b}Task recipient
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... reference SΣI1..1stringRelative, internal or absolute URL reference
.... display Σ0..1stringText alternative for the resource
... parent 0..1Reference(Task)Composite task

doco Documentation for this format

Grid View

This structure is derived from PrescribeIT® Request from EMR Task

NameCard.TypeConstraints and Usage
.  Task 0..*PrescribeIT® Request from EMR Taskinv-2: A Failure reason may be present only when a task has failed.
inv-1: Last modified date must be greater than or equal to created date.
Definition:
A task to be performed.

..  id 1..1idDefinition:
The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.


Comments:
Usage Note: This will usually be a GUID and is assigned by the requesting application.

..  meta 1..1MetaDefinition:
The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource.

...  profile 1..*uriSlice: Unordered, Open by value:value
Definition:
A list of profiles [[[StructureDefinition]]]s that this resource claims to conform to. The URL is a reference to [[[StructureDefinition.url]]].


Comments:
It is up to the server and/or other infrastructure of policy to determine whether/how these claims are verified and/or updated over time.

...  profile
       (task-e140-m)
1..1uriFixed Value: http://prescribeit.ca/fhir/StructureDefinition/task-e140-m
Definition:
A list of profiles [[[StructureDefinition]]]s that this resource claims to conform to. The URL is a reference to [[[StructureDefinition.url]]].


Comments:
Fixed value: http://prescribeit.ca/fhir/StructureDefinition/task-e140-m

..  extension 0..*ExtensionSlice: Unordered, Open by value:url
Definition:
An Extension

..  extension
     (groupIdentifier)
1..1Task Group IdentifierDefinition:
This is the common identifier that represents a paper order. It may be shared by multiple Task instances for various Medication Orders, reflecting multiple requests that are authorized simultaneously for a patient by a single prescriber


Comments:
Usage Note: This business identifier is assigned by the sending application and is used to group tasks together that need to be processed and managed together. The following scenarios provide further detail:



Scenario 1) Single Task allowed within a Bundle: There are some business scenarios where a given task will be managed individually and only a single task is allowed in a bundle. This is true for the Adapt (p170) and the Pharmacist Prescribe (p190). Multiple tasks of the same type are not allowed, nor are any other task type.



Scenario 2) Single Task is sent. For any task type, the source system may send a single task within the bundle.



Scenario 3) In either scenario 1 or 2, the task will be assigned its own Group Identifier and will be handled as a group of one.



Scenario 4) Bundle restricted to same task type only: There are cases when only tasks of the same type can be grouped together. This is true for the cancel request (e140), Dispense Notifications (p200), Cancel RX Dispense Notification (p210). In this scenario, no other task types are allowed within the bundle.



Scenario 5) Same or Mixed Task Types within a single group: There are cases when either all the tasks within a group happen to have the same task type (p160) which are not necessary restricted due to 4 or certain task types that are different can be grouped together. This is true for new (e110) and renewal (e120) where these are part of the same prescription. Another scenario is that renewal responses (e161, e162, e163, e164) may be sent with an e110 and/or an e120.



Scenario 6) In either scenario 4 and 5, the same Group Identifier must be assigned to the multiple tasks as they are all part of the same group. All task resources sharing a Group Identifier must be transmitted in the same message bundle and should be treated as a group by the receiving system.



Scenario 7) The p160 task type can only be sent within it's own bundle.



Multiple Group Identifiers within the same Bundle is not allowed.



The Task.extension:groupIdentifier.valueIdentifier.system element will be an OID of the form [Vendor root].[Application instance node].3 expressed as a uri (e.g. urn:oid:1.2.3.4). The branch “.3” is appended to create a unique namespace for the Group Identifer. The Task.extension:groupIdentifier.valueIdentifier.value element will be assigned by the sending system and must be a unique business identifier.

..  extension
     (reason)
1..1Task ReasonDefinition:
Indicates the reason for the current task's status or existence - used for reasons other than 'failed'


Comments:
Conformance Rule: This will contain the reason for the cancellation

...  url 1..1uri"http://hl7.org/fhir/StructureDefinition/extension-Task.reason"
...  value[x] 1..1Shared Health CodeableConcept Code Required with Text OptionalSlice: Unordered, Closed by type:$this
Binding: PrescriptionCancelReason (20210401) (required)
Definition:
A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.


Comments:
Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

...  value[x]
       (valueCodeableConcept)
1..1Shared Health CodeableConcept Code Required with Text OptionalDefinition:
A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.


Comments:
Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

....  coding 1..*CodingDefinition:
A reference to a code defined by a terminology system.


Comments:
Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labelled as UserSelected = true.

.....  system 1..1uriDefinition:
The identification of the code system that defines the meaning of the symbol in the code.


Comments:
This is the URI that represents the coding system as defined within the binding.

.....  code 1..1codeDefinition:
A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).


Comments:
This is the code as defined within the binding.

.....  display 1..1stringDefinition:
A representation of the meaning of the code in the system, following the rules of the system.

....  text 0..1stringMax Length: 2500
Definition:
A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.


Comments:
Conformance Rule: This is the text used to convey the exact word that was displayed to the practitioner

..  type 1..1Shared Health CodeableConcept CodeBinding: PrescriptionTaskType (20190315) (required)
Definition:
A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.


Comments:
This will be a fixed code for each type of task. Review usage comments on child elements.

...  coding 1..*CodingSlice: Unordered, Open by value:system
Definition:
A reference to a code defined by a terminology system.


Comments:
Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labelled as UserSelected = true.

....  system 1..1uriDefinition:
The identification of the code system that defines the meaning of the symbol in the code.


Comments:
This is the URI that represents the coding system as defined within the binding.

....  code 1..1codeDefinition:
A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).


Comments:
This is the code as defined within the binding.

...  coding
       (taskCode)
1..*CodingDefinition:
A reference to a code defined by a terminology system.


Comments:
Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labelled as UserSelected = true.

....  system 1..1uriFixed Value: https://fhir.infoway-inforoute.ca/CodeSystem/prescriptiontasktype
Definition:
The identification of the code system that defines the meaning of the symbol in the code.


Comments:
Fixed value: https://fhir.infoway-inforoute.ca/CodeSystem/prescriptiontasktype

....  code 1..1codeFixed Value: e140-m
Definition:
A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).


Comments:
Fixed value: e140-m

..  priority 0..1codeBinding: PrescriptionTaskPriority (20190415) (required)
Definition:
The priority of the task among other tasks of the same type.


Comments:
This element does not apply to Tasks p170-m (Pharmacist Adapt), p200-m (RX Dispense Notification), and p210-m (RX Dispense Cancel Notification)



Conformance Rule: If one of the medications within a group is a high priority, the EMR should present the entire renewal request (based on Group Identifier) as a high priority item within the queue.



Conformance Rule: For Tasks p141-m (Cancel RX Request Denied) and p143-m (Cancel RX Remaining Fills Revoked) the priority must be set to high.



Conformance Rule: For Task p166-m - RX Renewal Remindar, if the priority has escalated to high, the EMR must present this to the Prescriber.

..  status 1..1codeBinding: TaskStatus (required): The current status of the task.


Fixed Value: requested
Definition:
The current status of the task.


Comments:
Fixed value: requested

..  subject 1..1Reference(PrescribeIT® Prescription) {b}Definition:
A reference from one resource to another.

...  reference 1..1stringDefinition:
A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.


Comments:
This is the reference to the MedicationOrder.id assigned by the Sending system. This is not a business identifier. Example: value='MedicationOrder/[guid].

..  for 1..1Reference(Shared Health Patient) {b}Definition:
The entity who benefits from the performance of the service specified in the task (e.g., the patient).


Comments:
Identifies the patient tied to the task. (FHIR prohibits inheritance of context, so this must be explicitly declared rather than inferred from the presence of the Patient resource in the message)

...  reference 1..1stringDefinition:
A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.


Comments:
This is a reference to the Patient associated with the task. It will be a URN pointing to the id of the patient record in the message

..  created 1..1dateTimecreated-full: Must be at least a full date. i.e. yyyy-mm-dd
Definition:
The date and time this task was created.


Comments:
This indicates when the request was created. This will generally be the same as the date of message construction.



Conformance Rule: Date-Time must be specified down to the day. Time is optional and may be ignored.



Usage Note: If time is present, FHIR requires the UTC offset and for time to be specified down to the seconds. If seconds aren't available, they may be filled with '00'

..  lastModified 1..1dateTimecreated-full: Must be at least a full date. i.e. yyyy-mm-dd
Definition:
The date and time of last modification to this task.


Comments:
This is required by FHIR but is not needed. It should generally be set to the same value as Task.created. This is the date of the most recent transaction as recorded in the EMR.



Usage Note: If time is present, FHIR requires the UTC offset and for time to be specified down to the seconds. If seconds aren't available, they may be filled with '00'.



Conformance Rule: PMS is not expected to display this date as it is irrelevant to the Pharmacist or to the processing of the discontinue notification.

..  creator 1..1Reference(Shared Health SAML Practitioner) {b}Definition:
The creator of the task.


Comments:
This is who is submitting the task and asking for it be done.



In the context of all EMR message this will be the PrescribeIT® Prescriber that responsible for initiating or overseeing the clinical event in the message.

...  reference 1..1stringDefinition:
A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.


Comments:
This is a reference to the originating prescriber Practitioner. This value will be returned from the Provider Registry Practitioner query. Example: value='https://EnvironmentSpecificHost/EnvironmentAndContextSpecificPathRegistry/Practitioner/CPRID'

..  owner 1..1Reference(Shared Health - eRx Service Location) {b}Definition:
The owner of this task. The participant who can execute this task.


Comments:
This is who is intended to receive/act on the task

...  reference 1..1stringDefinition:
A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.


Comments:
This is a reference to the pharmacy Organization being requested to act. This value will be returned from the Provider Registry query. Example: value='https://EnvironmentSpecificHost/EnvironmentAndContextSpecificPathRegistry/Organization/CPRID'

This structure is derived from PrescribeIT® Request from EMR Task

Summary

Mandatory: 13 elements
Must-Support: 16 elements
Fixed Value: 4 elements
Prohibited: 2 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Task.meta.profile is sliced based on the value of value:value
  • The element Task.type.coding is sliced based on the value of value:system

Differential View

This structure is derived from PrescribeIT® Request from EMR Task

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task 0..*PrescribeIT® Request from EMR TaskCancel RX Fill Request
... meta S1..1MetaMetadata about the resource
.... profile S1..*(Slice Definition)Profiles this resource claims to conform to
Slice: Unordered, Open by value:value
..... profile:task-e140-m S1..1uriProfiles this resource claims to conform to
Fixed Value: http://prescribeit.ca/fhir/StructureDefinition/task-e140-m
... extension S0..*ExtensionExtension
Slice: Unordered, Open by value:url
... ext-task-reason S1..1CodeableConceptTask reason
URL: http://hl7.org/fhir/StructureDefinition/extension-Task.reason profiled by http://prescribeit.ca/fhir/StructureDefinition/ext-task-reason
.... value[x] S1..1Shared Health CodeableConcept Code Required with Text OptionalConcept - reference to a terminology or just text
Binding: PrescriptionCancelReason (20210401) (required)
.... value[x]:valueCodeableConcept S1..1Shared Health CodeableConcept Code Required with Text OptionalConcept - reference to a terminology or just text
..... coding S1..*CodingCode defined by a terminology system
...... display S1..1stringRepresentation defined by the system
... type S1..1Shared Health CodeableConcept CodeConcept - reference to a terminology or just text
.... coding S1..*(Slice Definition)Code defined by a terminology system
Slice: Unordered, Open by value:system
..... coding:taskCode S1..*CodingCode defined by a terminology system
...... system S1..1uriIdentity of the terminology system
Fixed Value: https://fhir.infoway-inforoute.ca/CodeSystem/prescriptiontasktype
...... code S1..1codeSymbol in syntax defined by the system
Fixed Value: e140-m
... status S1..1codedraft | requested | received | accepted | +
Fixed Value: requested
... subject S1..1Reference(PrescribeIT® Prescription) {b}Prescription being cancelled
... input 0..0
... output 0..0

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Task I0..*PrescribeIT® Request from EMR TaskCancel RX Fill Request
... id SΣ1..1idLogical id of this artifact
... meta SΣ1..1MetaMetadata about the resource
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... versionId Σ0..1idVersion specific identifier
.... lastUpdated Σ0..1instantWhen the resource version last changed
.... profile SΣ1..*(Slice Definition)Profiles this resource claims to conform to
Slice: Unordered, Open by value:value
..... profile:task-e140-m SΣ1..1uriProfiles this resource claims to conform to

Fixed Value: http://prescribeit.ca/fhir/StructureDefinition/task-e140-m
.... tag Σ0..*CodingTags applied to this resource
Binding: (unbound) (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones"


... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: http://tools.ietf.org/html/bcp47 (required): A human language.


... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension S0..*ExtensionExtension
Slice: Unordered, Open by value:url
... ext-task-group-identifier S1..1Shared Health IdentifierGroup Identifier
URL: http://hl7.org/fhir/StructureDefinition/extension-Task.groupIdentifier profiled by http://prescribeit.ca/fhir/StructureDefinition/ext-task-group-identifier
... ext-task-reason S1..1CodeableConceptTask reason
URL: http://hl7.org/fhir/StructureDefinition/extension-Task.reason profiled by http://prescribeit.ca/fhir/StructureDefinition/ext-task-reason
.... id 0..1idxml:id (or equivalent in JSON)
.... url S1..1uri"http://hl7.org/fhir/StructureDefinition/extension-Task.reason"
.... value[x] S1..1(Slice Definition)Concept - reference to a terminology or just text
Slice: Unordered, Closed by type:$this
Binding: PrescriptionCancelReason (20210401) (required)
..... value[x]:valueCodeableConcept S1..1Shared Health CodeableConcept Code Required with Text OptionalConcept - reference to a terminology or just text
...... id 0..1idxml:id (or equivalent in JSON)
...... extension 0..*ExtensionAdditional Content defined by implementations
...... coding SΣ1..*CodingCode defined by a terminology system
....... id 0..1idxml:id (or equivalent in JSON)
....... extension 0..*ExtensionAdditional Content defined by implementations
....... system SΣ1..1uriIdentity of the terminology system
....... version Σ0..1stringVersion of the system - if relevant
....... code SΣ1..1codeSymbol in syntax defined by the system
....... display SΣ1..1stringRepresentation defined by the system
....... userSelected Σ0..1booleanIf this coding was chosen directly by the user
...... text SΣ0..1stringPlain text representation of the concept
Max Length: 2500
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..1IdentifierTask Instance Identifier
... type S1..1Shared Health CodeableConcept CodeConcept - reference to a terminology or just text
Binding: PrescriptionTaskType (20190315) (required)
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... coding SΣ1..*(Slice Definition)Code defined by a terminology system
Slice: Unordered, Open by value:system
..... coding:All Slices Content/Rules for all slices
...... id 0..1idxml:id (or equivalent in JSON)
...... extension 0..*ExtensionAdditional Content defined by implementations
...... system SΣ1..1uriIdentity of the terminology system
...... version Σ0..1stringVersion of the system - if relevant
...... code SΣ1..1codeSymbol in syntax defined by the system
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... coding:taskCode SΣ1..*CodingCode defined by a terminology system
...... id 0..1idxml:id (or equivalent in JSON)
...... extension 0..*ExtensionAdditional Content defined by implementations
...... system SΣ1..1uriIdentity of the terminology system
Fixed Value: https://fhir.infoway-inforoute.ca/CodeSystem/prescriptiontasktype
...... version Σ0..1stringVersion of the system - if relevant
...... code SΣ1..1codeSymbol in syntax defined by the system
Fixed Value: e140-m
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... description Σ0..1stringTask Description
... performerType 0..*Codingrequester | dispatcher | scheduler | performer | monitor | manager | acquirer | reviewer
Binding: TaskPerformerType (preferred): The type(s) of task performers allowed


... priority S0..1codenormal | high
Binding: PrescriptionTaskPriority (20190415) (required)
... status SΣI1..1codedraft | requested | received | accepted | +
Binding: TaskStatus (required): The current status of the task.


Fixed Value: requested
... failureReason ΣI0..1CodeableConceptTask Failure Reason
... subject S1..1Reference(PrescribeIT® Prescription) {b}Prescription being cancelled
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... reference SΣI1..1stringRelative, internal or absolute URL reference
.... display Σ0..1stringText alternative for the resource
... for SΣ1..1Reference(Shared Health Patient) {b}Beneficiary of the Task
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... reference SΣI1..1stringRelative, internal or absolute URL reference
.... display Σ0..1stringText alternative for the resource
... definition Σ0..1uriTask Definition
... created SI1..1dateTimeTask Creation Date
created-full: Must be at least a full date. i.e. yyyy-mm-dd
... lastModified SΣI1..1dateTimeTask Last Modified Date
created-full: Must be at least a full date. i.e. yyyy-mm-dd
... creator S1..1Reference(Shared Health SAML Practitioner) {b}Task requestor
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... reference SΣI1..1stringRelative, internal or absolute URL reference
.... display Σ0..1stringText alternative for the resource
... owner S1..1Reference(Shared Health - eRx Service Location) {b}Task recipient
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... reference SΣI1..1stringRelative, internal or absolute URL reference
.... display Σ0..1stringText alternative for the resource
... parent 0..1Reference(Task)Composite task

doco Documentation for this format

 

Other representations of profile: Schematron

Terminology Bindings

PathConformanceValueSet / Code
Task.meta.tagexample
Task.languagerequiredhttp://tools.ietf.org/html/bcp47
Task.extension:reason.value[x]requiredPrescriptionCancelReason
Task.typerequiredPrescriptionTaskType
Task.performerTypepreferredTaskPerformerType
Task.priorityrequiredPrescriptionTaskPriority
Task.statusrequiredFixed Value: requested

Constraints

IdPathDetailsRequirements
inv-2TaskA Failure reason may be present only when a task has failed.
: failureReason.empty() or status = 'failed'
inv-1TaskLast modified date must be greater than or equal to created date.
: lastModified >= created
created-fullTask.createdMust be at least a full date. i.e. yyyy-mm-dd
: length()>=10
created-fullTask.lastModifiedMust be at least a full date. i.e. yyyy-mm-dd
: length()>=10