SATS - Configuration
SATS Access Right Configuration
To access the SATS configuration page in insight the access right should be written to the database via JSON file with help of the migration tool
Access Right | Requires federated login configuration? | Description |
---|---|---|
SATSConfigurationAdministration | No | Access and change SATS administration |
SATS feature flag for client
- To view the SATS tile in the client the feature flag for SATS needed to be enabled for the resource in insight. Navigate to features page by selecting Administration ----> Features in the main menu.
- Click Edit for the SATS feature flag and enable the feature flag for the resource. Click 'Save' button.
Configure SATS version
- Once the user has the access rights, navigate to the SATS configuration page by selecting Administration ----> SATS in the main menu. The following page will open.
-
Add Version info
-
Select Triage method
-
Add dataset for Prioritylist (example given later in documentation, there is implemented a data validation check to ensure the dataset entered is formatted correctly)
-
Add License information
-
Click Save and give a reason
-
Click on Edit dataset link below Triage Method to add the dataset for the Triage
- The configuration page will open
- Add the dataset for the Triage Method (example given later in documentation, there is implemented a data validation check to ensure the dataset entered is formatted correctly)
- Click Save and give a reason
The SATS dataset is now added and can be used in the client
Modify SATS dataset
- Open SATS configuration page in Insight
- Edit the data needed (remember to update version number)
- Click Save and give a reason
Once the client is resynched the updated dataset will be used in the client
JSON structure
The JSON object describing the SATS dataset has the following structure
- Title: Not used today, but have to be filled due to validation rules.
- Version: Not used today, but have to be filled due to validation rules.
- Language: Not used today, but have to be filled due to validation rules.
- SATSClinicalSignsList: List of parameters to display
- Classification: Header to be displayed in list for Clinical Signs
- Name: Title shown in the classification list
- Order: Sort number for the parameter. Sorting goes from low to high.
- SATSClinicalSigns: Table of clinicalsigns to shown for the selected classification
- PriorityLevel: Header for the column (Red, Orange and Yellow are used)
- PriorityType: Value to indicate if it should be shown for Adult or Children
- Text: The text to be shown in the corresponding cell in the table
- Order: Sort order in column
- FootNote: Id of footnote to be indicated (if set to 0, no footnote indication shown)
- SATSFootNotes: Object with footnotes
- Id: Id of footnote linked to FootNote in SATSClinicalSigns table
- Text: The text in the footnote (including styling)
- Type: Linked to PriorityType in SATSClinicalSigns table (Adult/Children)
Valid input SATS
Below is examples of valid input for the different parts of the SATS Json object
Valid SATSClinicalSigns values
Value | Description |
---|---|
Red | Red priority level |
Orange | Orange priority level |
Yellow | Yellow priority level |
Adult | Priority type for adults and children from the age of 15 |
Child | Priority type for children below the age of 15 |
The output could look like this in the client
The JSON object describing the TEWS dataset has the following structure
- TEWSLists: List with TEWS parameters group by agegroups.
- Title: Not used today, but have to be filled due to validationrules.
- Version: Not used today, but have to be filled due to validationrules.
- Language: Not used today, but have to be filled due to validationrules.
- TEWSPriorityType: Value describing the agegroup that this grouping belongs to.
Valid input is shown below. - TimestampHeader: Specifies the text to be displayed in the time selector label in TEWS registrations with this age grouping.
Recommended value: Time - ParametersHeader: Specifies the text to be displayed in the header for the parameters in TEWS registrations with this age grouping.
Recommended value: Physological parameters - Parameters: List of parameters to display for this age grouping
- Id: Identification number for the parameter. Should be unique within the age grouping.
- Title: The name of the parameter. Used for both display and storage of selected parameter values.
- Order: Sort number for the parameter. Sorting goes from low to high.
- Items: List of possible choices for the parameter.
- Id: Identification number for the selection. Should be unique within the parameter.
In the example data set we prepared, we have used the number 50 for the choice "Not registered" for all parameters. - Score: Indicates how many points this choice counts towards the TEWS score.
- Text: The text to display for this selection.
- Order: Sort number for the selection. Sorting goes from low to high.
- Measurement: Object that describes the measurement type and value needed to automatically select this option.
This object is optional, and should not be included if the choice is not to be automatically selected from recorded measurements.- Type: The measurement type to be checked for automatic selection.
Valid values are described below. - Limit: Object that describes the value range this measurement must have for the selection to be selected automatically.
-
LimitType: Describes whether the value range is an interval (from x to y) or a limit value (greater than/less than).
Valid values are "Limit" or "Interval".noteThe value in this field determines how the rest of this Limit object should look.
-
LimitValue: Number describing the limit value for the value range (can be a decimal number; use "." as the decimal point).
Should only be included if the LimitType value is "Limit" -
ComparisonOperator: Describes how a measurement value is to be compared with the limit value.
Valid values are described below.
Should only be included if the LimitType value is "Limit" -
LowerLimit: The lower limit number for this value range (can be a decimal number; use "." as the decimal point).
Should only be included if the LimitType value is "Interval" -
UpperLimit: The upper limit number for this value range (can be a decimal number; use "." as the decimal point).
Should only be included if the LimitType value is "Interval"
-
- Type: The measurement type to be checked for automatic selection.
- Id: Identification number for the selection. Should be unique within the parameter.
Valid input TEWS
Below is examples of valid input for the different parts of the TEWS Json object
Valid TEWSPriorityType values
Below is an overview of valid age group values in release 21.8.
In the future, the set-up of valid age groups will be more dynamic to support more localized versions of SATS - TEWS.
Value | Description |
---|---|
Adult | Adults and children from the age of 15 |
Youth | Youth 13 - 14 years |
Child712 | Children 7 - 12 years |
Child46 | Children 4 - 6 years |
Child13 | Children 1 - 3 years |
Baby | Baby 1 - 12 months |
Newborn | Newborn <1 month |
Valid Measurement Type values
Value | Description |
---|---|
RespiratoryRate | Respiratory rate |
SpO2WithO2 | SpO2 with O2 |
SpO2WithoutO2 | SpO2 without O2 |
Pulse | Pulse |
SystolicBloodPressure | Systolic blood pressure |
Temperature | Temperature |
Valid ComparisonOperator values
Value | Description |
---|---|
LessThan | Less than (<) |
LessThanOrEqual | Less than or equal to (<=) |
Equal | Equal to (=) |
GreaterThan | Bigger than (>) |
GreaterThanOrEqual | Bigger than or equal to (>=) |
Examples
"Complete" SATS example
{
"Title": "SATS Norge 4.0",
"Version": "4.0",
"Language": "NO",
"SATSClinicalSignsList": [
{
"Classification": "A",
"Name": "Luftveier",
"Order": 0,
"SATSClinicalSigns": [
{
"PriorityLevel": "Red",
"PriorityType": "Adult",
"Text": "**Allergisk reaksjon;** akutt, **OG** stridor/dyspnoe eller hypotensiv/tachykard",
"Order": 1,
"FootNote": 0
},
{
"PriorityLevel": "Red",
"PriorityType": "Child",
"Text": "**Allergisk reaksjon;** akutt, **OG** stridor/dyspnoe eller hypotensiv/tachykard",
"Order": 0,
"FootNote": 0
}
]
}
],
"SATSFootNotes": [
{
"Id": 1,
"Text": "<!DOCTYPE html> <html> <head> <style> html, body { width: 800px; height: auto; margin: 0; padding: 0; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } </style> <meta charset=' UTF-8' /> <meta name=' viewport' content=' width=device-width, initial-scale=1.0' /> <title>Bliksund</title> </head> <body> <table style=' border-collapse: collapse; width: 100%; border: solid 1px black' > <tbody> <tr> <td style=' background-color: #dc3546;color: white; width: 33.3333%; vertical-align: top; padding:0em 0.5em;' > <p> <b>TRUET LUFTVEI/ASS. VENTILASJON/INTUBERT</b> og/eller <b>TUNGPUST</b> med en eller flere av følgende: </p> <ul> <li>Uttalt hvile-/taledyspnoe (kan ikke snakke)</li> <li>Cyanose</li> <li>Nedsatt bevissthet</li> <li>Surklende respirasjon og evt. skummende ekspektorat</li> <li>Svært sliten/utmattet pasient</li> <li>Liten/ingen effekt av behandling</li> </ul> </td> <td style=' background-color: #f7a74a; color: black; width: 33.3333%; vertical-align: top; padding:0em 0.5em;' > <p><b>AKUTT TUNGPUST</b></p> <ul> <li> Endring i respirasjon i løpet av minutter eller timer fra normal/kronisk tilstand </li> <li>Taledyspnoe</li> <li>Pipelyder</li> <li>Bruk av respiratorisk hjelpemuskulatur</li> </ul> </td> <td style=' background-color: #ffef75; color: black; width: 33.3333%; vertical-align: top; padding:0em 0.5em;' > <p><b>MODERAT TUNGPUST</b></p> <ul> <li>Anstrengelsesdyspnoe</li> <li> Kan snakke hele setninger, ingen bruk av respiratorisk hjelpemuskulatur </li> <li>Subjektiv følelse av tung pust</li> </ul> </td> </tr> </tbody> </table> </body> </html>",
"Type": "Adult"
},
{
"Id": 1,
"Text": "<!DOCTYPE html> <html> <head> <style> html, body { width: 800px; height: auto; margin: 0; padding: 0; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } </style> <meta charset=' UTF-8' /> <meta name=' viewport' content=' width=device-width, initial-scale=1.0' /> <title>Bliksund</title> </head> <body> <table style=' border-collapse: collapse; width: 100%; border: solid 1px black' > <tbody> <tr> <td style=' background-color: #dc3546;color: white; width: 33.3333%; vertical-align: top; padding:0em 0.5em;' > <p> <b>TRUET LUFTVEI/ASS. VENTILASJON/INTUBERT</b> og/eller <b>TUNGPUST;</b> svært anstrengt/obstruktiv og en eller flere av:</p> <ul> <li> Apné (pustestans-episoder) i sykehistorien</li> <li> Kraftig inspiratorisk og/eller ekspiratorisk stridor</li> <li> Obstruktiv med betydelig forsert ekspirium (hvesende, langtrukket utpust)</li> <li> Kraftige inndragninger eller betydelig bruk av hjelpemuskulatur</li> <li> Sliten og utmattet, orker ikke snakke, skrike eller gjøre motstand</li> <li> Taledyspnoe</li> </ul> </td> <td style=' background-color: #ffef75; color: black; width: 33.3333%; vertical-align: top; padding:0em 0.5em;' > <p><b>TUNGPUST; LETT ANSTRENGT/OBSTRUKTIV</b></p> <ul> <li>Svak inspiratorisk stridor</li> <li> Stønnende eller obstruktiv med lett forsert ekspirium (hvesende, langtrukket utpust)</li> <li>Lette inndragninger</li> <li>God allmentilstand, gjør motstand</li> </ul> </td> </tr> </tbody> </table> </body> </html>",
"Type": "Child"
}
]
}
JSON rootobject structure TEWS
{
"TEWSLists": []
}
Agegrouping object
{
"Title": "TEWS, voksne og barn fra fylte 15 år",
"Version": "4.0",
"Language": "NO",
"TEWSPriorityType": "Adult",
"TimestampHeader": "Tidspunkt",
"ParametersHeader": "Fysiologiske parametere",
"Parameters": []
}
Parameter object
{
"Id": 1,
"Title": "Resp. frekv",
"Items": []
}
Choice object without possibility of automatic measurement
{
"Id": 1,
"Score": 0,
"Text": "Ja",
"Order": 0
}
Definition of automatic measurement - Limit Value
{
"Type": "RespiratoryRate",
"Limit": {
"LimitType": "Limit",
"LimitValue": 9,
"ComparisonOperator": "LessThan"
}
}
If this measurement is defined for a choice, this choice will be selected automatically if the most recent Respiration rate measurement before the TEWS time has a value less than 9. The LimitValue number can have decimals; e.g. 9.1
Definition of automatic measurement - Interval
{
"Type": "RespiratoryRate",
"Limit": {
"LimitType": "Interval",
"LowerLimit": 9,
"UpperLimit": 11
}
}
If this measurement is defined for a choice, this choice will be selected automatically if the most recent Respiration rate measurement before the TEWS time has the value 9, 10, or 11. The comparison for lower and upper limits in an interval is >= and <=.
"Complete" TEWS example
{
"TEWSLists": [
{
"Title": "TEWS, voksne og barn fra fylte 15 år",
"Version": "Eksempel v1",
"Language": "NO",
"TEWSPriorityType": "Adult",
"TimestampHeader": "Tidspunkt",
"ParametersHeader": "Fysiologiske parametere",
"Parameters": [
{
"Id": 1,
"Title": "Resp.frekv",
"Order": 0,
"Items": [
{
"Id": 1,
"Score": 2,
"Text": "<9",
"Order": 0,
"Measurement": {
"Type": "RespiratoryRate",
"Limit": {
"LimitType": "Limit",
"LimitValue": 9,
"ComparisonOperator": "LessThan"
}
}
},
{
"Id": 2,
"Score": 0,
"Text": "9-29",
"Order": 1,
"Measurement": {
"Type": "RespiratoryRate",
"Limit": {
"LimitType": "Interval",
"LowerLimit": 9,
"UpperLimit": 29
}
}
},
{
"Id": 5,
"Score": 3,
"Text": "≥30",
"Measurement": {
"Type": "RespiratoryRate",
"Limit": {
"LimitType": "Limit",
"LimitValue": 30,
"ComparisonOperator": "GreaterThanOrEqual"
}
}
}
]
},
{
"Id": 2,
"Title": "Skade",
"Order": 1,
"Items": [
{
"Id": 1,
"Score": 0,
"Text": "Nei",
"Order": 0
},
{
"Id": 3,
"Score": 1,
"Text": "Ja",
"Order": 1
},
{
"Id": 3,
"Score": 2,
"Text": "Usikkert",
"Order": 2
}
]
}
]
},
{
"Title": "TEWS, ungdom 13 - 14 år",
"Version": "Eksempel v1",
"Language": "NO",
"TEWSPriorityType": "Youth",
"TimeStampHeader": "Tidspunkt",
"ParametersHeader": "Fysiologiske parametere",
"Parameters": [
{
"Id": 1,
"Title": "Puls",
"Order": 0,
"Items": [
{
"Id": 1,
"Score": 3,
"Text": "<45",
"Order": 0,
"Measurement": {
"Type": "Pulse",
"Limit": {
"LimitType": "Limit",
"LimitValue": 45,
"ComparisonOperator": "LessThan"
}
}
},
{
"Id": 2,
"Score": 0,
"Text": "45-95",
"Order": 1,
"Measurement": {
"Type": "Pulse",
"Limit": {
"LimitType": "Interval",
"LowerLimit": 45,
"UpperLimit": 95
}
}
},
{
"Id": 3,
"Score": 2,
"Text": "≥96",
"Order": 2,
"Measurement": {
"Type": "Pulse",
"Limit": {
"LimitType": "Limit",
"LimitValue": 96,
"ComparisonOperator": "GreaterThanOrEqual"
}
}
}
]
},
{
"Id": 2,
"Title": "Skade",
"Order": 1,
"Items": [
{
"Id": 1,
"Score": 0,
"Text": "Nei",
"Order": 0
},
{
"Id": 3,
"Score": 1,
"Text": "Ja",
"Order": 1
},
{
"Id": 3,
"Score": 2,
"Text": "Usikkert",
"Order": 2
}
]
}
]
}
]
}