Time constraints can be defined on the level of each observing run using a textual language. The textual syntax, semantics and graphical visualisation of this language are defined below.
A [from .. to]
time interval in which observations have to take place.
from
and to
are in UT time and must be given in the format YYYY-MM-DD
THH:MM
[1..9]
can be specified which defaults to 1
. from
or to
can be omitted. between(from, to, priority, comment)
before(to, priority, comment)
after(from, priority, comment)
between(2018-10-13T12:00, 2018-10-16T12:00, 3, "a comment")
2018-10-13T12:00 | Absolute Time Interval | 2018-10-16T12:00 |
Prio 3 a comment |
before(2018-10-16T12:00, 2, "a comment")
anytime | Absolute Time Interval | 2018-10-16T12:00 |
Prio 2 a comment |
after(2018-10-13T12:00, 1, "a comment")
2018-10-13T12:00 | Absolute Time Interval | ∞ |
Prio 1 a comment |
Several Absolute Time Constraints can be declared as exclusive (!) alternatives using keyword or
, meaning that observations must be carried out entirely in a single one of the or
'd ATIs.
Any or
'ed combination of before(...)
, after(...)
, between(...)
before(...) or after(...)
between(...) or between(...)
between(...) or before(...) or after(...)
between(2018-10-01T12:00, 2018-10-16T12:00, 1) or after(2018-12-24T12:00, 2)
Alternatives
2018-10-01T12:00 | Absolute Time Interval | 2018-10-16T12:00 |
Prio 1 |
2018-12-24T12:00 | Absolute Time Interval | ∞ |
Prio 2 |
Absolute Time Intervals or Alternatives can be declared as options by comma-separating them, meaning that the requested observation time can be distributed over any combination of these.
between(...), between(...), after(...)
before(...) or after(...), between(...)
between(2018-10-01T12:00, 2018-10-16T12:00, 1) or between(2018-12-24T12:00, 2018-12-28T12:00, 2), after(2019-01-15T12:00, 3)
2018-10-01T12:00 | Absolute Time Interval | 2018-10-16T12:00 |
Prio 1 |
2018-12-24T12:00 | Absolute Time Interval | 018-12-28T12:00 |
Prio 2 |
2019-01-15T12:00 | Absolute Time Interval | ∞ |
Prio 3 |
Observations in a Fixed-Length Time Interval can start anytime, but once started, must finish within the specified length of time in units of days.
within(duration)
within(10)
Fixed-Length Time Interval · 10 days |
A continuous, uninterrupted time interval in which observations must take place, with a duration given in
0.1n .. 1.0n
0.1h .. 10.0h
number[b|m|e](n|h)
3.5h | 3.5h | |
0.7n | 0.7n | |
0.5bn | 0.5n | | first half of a night |
3eh | | 3h | three hours at the end of the night |
0.4mn | | 0.4n | | 0.4n in the middle of the night |
BLOBs can be concatenated with non-observable, relative time intervals in units of days.
[0.5n (2..10) 0.7n]
[2h (2..4) 3h]
[0.5n (2..10) 0.7n]
[2h (2..4) 3h]
BLOBs can be concatenated to specify that they must be executed in the given order without constraint on consecutive nights.
[4h (..) 6h (..) 3.5h]
[4h (..) 6h (..) 3.5h]
BLOBs can be concatenated to specify that they must be executed in the given order on consecutive nights.
[0.5n : 0.7n]
[2h : 3h]
[0.5n : 0.7n]
[2h : 3h]
One BLOB or one Concatenation of BLOBS can be placed inside an Absolute Time Interval or a Fixed-Length Time Interval.
between(2018-10-01T12:00, 2018-10-31T12:00) { [0.5bn (2..10) 0.7en (..) 0.3mn] }
2018-10-01T12:00 | Absolute Time Interval | 2018-10-31T12:00 |
0.5n | 2d .. 10d | 0.7n 0 → ∞ | 0.3n | | ||
Prio 1 |
within(10) { [0.5bn (2..10) 0.7en (..) 0.3mn] }
Fixed-Length Time Interval · 10 days |
0.5n | 2d .. 10d | 0.7n 0 → ∞ | 0.3n | |
A single Fixed-Length Time Interval can be placed inside an Absolute Time Interval.
between(2018-10-01T12:00, 2018-10-31T12:00) { within(10) }
2018-10-01T12:00 | Absolute Time Interval | 2018-10-31T12:00 | ||
| ||||
Prio 1 |
An example of the maximum possible nesting applying the above nesting rules is shown on the right.
between(2018-10-01T12:00, 2018-10-31T12:00) { within(10) { [0.5bn (2..10) 0.7en (..) 0.3mn] } }
2018-10-01T12:00 | Absolute Time Interval | 2018-10-31T12:00 | ||
| ||||
Prio 1 |