{ "$id": "https://schema.owlboard.info/data-ingress/pushport-ts.schema.json", "$schema": "https://json-schema.org/draft-07/schema#", "title": "PushPortTS", "type": "object", "properties": { "rid": { "type": "string", "description": "Unique ID for the train service (eg. 2026022217610103)", "pattern": "^[0-9]{15}$" }, "uid": { "type": "string", "description": "Schedule ID - The permanent ID for the schedule in the static timetable" }, "ssd": { "type": "string", "format": "date", "description": "Scheduled Start Data, the date the train service started its journey" }, "isDelayed": { "type": "boolean", "description": "Indicated if the message is delayed due to PushPort service disruption" }, "lateReason": { "type": "integer", "description": "Reason the train is late (Maps to textual reason)" }, "cancelReason": { "type": "integer", "description": "Reason the train is cancelled (Maps to textual reason)" }, "locations": { "type": "array", "description": "A list of one or more locations where the train has recorded a movement or forecast", "items": { "$ref": "./schemas/data-ingress/pushport/ts_location.json" } } } }