Venn LOCI Glossary

Document with most up to date definitions here

Last updated Oct 31st 2019

Organization

Top-level container holding all information about the org, especially list of users and locations

 

Location

Object containing information about a physical location, holds information about safety zones and fixtures inside the location

 

Zone

A localized area in a location containing fixtures - a location may have multiple zones (note: zones are also fixtures, where placards are present)

 

Fixture

A physical object in a zone, i.e. fire pull, fire extinguisher, first aid kit, etc

NOTE: All fixtures have a unique ID, tied to their marker

 

Incident (subtype of Fixture)

A story in the SafetyCheck app that requires an occupant to move to an appropriate fixture NOTE: For data purposes, incidents have a fixture type and are in the fixture table

 

Fixture Type

  1. ZonePlacard (sign)

  2. MusterStation (gathering location)

  3. FirstAidKit

  4. FireExtinguisher

  5. PrimaryExit

  6. SecondaryExit

  7. Phone

 

Incidents

(Stored in the same table as Fixtures?)

  1. Incident_FirstAidKit (green, minor injury)

  2. Incident_FireExtinguisher(orange, minor fire)

  3. Incident_PrimaryExit(red, major fire)

  4. Incident_SecondaryExit(pink, major fire with primary exit blocked)

  5. Incident_Phone(yellow. Serious injury)

 

Marker

(SafetyCheck and physical location front-end apps only)

A physical sticker on the location that indicates incidents and fixtures. Has an Aruco marker generated from the fixture ID.

  1. Incident Markers

    1. Pin drop shaped colour stickers (green, orange, red, pink and yellow) that represent the different types of Incidents found on a Loci training course.

  2. Resolution Markers 

    1. Square shaped black and white stickers that represent the solution to an Incident. Most often these are fixtures, but also include “soft fixtures” like calling for help (eg, Incident_Phone(yellow. Serious injury)).

 

Back-End

Database management and Rest API

 

Admin Portal

Front-end desktop application for organization stakeholders to manage org, users, courses and occupants

 

SafetyCheck Mobile application

Front-end application, receives location data from the back-end API and constructs a course for occupants on-site. (Used to be called the game/safety game)

 

Loci CAPTCHA

"Completely Automated Public Turing test to tell Computers and Humans Apart" 

Front-end application aimed at ticket sales, receives data from the API to construct a short memory game for users. (Not built by the LOCI core team)

Occupant

Occupants are ticket holders, event goers or employees receiving training

Occupants are assigned a list of zones, and save event data from front-end application

 

Occupant Type 

Enumeration of types of occupants, e.g. “Accounting” vs “IT”. Single-valued. Sam will provide values?

 

Occupant Template

Derived from Occupant Type. Time-saving mechanism to avoid repetitive entry based on Occupant Types.

 

Occupant Actions

ActivityStarted -- timestamp, ID (hash or unique increment)

FixtureLocated -- timestamp, fixtureId

TrainingModuleStarted -- timestamp, moduleType (enum)

TrainingModuleCompleted -- timestamp, moduleType (enum)

ActivityEnded -- timestamp, ID (same ID as start)

 

User Role Templates

Users are given individual permissions that can be edited, but these can be added from predefined role templates

Users fall into several general role categories, although new roles can be created with custom permissions for specific needs at any time

 

 • AdminExternal - Can create new organizations (eg Venn or a service partner)

 • AdminInternal - On-site admin, can create new admins (eg high level safety coordinator)

 • UserInternal - Everyday user, responsible for occupants and managing course (eg safety manager)

 • UserExternal - Outside users who want to access anonymized data (eg fire dept)

 • Occupants - Non-account holders who use the front-end and send data back to database. Occupants do not hold accounts, they recieve link or do the test on page

User Permissions

Users are assigned individual permissions based on their role template at time of creation, but this can be updated by an admin

ORGANIZATIONS

View list - AdminExternal

Create - AdminExternal

Read - AdminExternal, AdminInternal

Update - AdminExternal, AdminInternal

Delete - AdminExternal

USERS

View list - AdminExternal, AdminInternal

Create - AdminExternal, AdminInternal

Read - AdminExternal, AdminInternal, UserInternal (self), UserExternal (self)

Update - AdminExternal, AdminInternal, UserInternal (self), UserExternal (self)

Delete - AdminExternal, AdminInternal, UserInternal (self), UserExternal (self)

LOCATIONS

View list -  AdminExternal, AdminInternal, UserInternal, UserExternal, Occupant

Create - AdminExternal, AdminInternal, UserInternal?

Read - AdminExternal, AdminInternal, UserInternal, UserExternal, Occupant

Update - AdminExternal, AdminInternal, UserInternal?

Delete - AdminExternal, AdminInternal, UserInternal?

ASSIGNMENTS

View list - AdminExternal, AdminInternal, UserInternal, UserExternal, Occupant

Create - AdminExternal, AdminInternal, UserInternal

Read - AdminExternal, AdminInternal, UserInternal, UserExternal, Occupant

Update - AdminExternal, AdminInternal, UserInternal

Delete - AdminExternal, AdminInternal, UserInternal

OCCUPANTS

View list - AdminExternal, AdminInternal, UserInternal

View list anonymously - UserExternal

Create - AdminExternal, AdminInternal, UserInternal

Read - AdminExternal, AdminInternal, UserInternla

Read list anonymously - UserExternal

Update - AdminExternal, AdminInternal, UserInternal

Delete - AdminExternal, AdminInternal, UserInternal

REPORTS

View list - AdminExternal, AdminInternal, UserInternal, UserExternal

Create - AdminExternal, AdminInternal, UserInternal

Read - AdminExternal, AdminInternal, UserInternal, UserExternal

Update - AdminExternal, AdminInternal, UserInternal

Delete - AdminExternal, AdminInternal, UserInternal

Assignment

An assignment for occupants. Filters information needed for each front-end app and provides a permission template when adding new occupants

An object that filters location data down to what is necessary for the occupant. The assignment object can be used to create groups for different front-end applications, (i.e. there could be a “Fire Safety Captcha” assignment) as well as for different needs in a location (i.e. there could be a “Welder Safety QR” and “Office Worker QR”

Assignments filter based on FixtureType, as well as a template for occupant

 

Credential Terminology

 

Verifiable Credential

A digital object that lives on a ledger that points to a source of truth in a provable, auditable way and provides queries with information about the current state of the organization and current certificates

 

COR - Certificate of Recognition, a program sponsored by WorkSafe BC that encourages employers to create an occupational health and safety management system that goes beyond the current legal requirements