Skip to main content
You are here: Data Exports

Data Export - Decision Support System

How the Decision Support System fits together

There are two sets of linked tables that support Mirah’s decision support functionality.

The first is the setup instructions:

  • Entity Decision Algorithm supplies the configuration for what decision support is going to trigger, including what dates and the population of patients it applies to, and other settings.

  • Workflow is a specific action that an algorithm can trigger. For example, ‘if the patient endorses a self harm item…”.

  • Workflow Action is a specific action, either taken by the system or instructing the provider. For example:

    • “Add the patient to a given treatment track” (system)

    • “Complete a safety planning exercise for the patient” (instruction to provider)

These combine as follows:

  • Configure an algorithm to run on all patients currently in outpatient treatment… (Entity Decision Algorithm).

  • Which triggers a workflow whenever a patient endorses a self harm item…(Workflow).

  • That prompts them to do a safety plan (Workflow Action).

Whenever the triggering event occurs, an additional set of tables include information about what steps have happened for that particular patient:

  • Triggered Decision Algorithm links to Entity Decision Algorithm and a particular Episode of Care to show that this episode of care has been triggered by the algorithm.

  • Triggered Workflow shows that a particular workflow has been triggered for this patient, and is linked to the Triggered Decision Algorithm.

  • Triggered Workflow Action shows the actions that are available for this patient.

  • Triggered Workflow Action Log shows which actions were actually taken by the system or by a provider.

  • Provider Notification shows the inbox notifications and emails sent to a provider.

Entity Decision Algorithm

The Entity Decision Algorithm represents at a top level a Decision Support algorithm that is in use.

Column

Name

Format

Nullable

Description

Notes

id

ID

uuid

false

The Mirah internal identifier of the algorithm


name

Name

string

false

The visible name of the algorithm


notes

Notes

string

true

Additional notes displayed as context for the algorithm


params

Params

json

true

Additional configuration params

This is Mirah internal and is not well documented for external use but is provided as context

sendNotifications

Send Notifications?

boolean

false

Whether notifications will be sent for this algorithm

Providers will receive alerts in their inbox either way but this governs if emails will be sent

startDate

Start Date

datetime

true

The first date for which this algorithm will process data


status

Status

Active | paused | hidden | disabled

false

Is this algorithm active

Paused = algorithm will not trigger but existing alerts will be visible

Hidden = algorithm triggers but alerts will not be generated

Disabled = algorithm will not be triggered and alerts are hidden

workflowNote

Workflow Note

string

false

Additional information surfaced to the provider when the workflow triggers

This can be used to customize instructions etc

Workflow

A set of potential decisions and actions that can be triggered by an event. Generally only one workflow is active per algorithm per episode of care at a time. The highest priority algorithm will take precedence.

Column

Name

Format

Nullable

Description

Notes

id

Id

uuid

false

The Mirah identifier


callToAction

Call To Action

string

false

The top description of the workflow designed to spur action

E.g. “Patient has reported self harm”

defaultPriority

Default Priority

integer

false

The priority of this workflow


description

Description

string

true

An optional description of this workflow


emailBody

Email Body

string

false

The body of the email that is constructed when the workflow triggers


emailSubject

Email Subject

string

false

The subject of the email that is constructed when the workflow triggers


instructions

Instructions

markdown

true

The set of instructions that will be displayed to users when this workflow triggers


notificationMode

Notification Mode

Send_email | no_email

false

Whether emails will be sent


title

Title

string

false

The name of the workflow


createdAt

Created At

datetime

false



updatedAt

Updated At

Datetime

false



Workflow Action

An action that can be taken as part of a workflow, either by the system or as a prompt for a provider. For example - ‘add a patient to a treatment track’, or ‘complete safety planning with a patient’.

Column

Name

Format

Nullable

Description

Notes

id

Id

uuid

false

The Mirah identifier


phase

Phase

Manual | before | after

false

When this action occurs

Manual: this action can only be triggered by a user.


Before: this action will automatically trigger when the workflow starts


After: this action will automatically trigger when the workflow completes

reusable

Reusable

boolean

false

Whether this action can be used multiple times


sideEffectParams

Side Effects

json

true

This is an internal column which includes state on how to trigger parameters


text

Text

string

false

The text to display for this action


createdAt

Created At

datetime

false



updatedAt

Updated At

Datetime

false



workflowId

Workflow Id

uuid

false

The workflow this action is associated with


Triggered Decision Algorithm

This table represents the triggering of an algorithm for a particular patient’s episode of care.

Column

Name

Format

Nullable

Description

Notes

id

Id

uuid

false

The Mirah identifier


context

Context

json

true

An internal blob of information containing useful additional context on how the algorithm was triggered


status

Status

Active | complete | canceled

false

The status of this algorithm


triggeredAt

Triggered At

datetime

false

When the algorithm was triggered


careEpisodeId

Care Episode Id

uuid

false

The episode of care this algorithm has been triggered for


entityDecisionAlgorithmId

Entity Decision Algorithm Id

uuid

false

The algorithm triggered


Triggered Workflow

An active workflow for an episode of care.

Column

Name

Format

Nullable

Description

Notes

id

Id

uuid

false

The Mirah identifier


activeSince

Active Since

datetime

false

When this workflow became active


isCurrentlyTriggered

Currently Triggered

boolean

false

Is this workflow currently active


priority

Priority

integer

false

The priority of this workflow

Only one workflow can be active for the same algorithm at the same time

reasons

Reasons

string

true

A text based summary of why this workflow was triggered

E.g. “The patient scored a 14 on the PHQ-9 which is above the threshold of 7”

snoozedUntil

Snoozed Until

datetime

true

This item is snoozed until this time


status

Status

Active | snoozed | complete | canceled

false

The status of this item


triggeredAt

Triggered At

datetime

false

When this item was triggered


statusUpdatedById

Status Updated By Id

uuid

true

The user id who updated the status last


triggeredDecisionAlgorithmId

Triggered Decision Algorithm Id

uuid

false

The reference to Triggered Algorithm Decision


workflowId

Workflow Id

uuid

false

The reference to Workflow


Triggered Workflow Action

An action for a particular Triggered Workflow that may be taken.

Column

Name

Format

Nullable

Description

Notes

id

Id

uuid

false

The Mirah identifier


status

Status

Available | used

false

The status of the action

Available: this action can be taken

Used: this action has already been taken

createdAt

Created At

Datetime

false



updatedAt

Updated At

Datetime

false



triggeredWorkflowId

Triggered Workflow Id

uuid

false

Which Triggered Workflow this refers to


workflowActionId

Workflow Action Id

uuid

false

Which Workflow Action this refers to


Triggered Workflow Action Log

A log of the actions taken for a workflow.

Column

Name

Format

Nullable

Description

Notes

id

Id

uuid

false

The Mirah identifier


triggeredWorkflowActionId

Triggered Workflow Action Id

uuid

false

The Triggered Workflow Action used


userId

User Id

uuid

false

The user taking the action


usedAt

Used At

Datetime

false

When the action was taken


Provider Notification

A notification sent to an individual provider regarding a triggered workflow.

Column

Name

Format

Nullable

Description

Notes

id

Id

uuid

false

The Mirah identifier


sentAt

Sent At

datetime

true

If a notification was sent, when it was emailed


createdAt

Created At

datetime

false



updatedAt

Updated At

datetime

false



providerId

ProviderId

uuid

false

The provider receiving the notification


triggeredWorkflowId

Triggered Workflow Id

uuid

false

The triggered workflow requiring notification