Schemas / I/O
rig.calendar.event
v0.31.0 · draft 6 fields 1 required
Fields
| Field | Type | Meaning | |
|---|---|---|---|
startDate |
string | required | First day (YYYY-MM-DD) |
endDate |
string | optional | Optional. Last day; absent = startDate |
startMinutes |
integer0 – 1439 | optional | Optional. Start, 0-1439; absent with no endMinutes = all-day |
endMinutes |
integer0 – 1439 | optional | Optional. End, 0-1439. When endMinutes ≤ startMinutes on the same day, the event crosses midnight |
status |
enumconfirmed · tentative · cancelled | optional | Optional. confirmed / tentative / cancelled; absent = confirmed |
organizer |
entity | optional | Optional. Person or organisation |
One timed happening. Format when present.
Times are wall-clock minutes since local midnight in the document's timeZone (see rig.document). Dates are local calendar days. Do not encode iCalendar DTSTART strings with offsets - the envelope time zone is the zone.
startDate is required.
The title is rig.meta.named. A venue is rig.place.address / rig.place.geo on this entity or on a place entity - do not put a location string here. A repeating series is rig.calendar.recurrence on the same entity. People coming are rig.calendar.attendee entities.
A show run (open these days) is rig.calendar.span, not this schema. Opening night is an event; the exhibition dates are a span. Do not copy the same range onto both.
This is not iCalendar VEVENT XML, not VTODO, and not a reminder engine.
JSON Schema
Resolves at https://rig.works/schemas/rig.calendar.event.schema.json —
raw file.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://rig.works/schemas/rig.calendar.event.schema.json",
"title": "rig.calendar.event",
"type": "object",
"additionalProperties": false,
"properties": {
"startDate": {
"type": "string",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
"description": "ISO 8601 calendar date."
},
"endDate": {
"type": "string",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
"description": "ISO 8601 calendar date."
},
"startMinutes": {
"type": "integer",
"minimum": 0,
"maximum": 1439
},
"endMinutes": {
"type": "integer",
"minimum": 0,
"maximum": 1439
},
"status": {
"type": "string",
"enum": [
"confirmed",
"tentative",
"cancelled"
]
},
"organizer": {
"$ref": "./_defs.schema.json#/$defs/entity"
}
},
"required": [
"startDate"
]
}