Reference: Output Fields

Output can be controlled by specifying one of several predefined output_sets or providing a custom output_config as part of your input. See the input fields description for details.

Output Structure

There are several simple (string or number) fields, as well as five array fields. The five array fields

Simple Fields

  • idString, unique identifier for this output (this is auto-generated by the alertness API).
  • modelString, specifies the model used for calculating these output. The alertness-models code implements multiple versions of the Sydney Alertness model, as well as a range of models from the literature.
  • person_IDString, a user provided label for identifying the output, eg. the ID of the person the query relates to.
  • start_timeString, the date-time of the protocol/simulation start.
  • time_formatString, format used for date-time output (Does not apply to the protocol/simulation start_time, which is always a date-time string).
  • duration_formatString, format used for duration output. The duration formats (seconds, minutes, etc) are durations in the specified units relative to the initial start_time.

Structured Fields

  • intervalsArray of objects, time-intervals, defined by start and end times, corresponding to either context (eg. shifts) or sleep/wake and alertness state (eg. sleep).
  • instantsArray of objects, time-instants, corresponding to either context (eg. start of shifts) or sleep/wake and alertness state (eg. end of sleep).
  • interval_samplesArray of objects, measures of sleep/wake and alertness accumulated within a time-interval.
  • instant_samplesArray of objects, irregularly (in time) sampled measures of sleep/wake and alertness.
  • time_seriesArray of objects, regularly (in time) sampled measures of sleep/wake and alertness.
  • durationsArray of objects, duration of time-intervals, either context or sleep/wake and alertness state.

Output Field intervals

An array containing any time-intervals that were requested, either explicitly or implicitly. Each interval object consists of three fields:

  • label
  • start_time
  • end_time

The label field is a string that identifies the interval. For possible intervals, see the Custom Output section of input-fields description. The start_time and end_time fields are arrays of the start and end times, respectively, of each label time-interval of the simulation. The individual start and end times are either numeric values or strings, depending on the time_format that was requested for output.

An excerpt of the intervals section of output:

  "intervals": [
    {
      "label": "pre-post-forced-wake-shift",
      "start_time": [
        "2020-10-03T11:00:00+10:00",
        "2020-10-04T11:00:00+11:00",
        "2020-10-05T11:00:00+11:00"
      ],
      "end_time": [
        "2020-10-03T23:00:00+10:00",
        "2020-10-04T23:00:00+11:00",
        "2020-10-05T23:00:00+11:00"
      ]
    },
    {
      "label": "simulation",
      "start_time": "2020-10-03T00:00:00+10:00",
      "end_time": "2020-10-06T00:00:00+11:00"
    },
    {
      "label": "sleep",
      "start_time": [
        "2020-10-03T00:00:00+10:00",
        "2020-10-03T23:43:00+10:00",
        "2020-10-05T00:33:00+11:00"
      ],
      "end_time": [
        "2020-10-03T08:13:00+10:00",
        "2020-10-04T09:14:00+11:00",
        "2020-10-05T09:01:00+11:00"
      ]
    }
  ]

Output Field instants

An array containing any time-instants that were requested, either explicitly or implicitly. Each instant object consists of three fields:

  • label
  • interval
  • times

The label field is a string that identifies the instant. For possible instants and intervals, see the Custom Output section of the input-fields. The times field is an array of arrays of time-instants. There being one array of time-instants corresponding to the label for each time-interval associated with interval.

An excerpt of the instants section of output:

  "instants": [
    {
      "label": "midnight",
      "interval": "simulation",
      "times": [
        [
          "2020-10-03T00:00:00+10:00",
          "2020-10-04T00:00:00+10:00",
          "2020-10-05T00:00:00+11:00",
          "2020-10-06T00:00:00+11:00"
        ]
      ]
    }
  ]

Output Field interval_samples

An array containing any interval_samples that were requested, either explicitly or implicitly. Each interval-sample object consists of four fields:

  • interval
  • measure
  • statistic
  • values

For possible intervals, measures and statistics, see the Custom Output section of input-fields description.

An excerpt of the interval_samples section of output:

  "interval_samples": [
    {
      "interval": "pre-post-forced-wake-shift",
      "measure": "vPVTL",
      "statistic": "mean-mean",
      "values": 5.7299993733006565
    },
    {
      "interval": "pre-post-forced-wake-shift",
      "measure": "vPVTL",
      "statistic": "max-max",
      "values": 6.74634428427686
    }
  ]

Output Field instant_samples

