Skip to content

Core concepts

Access context

An organisation provides a context for user membership and access management. A user can belong to one or more organisations. Roles express responsibilities and access rights within that context, such as administering data or managing ingress.

An organisation can also contain user groups. These groups can receive fine-grained permissions on particular entities, including data, ingress, runners and scheduled operations. Groups also determine the audiences for pages and portals.

Roles and groups are both relevant when planning access: the team needs to decide who manages each part of the application and which resources each audience should be able to use.

Data structures

A table defines a kind of information managed by the application. Its fields describe the values held in each record, and its relationships connect records across tables. The schema supplies this structural definition.

In the equipment example, an Equipment table describes individual assets. A Measurements table contains readings associated with those assets. An Analysis results table holds the outputs of computation. These names and structures are illustrative choices for that application.

Data collection

Ingress brings external data into the platform. With push ingress, a system or user submits data to an endpoint. With pull ingress, NOOSAdmin retrieves data from an external source.

Push endpoints can validate and preprocess incoming data before storage. Pull ingress supports retrieval options such as authenticated calls, scripted fetching, retries and throttling. The two approaches address different ways of obtaining data and can be used within the same application.

Execution

A trigger initiates a configured operation. For example, ingress can fire a system-wide trigger, and a processor can run in response to a newly added record. A schedule supplies a recurring timing rule, such as fetching data every hour.

A data processor is a TypeScript script that works with records. It can read other tables and write results to a table or produce inline output associated with its execution.

A data runner executes external code packaged as a Docker image. Docker packages code with the software it needs to run. A runner has defined inputs and outputs and is invoked by a trigger. Its output can be stored in tables or retained as inline output.

Presentation

A data explorer supports browsing and querying records, including following linked tables. A dashboard presents queried information. A page makes content or functionality available in a user-facing view.

A portal organises pages into a branded experience with its own URL and menu. Portal pages can contain dashboards, explorers, ingress forms and runner-related functionality. Access can be provided to one or more user groups.

The diagram shows conceptual data relationships. Its arrows do not imply that every transition runs automatically.

Loading diagram…

Following a measurement

In the illustrative equipment application, a submitted measurement becomes a record associated with a piece of equipment. An analyst can inspect it alongside other readings. A configured processor could use those readings to calculate a summary and store it in another table. A dashboard could query that summary for presentation in a portal.

These are separate responsibilities: the table defines the information, ingress receives it, processing derives another value, and presentation makes the information useful to an audience. The configured triggers, permissions and page content determine how the particular application operates.

Concept reference

ConceptMeaningDetailed guide
Organisation, role and groupMembership, responsibilities and resource accessOrganisations and access
Table and schemaData structure and its definitionData modelling
Push and pull ingressReceiving or retrieving external dataPush ingress, Pull ingress
Trigger and scheduleEvent-based initiation and recurring timingTriggers and schedules
Processor and runnerScripted processing and external computationProcessors, Runners
Explorer and dashboardRecord exploration and queried presentationsExplorers, Dashboards
Page and portalUser-facing content and its branded organisationPortals