date_spec and/or duration object depending on the context.
| Field | Description |
|---|---|
| start | A date/time conforming to the ISO8601 specification. |
| end | A date/time conforming to the ISO8601 specification. Can be inferred by supplying a value for start and a duration. |
| operation |
Compares the current date/time with the start and/or end date, depending on the context. Allowed values:
|
date_spec) include the time, the eq, neq, gte and lte operators have not been implemented.
date_spec objects are used to create cron-like expressions relating to time. Each field can contain a single number or a single range. Instead of defaulting to zero, any field not supplied is ignored.
monthdays="1" matches the first day of every month and hours="09-17" matches the hours between 9am and 5pm inclusive). However at this time one cannot specify weekdays="1,2" or weekdays="1-2,5-6" since they contain multiple ranges. Depending on demand, this may be implemented in a future release.
| Field | Description |
|---|---|
| id | A unique name for the date |
| hours | Allowed values: 0-23 |
| monthdays | Allowed values: 0-31 (depending on current month and year) |
| weekdays | Allowed values: 1-7 (1=Monday, 7=Sunday) |
| yeardays | Allowed values: 1-366 (depending on the current year) |
| months | Allowed values: 1-12 |
| weeks | Allowed values: 1-53 (depending on weekyear) |
| years | Year according the Gregorian calendar |
| weekyears |
May differ from Gregorian years.
Eg. "2005-001 Ordinal" is also "2005-01-01 Gregorian" is also "2004-W53-6 Weekly"
|
| moon | Allowed values: 0..7 (0 is new, 4 is full moon). Seriously, you can use this. This was implemented to demonstrate the ease with which new comparisons could be added. |