An array containing any instant_samples that were requested, either explicitly or implicitly. Each instant-sample object consists of four fields:

  • interval
  • measure
  • instant
  • values

An excerpt of the instant_samples section of output:


  "instant_samples": [
    {
      "interval": "simulation",
      "measure": "state-variable-lVLPO",
      "instant": "midnight",
      "values": [
        [
          2.3264,
          2.3339346640307927,
          -4.692685924434832,
          -4.432112168707712
        ]
      ]
    },
    {
      "interval": "simulation",
      "measure": "state-variable-lMA",
      "instant": "midnight",
      "values": [
        [
          -11.6522,
          -11.681728703846497,
          -0.025976123473322982,
          -0.14110460409701286
        ]
      ]
    }
  ]

Output Field time_series

An array containing any time_series that were requested, either explicitly or implicitly. Each time-series object consists of five fields:

  • interval
  • sampling_period
  • measure
  • statistic
  • values

An excerpt of the time_series section of output:

  "time_series": [
    {
      "interval": "sleep",
      "sampling_period": 60,
      "measure": "circadian",
      "statistic": "value",
      "values": [
        [
          0.740048780881732,
          0.44634518299204806,
          0.19555021144243057,
          0.062281590821690574,
          0.013287194768999299,
          0.005944447065421166,
          0.012042883021895164,
          0.02244648767204605
        ],
        [
          0.8045720726488848,
          0.5279369779666445,
          0.2508912124700922,
          0.08760439915871988,
          0.02070034958253225,
          0.0057361023800523185,
          0.009956419714747759,
          0.01907323046534065
        ],
        [
          0.7998087786329336,
          0.5450551828534093,
          0.26991974141222635,
          0.09749752846623,
          0.0241765521525325,
          0.0062295593614111675,
          0.00957370701081314,
          0.01842127490944312
        ]
      ]
    }
  ]

Output Field durations

An array containing any time-durations that were requested, either explicitly or implicitly. Each duration object consists of three fields:

  • interval
  • state
  • values

An excerpt of the durations section of output, where "duration_format": "minutes" was requested:

  "durations": [
    {
      "interval": "simulation",
      "state": "",
      "values": 4260
    },
    {
      "interval": "sleep",
      "state": "",
      "values": [
        493,
        511,
        508
      ]
    }
  ]

REST Fields

query_id String, the unique ID associated with a query.
input Object, represents the complete effective input, that is, the user provided input with all relevant unspecified fields populated by their default values.
result Object, null if the query failed due to input errors and an error object is available.
error Object, null if the query was successful and a result object is available.

Files

Naming of downloads for browser based…

Output only available as links (rather than embedded in json) for REST

Results

inputs_used_<id>.json Json formatted text file with input parameters used in the simulation. This is returned for reference as any fields not explicitly provided as input are assigned default values.
predictions_<id>.json Json formatted text file with all query outputs.
recommendations_<id>.json Json formatted text file with all query outputs.

Invalid Input

inputs_received_<id>.json Json formatted text file, the file uploaded by user. This file is only available/returned when there was an error identified in the uploaded file.
input_errors_<id>.json Json formatted text file, details errors identified in the file uploaded by the user.

Note: If the file uploaded is not structurally valid json, that is, valid json formatted text that also conforms to the json-schema definition of input, then an error is flagged immediately when the user uploads the file and the two files described above are not available.


Figure files

raster_<id>.png

Note: temporarily unavailable.

Raster plot with predicted sleep, core body temperature, and protocol including times of forced wakefulness and light profile.


Alertness Levels

Thresholds for the alertness levels are determined as the alertness-measure values at being awake for 16-17h for transition from green to yellow and 20h for transition from yellow to red. To determine this values each model was run on a sleep deprivation protocol starting in rested state with wake-up at 8:00 in the morning.


model Green Yellow Red
phillips_2010: Wake effort ≤ 0.5 < 0.5 and ≤ 0.9 > 0.9
postnova_2016, sydney_crc_2017: vPVTL ≤ 7.2 < 7.2 and ≤ 15.5 > 15.5
mccauley_2013: vPVTL ≤ 7.1 < 7.1 and ≤ 12.6 > 12.6
rajdev_2013: vPVTL ≤ 4.56 < 4.56 and ≤ 12.5 > 12.5
phillips_2017: vPVTL ≤ 4.57 < 4.57 and ≤ 8.86 > 8.86
ingre_2014: KSS ≤ 5 < 5 and ≤ 6.6 > 6.66

johnson_2004: P

it is a percentage measure

≤ 46 < 46 and ≤ 49 > 49