Compare commits
24 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| e574358ea9 | |||
| 698248487a | |||
| b8eaad4bbd | |||
| a1aeb7e79f | |||
| a734dea17a | |||
| e7f307f243 | |||
| 727641f49f | |||
| b17efa3e5d | |||
| 56aae55f16 | |||
| 91abe29b62 | |||
| c22f3c7230 | |||
| 311ff3798f | |||
| a869935241 | |||
| 6cf6ea8aef | |||
| 50824255f8 | |||
| e1950c0ef3 | |||
| 1a9b68ce41 | |||
| 817baa7d66 | |||
| 072902be59 | |||
| 2452e17faa | |||
| f2a9b7ffdc | |||
| 4ab05ba738 | |||
| 06e6bceb59 | |||
| 315be1af57 |
118
schemas/data-ingress/darwin-data/darwin-association.json
Normal file
118
schemas/data-ingress/darwin-data/darwin-association.json
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
{
|
||||||
|
"$id": "https://schema.owlboard.info/data-ingress/darwin/association.schema.json",
|
||||||
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
||||||
|
"title": "DarwinAssocData",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"service_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Name of the service submitting the update"
|
||||||
|
},
|
||||||
|
"service_id": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "ID of the service sending the message - usually a hostname"
|
||||||
|
},
|
||||||
|
"data_type": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "raw",
|
||||||
|
"description": "The type of data contained in this message object"
|
||||||
|
},
|
||||||
|
"sent_timestamp": {
|
||||||
|
"type": "integer",
|
||||||
|
"description": "Unix timestamp representing the time the message was sent"
|
||||||
|
},
|
||||||
|
"data_kind": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "darwin-association",
|
||||||
|
"description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data"
|
||||||
|
},
|
||||||
|
"payload": {
|
||||||
|
"type": "array",
|
||||||
|
"additionalItems": false,
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": false,
|
||||||
|
"required": [
|
||||||
|
"mr",
|
||||||
|
"ar",
|
||||||
|
"t",
|
||||||
|
"c",
|
||||||
|
"s",
|
||||||
|
"mt",
|
||||||
|
"at"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"mr": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "Main RID",
|
||||||
|
"description": "The main RID of this association object"
|
||||||
|
},
|
||||||
|
"ar": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "Associated RID",
|
||||||
|
"description": "The associated RID of this association object"
|
||||||
|
},
|
||||||
|
"t": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "TIPLOC",
|
||||||
|
"description": "The location at which this association applies"
|
||||||
|
},
|
||||||
|
"c": {
|
||||||
|
"enum": ["JJ", "VV", "LK", "NP"],
|
||||||
|
"name": "Category",
|
||||||
|
"description": "The type of association"
|
||||||
|
},
|
||||||
|
"s": {
|
||||||
|
"type": "string",
|
||||||
|
"format": "date",
|
||||||
|
"name": "SSD",
|
||||||
|
"description": "SSD Generated from the Main RID"
|
||||||
|
},
|
||||||
|
"mt": {
|
||||||
|
"name": "Main Times",
|
||||||
|
"description": "Timings that apply to the main RID",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"wta": { "type": "string" },
|
||||||
|
"wtd": { "type": "string" },
|
||||||
|
"wtp": { "type": "string" },
|
||||||
|
"pta": { "type": "string" },
|
||||||
|
"ptd": { "type": "string" }
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"at": {
|
||||||
|
"name": "Associated Times",
|
||||||
|
"description": "Timings that apply to the associated RID",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"wta": { "type": "string" },
|
||||||
|
"wtd": { "type": "string" },
|
||||||
|
"wtp": { "type": "string" },
|
||||||
|
"pta": { "type": "string" },
|
||||||
|
"ptd": { "type": "string" }
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"can": {
|
||||||
|
"name": "Cancelled",
|
||||||
|
"type": "boolean",
|
||||||
|
"description": "Whether this association is cancelled"
|
||||||
|
},
|
||||||
|
"del": {
|
||||||
|
"name": "Deleted",
|
||||||
|
"type": "boolean",
|
||||||
|
"description": "Whether this association is deleted"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": [
|
||||||
|
"service_name",
|
||||||
|
"service_id",
|
||||||
|
"data_type",
|
||||||
|
"data_kind",
|
||||||
|
"sent_timestamp",
|
||||||
|
"payload"
|
||||||
|
],
|
||||||
|
"additionalProperties": false
|
||||||
|
}
|
||||||
209
schemas/data-ingress/darwin-data/darwin-schedule.json
Normal file
209
schemas/data-ingress/darwin-data/darwin-schedule.json
Normal file
@@ -0,0 +1,209 @@
|
|||||||
|
{
|
||||||
|
"$id": "https://schema.owlboard.info/data-ingress/darwin/schedule.schema.json",
|
||||||
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
||||||
|
"title": "DarwinScheduleData",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"service_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Name of the service submitting the update"
|
||||||
|
},
|
||||||
|
"service_id": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "ID of the service sending the message - usually a hostname"
|
||||||
|
},
|
||||||
|
"data_type": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "raw",
|
||||||
|
"description": "The type of data contained in this message object"
|
||||||
|
},
|
||||||
|
"sent_timestamp": {
|
||||||
|
"type": "integer",
|
||||||
|
"description": "Unix timestamp representing the time the message was sent"
|
||||||
|
},
|
||||||
|
"data_kind": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "darwin-schedule",
|
||||||
|
"description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data"
|
||||||
|
},
|
||||||
|
"payload": {
|
||||||
|
"type": "array",
|
||||||
|
"additionalItems": false,
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": false,
|
||||||
|
"required": [
|
||||||
|
"rid",
|
||||||
|
"uid",
|
||||||
|
"ssd",
|
||||||
|
"tid",
|
||||||
|
"toc",
|
||||||
|
"isp",
|
||||||
|
"isc",
|
||||||
|
"l"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"rid": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Service RID",
|
||||||
|
"maxLength": 16
|
||||||
|
},
|
||||||
|
"uid": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Service UID",
|
||||||
|
"maxLength": 10
|
||||||
|
},
|
||||||
|
"ssd": {
|
||||||
|
"type": "string",
|
||||||
|
"format": "date",
|
||||||
|
"description": "Date on which the service commences"
|
||||||
|
},
|
||||||
|
"tid": {
|
||||||
|
"name": "train_id",
|
||||||
|
"type": "string",
|
||||||
|
"minLength": 4,
|
||||||
|
"maxLength": 4,
|
||||||
|
"description": "The signalling headcode of the service"
|
||||||
|
},
|
||||||
|
"toc": {
|
||||||
|
"type": "string",
|
||||||
|
"minLength": 2,
|
||||||
|
"maxLength": 2,
|
||||||
|
"description": "The two character code for the operating TOC"
|
||||||
|
},
|
||||||
|
"sts": {
|
||||||
|
"type": "string",
|
||||||
|
"maxLength": 1,
|
||||||
|
"name": "status",
|
||||||
|
"description": "The 'status' of the service"
|
||||||
|
},
|
||||||
|
"qt": {
|
||||||
|
"name": "qtrain",
|
||||||
|
"description": "qtrain?",
|
||||||
|
"type": "boolean",
|
||||||
|
"default": false
|
||||||
|
},
|
||||||
|
"d": {
|
||||||
|
"name": "deleted",
|
||||||
|
"description": "Whether the schedule is deleted",
|
||||||
|
"type": "boolean",
|
||||||
|
"default": false
|
||||||
|
},
|
||||||
|
"isp": {
|
||||||
|
"name": "is_passenger",
|
||||||
|
"type": "boolean",
|
||||||
|
"description": "Whether the service is a passenger service"
|
||||||
|
},
|
||||||
|
"isc": {
|
||||||
|
"name": "is_charter",
|
||||||
|
"type": "boolean",
|
||||||
|
"description": "Whether the service is a charter service"
|
||||||
|
},
|
||||||
|
"sid": {
|
||||||
|
"name": "rsid",
|
||||||
|
"type": ["string", "null"],
|
||||||
|
"maxLength": 10
|
||||||
|
},
|
||||||
|
"q": {
|
||||||
|
"name": "qtrain",
|
||||||
|
"description": "True if the service is scheduled but not activated (if not activated, presumed not running)",
|
||||||
|
"type": "boolean",
|
||||||
|
"default": false
|
||||||
|
},
|
||||||
|
"cr": {
|
||||||
|
"name": "cancel_reason",
|
||||||
|
"type": ["integer", "null"],
|
||||||
|
"description": "The reason code for the services cancellation"
|
||||||
|
},
|
||||||
|
"cl": {
|
||||||
|
"name": "cancel_location",
|
||||||
|
"type": "string",
|
||||||
|
"description": "The location at which the service was cancelled"
|
||||||
|
},
|
||||||
|
"l": {
|
||||||
|
"type": "array",
|
||||||
|
"minItems": 2,
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"required": ["tpl", "lr", "s"],
|
||||||
|
"properties": {
|
||||||
|
"tpl": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "The locations TIPLOC",
|
||||||
|
"maxLength": 7,
|
||||||
|
"minLength": 4
|
||||||
|
},
|
||||||
|
"lr": {
|
||||||
|
"name": "loc_role",
|
||||||
|
"description": "The role of the location (Orig, Call, Pass, Dest)",
|
||||||
|
"enum": ["ORIG", "CALL", "PASS", "DEST"]
|
||||||
|
},
|
||||||
|
"s": {
|
||||||
|
"name": "seq",
|
||||||
|
"description": "The sequence in the service at which this location occours",
|
||||||
|
"type": "integer",
|
||||||
|
"minimum": 1,
|
||||||
|
"maximum": 32767
|
||||||
|
},
|
||||||
|
"pta": {
|
||||||
|
"description": "Public timetable arrival",
|
||||||
|
"type": "string",
|
||||||
|
"format": "date-time"
|
||||||
|
},
|
||||||
|
"ptd": {
|
||||||
|
"description": "Public timetable departure",
|
||||||
|
"type": "string",
|
||||||
|
"format": "date-time"
|
||||||
|
},
|
||||||
|
"wta": {
|
||||||
|
"description": "Working timetable arrival",
|
||||||
|
"type": "string",
|
||||||
|
"format": "date-time"
|
||||||
|
},
|
||||||
|
"wtd": {
|
||||||
|
"description": "Working timetable arrival",
|
||||||
|
"type": "string",
|
||||||
|
"format": "date-time"
|
||||||
|
},
|
||||||
|
"wtp": {
|
||||||
|
"description": "Working timetable pass",
|
||||||
|
"type": "string",
|
||||||
|
"format": "date-time"
|
||||||
|
},
|
||||||
|
"c": {
|
||||||
|
"name": "can",
|
||||||
|
"description": "Whether the service is cancelled at this location",
|
||||||
|
"default": false,
|
||||||
|
"type": "boolean"
|
||||||
|
},
|
||||||
|
"a": {
|
||||||
|
"name": "activities",
|
||||||
|
"type": "string",
|
||||||
|
"maxLength": 12
|
||||||
|
},
|
||||||
|
"fid": {
|
||||||
|
"description": "Unique formation indentifier (Maps to formation feed)",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"al": {
|
||||||
|
"name": "avg_loading",
|
||||||
|
"description": "Average loading at this location",
|
||||||
|
"type": "integer"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": [
|
||||||
|
"service_name",
|
||||||
|
"service_id",
|
||||||
|
"data_type",
|
||||||
|
"data_kind",
|
||||||
|
"sent_timestamp",
|
||||||
|
"payload"
|
||||||
|
],
|
||||||
|
"additionalProperties": false
|
||||||
|
}
|
||||||
@@ -0,0 +1,50 @@
|
|||||||
|
{
|
||||||
|
"$id": "https://schema.owlboard.info/data-ingress/darwin/ref/stations.schema.json",
|
||||||
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
||||||
|
"title": "DarwinStationsNames",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"service_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Name of the service submitting the update"
|
||||||
|
},
|
||||||
|
"service_id": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "ID of the service sending the message - usually a hostname"
|
||||||
|
},
|
||||||
|
"data_type": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "raw",
|
||||||
|
"description": "The type of data contained in this message object"
|
||||||
|
},
|
||||||
|
"sent_timestamp": {
|
||||||
|
"type": "integer",
|
||||||
|
"description": "Unix timestamp representing the time the message was sent"
|
||||||
|
},
|
||||||
|
"data_kind": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "ref-darwin-station-names",
|
||||||
|
"description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data"
|
||||||
|
},
|
||||||
|
"payload": {
|
||||||
|
"type": "array",
|
||||||
|
"additionalItems": false,
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"required": ["c", "n"],
|
||||||
|
"properties": {
|
||||||
|
"c": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "CRS of the location"
|
||||||
|
},
|
||||||
|
"n": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "The display name of this location"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": ["service_name", "service_id", "data_type", "data_kind", "sent_timestamp"],
|
||||||
|
"additionalProperties": false
|
||||||
|
}
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
{
|
||||||
|
"$id": "https://schema.owlboard.info/data-ingress/darwin/ref/tiplocs.schema.json",
|
||||||
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
||||||
|
"title": "DarwinTiplocData",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"service_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Name of the service submitting the update"
|
||||||
|
},
|
||||||
|
"service_id": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "ID of the service sending the message - usually a hostname"
|
||||||
|
},
|
||||||
|
"data_type": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "raw",
|
||||||
|
"description": "The type of data contained in this message object"
|
||||||
|
},
|
||||||
|
"sent_timestamp": {
|
||||||
|
"type": "integer",
|
||||||
|
"description": "Unix timestamp representing the time the message was sent"
|
||||||
|
},
|
||||||
|
"data_kind": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "ref-darwin-tiplocs",
|
||||||
|
"description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data"
|
||||||
|
},
|
||||||
|
"payload": {
|
||||||
|
"type": "array",
|
||||||
|
"additionalItems": false,
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"required": ["t", "n"],
|
||||||
|
"properties": {
|
||||||
|
"c": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "CRS of the location"
|
||||||
|
},
|
||||||
|
"t": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "TIPLOC assigned to the location"
|
||||||
|
},
|
||||||
|
"n": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "The display name of this location"
|
||||||
|
},
|
||||||
|
"l": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "The NLC of this location"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": ["service_name", "service_id", "data_type", "data_kind", "sent_timestamp"],
|
||||||
|
"additionalProperties": false
|
||||||
|
}
|
||||||
@@ -0,0 +1,67 @@
|
|||||||
|
{
|
||||||
|
"$id": "https://schema.owlboard.info/data-ingress/darwin/ref/via-text.schema.json",
|
||||||
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
||||||
|
"title": "DarwinViaText",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"service_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Name of the service submitting the update"
|
||||||
|
},
|
||||||
|
"service_id": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "ID of the service sending the message - usually a hostname"
|
||||||
|
},
|
||||||
|
"data_type": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "raw",
|
||||||
|
"description": "The type of data contained in this message object"
|
||||||
|
},
|
||||||
|
"sent_timestamp": {
|
||||||
|
"type": "integer",
|
||||||
|
"description": "Unix timestamp representing the time the message was sent"
|
||||||
|
},
|
||||||
|
"data_kind": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "ref-darwin-via-text",
|
||||||
|
"description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data"
|
||||||
|
},
|
||||||
|
"payload": {
|
||||||
|
"type": "array",
|
||||||
|
"additionalItems": false,
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"required": ["a", "d", "l1", "v"],
|
||||||
|
"properties": {
|
||||||
|
"a": {
|
||||||
|
"name": "at",
|
||||||
|
"type": "string",
|
||||||
|
"description": "The CRS defining where the text should be displayed"
|
||||||
|
},
|
||||||
|
"d": {
|
||||||
|
"name": "destination",
|
||||||
|
"type": "string",
|
||||||
|
"description": "The text should apply to trains to this destination"
|
||||||
|
},
|
||||||
|
"l1": {
|
||||||
|
"name": "location-one",
|
||||||
|
"type": "string",
|
||||||
|
"description": "Message triggered if loc1 & loc2 (if present) are listed as stops"
|
||||||
|
},
|
||||||
|
"l2": {
|
||||||
|
"name": "location-two",
|
||||||
|
"type": "string",
|
||||||
|
"description": "Message triggered if loc1 & loc2 (if present) are listed as stops"
|
||||||
|
},
|
||||||
|
"v": {
|
||||||
|
"name": "viaText",
|
||||||
|
"description": "The text that should be displayed",
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": ["service_name", "service_id", "data_type", "data_kind", "sent_timestamp"],
|
||||||
|
"additionalProperties": false
|
||||||
|
}
|
||||||
@@ -0,0 +1,77 @@
|
|||||||
|
{
|
||||||
|
"$id": "https://schema.owlboard.info/data-ingress/darwin/ref/loading-category.schema.json",
|
||||||
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
||||||
|
"title": "DarwinLoadingCatData",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"service_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Name of the service submitting the update"
|
||||||
|
},
|
||||||
|
"service_id": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "ID of the service sending the message - usually a hostname"
|
||||||
|
},
|
||||||
|
"data_type": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "raw",
|
||||||
|
"description": "The type of data contained in this message object"
|
||||||
|
},
|
||||||
|
"sent_timestamp": {
|
||||||
|
"type": "integer",
|
||||||
|
"description": "Unix timestamp representing the time the message was sent"
|
||||||
|
},
|
||||||
|
"data_kind": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "ref-darwin-loading-category",
|
||||||
|
"description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data"
|
||||||
|
},
|
||||||
|
"payload": {
|
||||||
|
"type": "array",
|
||||||
|
"additionalItems": false,
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"required": ["c", "n"],
|
||||||
|
"properties": {
|
||||||
|
"c": {
|
||||||
|
"name": "code",
|
||||||
|
"type": "string",
|
||||||
|
"description": "The 'code' for the 'category'"
|
||||||
|
},
|
||||||
|
"t": {
|
||||||
|
"name": "typicalDescription",
|
||||||
|
"type": "string",
|
||||||
|
"description": "The 'typicalDescription' of the category"
|
||||||
|
},
|
||||||
|
"e": {
|
||||||
|
"name": "expectedDescription",
|
||||||
|
"type": "string",
|
||||||
|
"description": "The 'expectedDescription' of the category"
|
||||||
|
},
|
||||||
|
"d": {
|
||||||
|
"name": "definition",
|
||||||
|
"description": "The 'definition' of the category",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"n": {
|
||||||
|
"name": "name",
|
||||||
|
"description": "The 'name' of the category",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"i": {
|
||||||
|
"name": "image",
|
||||||
|
"description": "The 'image' for the category",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"o": {
|
||||||
|
"name": "TOC",
|
||||||
|
"description": "The 'toc' for the category",
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": ["service_name", "service_id", "data_type", "data_kind", "sent_timestamp"],
|
||||||
|
"additionalProperties": false
|
||||||
|
}
|
||||||
57
schemas/data-ingress/darwin-reference-data/reason-code.json
Normal file
57
schemas/data-ingress/darwin-reference-data/reason-code.json
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
{
|
||||||
|
"$id": "https://schema.owlboard.info/data-ingress/darwin/ref/reasons.schema.json",
|
||||||
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
||||||
|
"title": "DarwinReasonCodeData",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"service_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Name of the service submitting the update"
|
||||||
|
},
|
||||||
|
"service_id": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "ID of the service sending the message - usually a hostname"
|
||||||
|
},
|
||||||
|
"data_type": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "raw",
|
||||||
|
"description": "The type of data contained in this message object"
|
||||||
|
},
|
||||||
|
"sent_timestamp": {
|
||||||
|
"type": "integer",
|
||||||
|
"description": "Unix timestamp representing the time the message was sent"
|
||||||
|
},
|
||||||
|
"data_kind": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "ref-darwin-reason-code",
|
||||||
|
"description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data"
|
||||||
|
},
|
||||||
|
"payload": {
|
||||||
|
"type": "array",
|
||||||
|
"additionalItems": false,
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"required": ["c"],
|
||||||
|
"properties": {
|
||||||
|
"c": {
|
||||||
|
"type": "integer",
|
||||||
|
"name": "code",
|
||||||
|
"description": "The 'code' that the late/cancel reason maps to"
|
||||||
|
},
|
||||||
|
"lr": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "Late Reason",
|
||||||
|
"description": "The lateReason string for the item"
|
||||||
|
},
|
||||||
|
"cr": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "Cancellation Reason",
|
||||||
|
"description": "The cancelReason string for the item"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": ["service_name", "service_id", "data_type", "data_kind", "sent_timestamp"],
|
||||||
|
"additionalProperties": false
|
||||||
|
}
|
||||||
57
schemas/data-ingress/darwin-reference-data/toc.json
Normal file
57
schemas/data-ingress/darwin-reference-data/toc.json
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
{
|
||||||
|
"$id": "https://schema.owlboard.info/data-ingress/darwin/ref/tocs.schema.json",
|
||||||
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
||||||
|
"title": "DarwinTocData",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"service_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Name of the service submitting the update"
|
||||||
|
},
|
||||||
|
"service_id": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "ID of the service sending the message - usually a hostname"
|
||||||
|
},
|
||||||
|
"data_type": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "raw",
|
||||||
|
"description": "The type of data contained in this message object"
|
||||||
|
},
|
||||||
|
"sent_timestamp": {
|
||||||
|
"type": "integer",
|
||||||
|
"description": "Unix timestamp representing the time the message was sent"
|
||||||
|
},
|
||||||
|
"data_kind": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "ref-darwin-toc",
|
||||||
|
"description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data"
|
||||||
|
},
|
||||||
|
"payload": {
|
||||||
|
"type": "array",
|
||||||
|
"additionalItems": false,
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"required": ["c", "n"],
|
||||||
|
"properties": {
|
||||||
|
"c": {
|
||||||
|
"name": "ATOC Code",
|
||||||
|
"type": "string",
|
||||||
|
"description": "The ATOC 'code' for the TOC"
|
||||||
|
},
|
||||||
|
"n": {
|
||||||
|
"name": "TOC Name",
|
||||||
|
"type": "string",
|
||||||
|
"description": "The name of the TOC"
|
||||||
|
},
|
||||||
|
"u": {
|
||||||
|
"name": "URL",
|
||||||
|
"type": "string",
|
||||||
|
"description": "URL for TOC Information"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": ["service_name", "service_id", "data_type", "data_kind", "sent_timestamp"],
|
||||||
|
"additionalProperties": false
|
||||||
|
}
|
||||||
119
schemas/data-ingress/knowledgebase/kb-stations.json
Normal file
119
schemas/data-ingress/knowledgebase/kb-stations.json
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
{
|
||||||
|
"$id": "https://schema.owlboard.info/data-ingress/knowledgebase/stations.schema.json",
|
||||||
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
||||||
|
"title": "KnowledgebaseStations",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"service_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Name of the service submitting the update"
|
||||||
|
},
|
||||||
|
"service_id": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "ID of the service sending the message - usually a hostname"
|
||||||
|
},
|
||||||
|
"data_type": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "raw",
|
||||||
|
"description": "The type of data contained in this message object"
|
||||||
|
},
|
||||||
|
"sent_timestamp": {
|
||||||
|
"type": "integer",
|
||||||
|
"description": "Unix timestamp representing the time the message was sent"
|
||||||
|
},
|
||||||
|
"data_kind": {
|
||||||
|
"type": "string",
|
||||||
|
"const": "kb-stations"
|
||||||
|
},
|
||||||
|
"payload": {
|
||||||
|
"type": "array",
|
||||||
|
"additionalItems": false,
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"c",
|
||||||
|
"mc",
|
||||||
|
"l",
|
||||||
|
"o",
|
||||||
|
"p",
|
||||||
|
"a",
|
||||||
|
"r",
|
||||||
|
"d"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"c": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "CRS Code",
|
||||||
|
"description": "Station CRS (Primary Key)"
|
||||||
|
},
|
||||||
|
"n": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "NLC Code",
|
||||||
|
"description": "Station NLC Code"
|
||||||
|
},
|
||||||
|
"mc": {
|
||||||
|
"type": "number",
|
||||||
|
"name": "Minimum Connection Time",
|
||||||
|
"description": "The minimum connection time at this station"
|
||||||
|
},
|
||||||
|
"a": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "Address",
|
||||||
|
"description": "The address of the station"
|
||||||
|
},
|
||||||
|
"p": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "Postcode",
|
||||||
|
"description": "The public postcode of the station"
|
||||||
|
},
|
||||||
|
"l": {
|
||||||
|
"type": "object",
|
||||||
|
"name": "Location",
|
||||||
|
"description": "LatLon of the station",
|
||||||
|
"required": ["lt", "ln"],
|
||||||
|
"properties": {
|
||||||
|
"lt": {
|
||||||
|
"type": "number",
|
||||||
|
"name": "Latitude",
|
||||||
|
"description": "Stations Latitude"
|
||||||
|
},
|
||||||
|
"ln": {
|
||||||
|
"type": "number",
|
||||||
|
"name": "Longitude",
|
||||||
|
"description": "Stations Longitude"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"o": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "Operator",
|
||||||
|
"description": "The two character code denoting the stations operator"
|
||||||
|
},
|
||||||
|
"m": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "Map URL"
|
||||||
|
},
|
||||||
|
"r": {
|
||||||
|
"name": "Request",
|
||||||
|
"type": "boolean",
|
||||||
|
"description": "Denotes whether station is Request Stop"
|
||||||
|
},
|
||||||
|
"d": {
|
||||||
|
"name": "Defibrillator",
|
||||||
|
"type": "boolean",
|
||||||
|
"description": "Denotes whether defibrillator is available"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": [
|
||||||
|
"service_name",
|
||||||
|
"service_id",
|
||||||
|
"data_type",
|
||||||
|
"data_kind",
|
||||||
|
"sent_timestamp",
|
||||||
|
"payload"
|
||||||
|
],
|
||||||
|
"additionalProperties": false
|
||||||
|
}
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
},
|
},
|
||||||
"data_type": {
|
"data_type": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": ["file"],
|
"enum": ["file", "raw"],
|
||||||
"description": "The type of data contained in this message object"
|
"description": "The type of data contained in this message object"
|
||||||
},
|
},
|
||||||
"sent_timestamp": {
|
"sent_timestamp": {
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
},
|
},
|
||||||
"data_kind": {
|
"data_kind": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": ["pis", "timetable", "knowledgebase", "darwin_schedule", "darwin_ts", "darwin_ref"],
|
"enum": ["pis", "timetable", "kb-stations", "PushPort16Schedule", "darwin_ts", "darwin_ref"],
|
||||||
"description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data"
|
"description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data"
|
||||||
},
|
},
|
||||||
"payload": {}
|
"payload": {}
|
||||||
|
|||||||
30
schemas/data-ingress/network-rail/networkRailCorpus.json
Normal file
30
schemas/data-ingress/network-rail/networkRailCorpus.json
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"$id": "https://schema.owlboard.info/data-ingress/network-rail/networkRailCorpus.schema.json",
|
||||||
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
||||||
|
"title": "networkRailCorpus",
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"t",
|
||||||
|
"n"
|
||||||
|
],
|
||||||
|
"additionalProperties": false,
|
||||||
|
"properties": {
|
||||||
|
"t": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "TIPLOC",
|
||||||
|
"description": "The TIPLOC Code of the location"
|
||||||
|
},
|
||||||
|
"n": {
|
||||||
|
"type": "string",
|
||||||
|
"name": "Name",
|
||||||
|
"description": "The human readable name of the location"
|
||||||
|
},
|
||||||
|
"nc": {
|
||||||
|
"type": "integer",
|
||||||
|
"name": "NLC",
|
||||||
|
"description": "The national location code of the location",
|
||||||
|
"minimum": 0,
|
||||||
|
"maximum": 999999
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -25,13 +25,6 @@
|
|||||||
},
|
},
|
||||||
"description": "List of 3ALPHA/CRS Codes"
|
"description": "List of 3ALPHA/CRS Codes"
|
||||||
},
|
},
|
||||||
"crsHash": {
|
|
||||||
"type": "string",
|
|
||||||
"minLength": 1,
|
|
||||||
"maxLength": 64,
|
|
||||||
"pattern": "^[0-9]+$",
|
|
||||||
"description": "Stringified 64-bit hash"
|
|
||||||
},
|
|
||||||
"tiplocStops": {
|
"tiplocStops": {
|
||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
@@ -41,14 +34,8 @@
|
|||||||
"pattern": "^[a-zA-Z0-9]+$"
|
"pattern": "^[a-zA-Z0-9]+$"
|
||||||
},
|
},
|
||||||
"description": "List of TIPLOC Codes"
|
"description": "List of TIPLOC Codes"
|
||||||
},
|
|
||||||
"tiplocHash": {
|
|
||||||
"type": "string",
|
|
||||||
"minLength": 1,
|
|
||||||
"maxLength": 64,
|
|
||||||
"pattern": "^[0-9]+$"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": ["code", "toc", "crsStops", "crsHash", "tiplocStops", "tiplocHash"],
|
"required": ["code", "toc", "crsStops", "tiplocStops"],
|
||||||
"additionalProperties": false
|
"additionalProperties": false
|
||||||
}
|
}
|
||||||
@@ -1,241 +0,0 @@
|
|||||||
{
|
|
||||||
"$id": "https://schema.owlboard.info/data-ingress/pushport-schedule.schema.json",
|
|
||||||
"$schema": "https://json-schema.org/draft-07/schema#",
|
|
||||||
"title": "PushPortSchedule",
|
|
||||||
"type": "object",
|
|
||||||
"properties": {
|
|
||||||
"service_name": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Name of the service submitting the update"
|
|
||||||
},
|
|
||||||
"service_id": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "ID of the service sending the message - usually a hostname"
|
|
||||||
},
|
|
||||||
"data_type": {
|
|
||||||
"type": "string",
|
|
||||||
"const": "PushPortSchedule",
|
|
||||||
"description": "The type of data contained in this message object"
|
|
||||||
},
|
|
||||||
"sent_timestamp": {
|
|
||||||
"type": "integer",
|
|
||||||
"description": "Unix timestamp representing the time the message was sent"
|
|
||||||
},
|
|
||||||
"data_kind": {
|
|
||||||
"type": "string",
|
|
||||||
"enum": [
|
|
||||||
"pis",
|
|
||||||
"timetable",
|
|
||||||
"knowledgebase",
|
|
||||||
"darwin_schedule",
|
|
||||||
"darwin_ts",
|
|
||||||
"darwin_ref"
|
|
||||||
],
|
|
||||||
"description": "The data type contained in the message. Currently supported PIS: PIS Data, Timetable: CIF or VSTP Data, Knowledgebase: Station Data"
|
|
||||||
},
|
|
||||||
"payload": {
|
|
||||||
"type": "object",
|
|
||||||
"required": [
|
|
||||||
"rid",
|
|
||||||
"uid",
|
|
||||||
"trainId",
|
|
||||||
"ssd",
|
|
||||||
"toc",
|
|
||||||
"locations"
|
|
||||||
],
|
|
||||||
"properties": {
|
|
||||||
"rid": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Unique service ID"
|
|
||||||
},
|
|
||||||
"uid": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Unique schedule ID - maps to NR CIF"
|
|
||||||
},
|
|
||||||
"trainId": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Train Headcode"
|
|
||||||
},
|
|
||||||
"ssd": {
|
|
||||||
"type": "string",
|
|
||||||
"format": "date",
|
|
||||||
"description": "Schedule Start Date (When the service commences)"
|
|
||||||
},
|
|
||||||
"toc": {
|
|
||||||
"type": "string",
|
|
||||||
"minLength": 2,
|
|
||||||
"maxLength": 2,
|
|
||||||
"description": "TOC Code"
|
|
||||||
},
|
|
||||||
"isPassenger": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "If service is for passengers",
|
|
||||||
"default": true
|
|
||||||
},
|
|
||||||
"isCharter": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "If train is charter service",
|
|
||||||
"default": false
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"type": "string",
|
|
||||||
"enum": [
|
|
||||||
"train",
|
|
||||||
"bus",
|
|
||||||
"ship"
|
|
||||||
],
|
|
||||||
"default": "train"
|
|
||||||
},
|
|
||||||
"isDelayedDelivery": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "If message is sent as part of Darwin service recovery"
|
|
||||||
},
|
|
||||||
"cancelReason": {
|
|
||||||
"type": [
|
|
||||||
"string",
|
|
||||||
"null"
|
|
||||||
],
|
|
||||||
"description": "Reason code for cancellation"
|
|
||||||
},
|
|
||||||
"isDeleted": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Whether schedule should be deleted",
|
|
||||||
"default": false
|
|
||||||
},
|
|
||||||
"locations": {
|
|
||||||
"type": "array",
|
|
||||||
"items": {
|
|
||||||
"type": "object",
|
|
||||||
"required": [
|
|
||||||
"tpl",
|
|
||||||
"seq"
|
|
||||||
],
|
|
||||||
"properties": {
|
|
||||||
"tpl": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "TIPLOC of location"
|
|
||||||
},
|
|
||||||
"seq": {
|
|
||||||
"type": "integer",
|
|
||||||
"description": "The order of the stop for sorting and handling repeated TIPLOCs"
|
|
||||||
},
|
|
||||||
"wta": {
|
|
||||||
"type": [
|
|
||||||
"string",
|
|
||||||
"null"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wtd": {
|
|
||||||
"type": [
|
|
||||||
"string",
|
|
||||||
"null"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wtp": {
|
|
||||||
"type": [
|
|
||||||
"string",
|
|
||||||
"null"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"pta": {
|
|
||||||
"type": [
|
|
||||||
"string",
|
|
||||||
"null"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"ptd": {
|
|
||||||
"type": [
|
|
||||||
"string",
|
|
||||||
"null"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"plat": {
|
|
||||||
"type": [
|
|
||||||
"string",
|
|
||||||
"null"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"isCancelled": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false
|
|
||||||
},
|
|
||||||
"isSupressed": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"description": "Defines whether the service should be hidden to the public"
|
|
||||||
},
|
|
||||||
"activities": {
|
|
||||||
"type": "object",
|
|
||||||
"properties": {
|
|
||||||
"pass": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates that the train does not stop, it only passes this location"
|
|
||||||
},
|
|
||||||
"pickUpDropOff": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates the train stops for passengers to board and alight"
|
|
||||||
},
|
|
||||||
"requestStop": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates if the train stops only when required"
|
|
||||||
},
|
|
||||||
"pickUpOnly": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicated the service picks up passengers only"
|
|
||||||
},
|
|
||||||
"dropOffOnly": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates the service drops off passengers only"
|
|
||||||
},
|
|
||||||
"tokenExchange": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates if the train stops for exhanging a token/staff or similar"
|
|
||||||
},
|
|
||||||
"vehiclesAttached": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates if vehicles are attached at this location"
|
|
||||||
},
|
|
||||||
"vehiclesDetached": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates if vehicles are detached at this location"
|
|
||||||
},
|
|
||||||
"trainCrewChange": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates if train stops to exchange crew at this location"
|
|
||||||
},
|
|
||||||
"changeLocomotive": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates if train stops to exchange locomotive at this location"
|
|
||||||
},
|
|
||||||
"changeEnds": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates if the train reverses or driver changes ends at this location"
|
|
||||||
},
|
|
||||||
"staffStop": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates that the train stops for staff use only"
|
|
||||||
},
|
|
||||||
"unadvertised": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates that the stop is not advertised to the public"
|
|
||||||
},
|
|
||||||
"passesAnotherTrain": {
|
|
||||||
"type": "boolean",
|
|
||||||
"description": "Indicates if the train stops to pass another train on a single line crossing point"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"required": [
|
|
||||||
"service_name",
|
|
||||||
"service_id",
|
|
||||||
"data_type",
|
|
||||||
"sent_timestamp"
|
|
||||||
],
|
|
||||||
"additionalProperties": true
|
|
||||||
}
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
{
|
|
||||||
"$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": "https://schema.owlboard.info/data-ingress/pushport-ts-location.schema.json" }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,51 +0,0 @@
|
|||||||
{
|
|
||||||
"$id": "https://schema.owlboard.info/data-ingress/pushport-ts-location.schema.json",
|
|
||||||
"$schema": "https://json-schema.org/draft-07/schema#",
|
|
||||||
"title": "PushPortTSLocation",
|
|
||||||
"type": "object",
|
|
||||||
"required": ["tpl"],
|
|
||||||
"definitions": {
|
|
||||||
"TSTime": {
|
|
||||||
"type": "object",
|
|
||||||
"properties": {
|
|
||||||
"at": {"type": "string", "description": "Actual time"},
|
|
||||||
"et": {"type": "string", "description": "Estimated time"},
|
|
||||||
"wet": {"type": "string", "description": "Working estimated time"},
|
|
||||||
"src": {"type": "string", "description": "Data source (TD/Darwin/etc)"},
|
|
||||||
"atClass": {"type": "string", "description": "Time source Automatic/Manual"},
|
|
||||||
"delayed": {"type": "boolean", "description": "is train delayed with no estimated time"},
|
|
||||||
"srcInst": {"type": "string", "description": "Source instance (what caused the update)"},
|
|
||||||
"atRemoved": {"type": "boolean", "description": "Whether a previous 'at' was reported in error and should be removed"}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"properties": {
|
|
||||||
"tpl": {"type": "string", "description": "TIPLOC for the location"},
|
|
||||||
"wta": {"type": "string", "description": "Scheduled working time arrival"},
|
|
||||||
"wtd": {"type": "string", "description": "Scheduled working time departure"},
|
|
||||||
"wtp": {"type": "string", "description": "Scheduled working time pass"},
|
|
||||||
"pta": {"type": "string", "description": "Scheduled public arrival time"},
|
|
||||||
"ptd": {"type": "string", "description": "Scheduled public departure time"},
|
|
||||||
"arr": {"$ref": "#/definitions/TSTime"},
|
|
||||||
"dep": {"$ref": "#/definitions/TSTime"},
|
|
||||||
"pass": {"$ref": "#/definitions/TSTime"},
|
|
||||||
"plat": {
|
|
||||||
"type": "object",
|
|
||||||
"description": "Platform data",
|
|
||||||
"properties": {
|
|
||||||
"value": {"type": "string", "description": "Platform number/letter"},
|
|
||||||
"platsrc": {"type": "string", "enum": ["A", "M", "P"], "description": "Source of data Automatic/Manual/Planned"},
|
|
||||||
"platsup": {"type": "boolean", "description": "Is platform suppressed from public display"},
|
|
||||||
"cisPlatsup": {"type": "boolean", "description": "Whether CIS or Darwin Workstation has supressed the platform"},
|
|
||||||
"conf": {"type": "boolean", "description": "Whether platform has been confirmed by the local CIS"}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"suppr": {"type": "boolean", "description": "Whether location is supressed"},
|
|
||||||
"length": {"type": "integer", "description": "Train length (no. of coaches)"},
|
|
||||||
"detachFront": {"type": "boolean","description": "Indicated if coaches will detatch from front"},
|
|
||||||
"detachRead": {"type": "boolean", "description": "Indicates if coaches will detatch from rear"},
|
|
||||||
"attachFront": {"type": "boolean", "description": "Indicates if coaches will attach to front"},
|
|
||||||
"attachRear": {"type": "boolean", "description": "Indicates if coaches will be attached to rear"},
|
|
||||||
"adhoc": {"type": "boolean", "description": "Whether this is an ad-hoc stop"}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user