rsmp_schema 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -177,15 +177,13 @@ objects:
177
177
  During maintenance work the controller might be using dark mode (no output to the signal heads).
178
178
  arguments:
179
179
  intersection:
180
- list: true
181
- type: integer
180
+ type: integer_list
182
181
  description: |-
183
182
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
184
183
  Other value: Intersection number
185
184
  range: "[0-255]"
186
185
  status:
187
- list: true
188
- type: boolean
186
+ type: boolean_list
189
187
  description: |-
190
188
  False: Traffic Light Controller in dark mode
191
189
  True: Traffic Light Controller not in dark mode
@@ -196,15 +194,13 @@ objects:
196
194
  Signal timings is controlled manually by service personnel using the operating panel of the controller.
197
195
  arguments:
198
196
  intersection:
199
- list: true
200
- type: integer
197
+ type: integer_list
201
198
  description: |-
202
199
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
203
200
  Other value: Intersection number
204
201
  range: "[0-255]"
205
202
  status:
206
- list: true
207
- type: boolean
203
+ type: boolean_list
208
204
  description: |-
209
205
  False: Manual control inactive
210
206
  True: Manual control active
@@ -215,15 +211,13 @@ objects:
215
211
  Usually only used in case normal detectors can't be used, e.g. during maintenance work.
216
212
  arguments:
217
213
  intersection:
218
- list: true
219
- type: integer
214
+ type: integer_list
220
215
  description: |-
221
216
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
222
217
  Other value: Intersection number
223
218
  range: "[0-255]"
224
219
  status:
225
- list: true
226
- type: boolean
220
+ type: boolean_list
227
221
  description: |-
228
222
  False: Fixed time control inactive
229
223
  True: Fixed time control active
@@ -234,15 +228,13 @@ objects:
234
228
  Used to determine if the controller is operating independently or operating with other controllers (coordination).
235
229
  arguments:
236
230
  intersection:
237
- list: true
238
- type: integer
231
+ type: integer_list
239
232
  description: |-
240
233
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
241
234
  Other value: Intersection number
242
235
  range: "[0-255]"
243
236
  status:
244
- list: true
245
- type: boolean
237
+ type: boolean_list
246
238
  description: |-
247
239
  False: Isolated control disabled
248
240
  True: Isolated control enabled (Vehicle actuated control or Fixed time control)
@@ -253,15 +245,13 @@ objects:
253
245
  Yellow flash may be used during a serious fault (depending on configuration) or maintenance work. It can also be manually set using M0001.
254
246
  arguments:
255
247
  intersection:
256
- list: true
257
- type: integer
248
+ type: integer_list
258
249
  description: |-
259
250
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
260
251
  Other value: Intersection number
261
252
  range: "[0-255]"
262
253
  status:
263
- list: true
264
- type: boolean
254
+ type: boolean_list
265
255
  description: |-
266
256
  False: Yellow flash disabled
267
257
  True: Yellow flash enabled
@@ -272,15 +262,13 @@ objects:
272
262
  All red can be manually set using the controllers operating panel during maintenance work.
273
263
  arguments:
274
264
  intersection:
275
- list: true
276
- type: integer
265
+ type: integer_list
277
266
  description: |-
278
267
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
279
268
  Other value: Intersection number
280
269
  range: "[0-255]"
281
270
  status:
282
- list: true
283
- type: boolean
271
+ type: boolean_list
284
272
  description: |-
285
273
  False: All red disabled
286
274
  True: All red enabled
@@ -291,15 +279,13 @@ objects:
291
279
  The "police key" is a external control switch present in some controllers that manually switches the controller to either dark mode or yellow flash.
292
280
  arguments:
293
281
  intersection:
294
- list: true
295
- type: integer
282
+ type: integer_list
296
283
  description: |-
297
284
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
298
285
  Other value: Intersection number
299
286
  range: "[0-255]"
300
287
  status:
301
- list: true
302
- type: integer
288
+ type: integer_list
303
289
  values:
304
290
  0: disabled
305
291
  1: dark mode
@@ -367,15 +353,13 @@ objects:
367
353
  Can be used for the management system to check the current control mode (startup, normal, standby, failure, test).
368
354
  arguments:
369
355
  intersection:
370
- list: true
371
- type: integer
356
+ type: integer_list
372
357
  description: |-
373
358
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
374
359
  Other value: Intersection number
375
360
  range: "[0-255]"
376
361
  controlmode:
377
- list: true
378
- type: string
362
+ type: string_list
379
363
  values:
380
364
  startup: Startup mode
381
365
  control: Normal control
@@ -469,29 +453,25 @@ objects:
469
453
  Requires security code 2.
470
454
  arguments:
471
455
  status:
472
- list: true
456
+ type: string_list
473
457
  description: Set operating mode
474
- type: string
475
458
  values:
476
459
  NormalControl: Normal Control
477
460
  YellowFlash: Enables yellow flash
478
461
  Dark: Enables dark mode
479
462
  securityCode:
480
- list: true
463
+ type: string_list
481
464
  description: Security code 2
482
- type: string
483
465
  timeout:
484
- list: true
466
+ type: integer_list
485
467
  description: |-
486
468
  Time in minutes until controller automatically reverts to previous functional position.
487
469
  0=no automatic return
488
- type: integer
489
470
  min: 0
490
471
  max: 1440
491
472
  intersection:
492
- list: true
473
+ type: integer_list
493
474
  description: Intersection number
494
- type: integer
495
475
  min: 0
496
476
  max: 255
497
477
  command: setValue
@@ -177,15 +177,13 @@ objects:
177
177
  During maintenance work the controller might be using dark mode (no output to the signal heads).
178
178
  arguments:
179
179
  intersection:
180
- list: true
181
- type: integer
180
+ type: integer_list
182
181
  description: |-
183
182
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
184
183
  Other value: Intersection number
185
184
  range: "[0-255]"
186
185
  status:
187
- list: true
188
- type: boolean
186
+ type: boolean_list
189
187
  description: |-
190
188
  False: Traffic Light Controller in dark mode
191
189
  True: Traffic Light Controller not in dark mode
@@ -196,15 +194,13 @@ objects:
196
194
  Signal timings is controlled manually by service personnel using the operating panel of the controller.
197
195
  arguments:
198
196
  intersection:
199
- list: true
200
- type: integer
197
+ type: integer_list
201
198
  description: |-
202
199
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
203
200
  Other value: Intersection number
204
201
  range: "[0-255]"
205
202
  status:
206
- list: true
207
- type: boolean
203
+ type: boolean_list
208
204
  description: |-
209
205
  False: Manual control inactive
210
206
  True: Manual control active
@@ -215,15 +211,13 @@ objects:
215
211
  Usually only used in case normal detectors can't be used, e.g. during maintenance work.
216
212
  arguments:
217
213
  intersection:
218
- list: true
219
- type: integer
214
+ type: integer_list
220
215
  description: |-
221
216
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
222
217
  Other value: Intersection number
223
218
  range: "[0-255]"
224
219
  status:
225
- list: true
226
- type: boolean
220
+ type: boolean_list
227
221
  description: |-
228
222
  False: Fixed time control inactive
229
223
  True: Fixed time control active
@@ -234,15 +228,13 @@ objects:
234
228
  Used to determine if the controller is operating independently or operating with other controllers (coordination).
235
229
  arguments:
236
230
  intersection:
237
- list: true
238
- type: integer
231
+ type: integer_list
239
232
  description: |-
240
233
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
241
234
  Other value: Intersection number
242
235
  range: "[0-255]"
243
236
  status:
244
- list: true
245
- type: boolean
237
+ type: boolean_list
246
238
  description: |-
247
239
  False: Isolated control disabled
248
240
  True: Isolated control enabled (Vehicle actuated control or Fixed time control)
@@ -253,15 +245,13 @@ objects:
253
245
  Yellow flash may be used during a serious fault (depending on configuration) or maintenance work. It can also be manually set using M0001.
254
246
  arguments:
255
247
  intersection:
256
- list: true
257
- type: integer
248
+ type: integer_list
258
249
  description: |-
259
250
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
260
251
  Other value: Intersection number
261
252
  range: "[0-255]"
262
253
  status:
263
- list: true
264
- type: boolean
254
+ type: boolean_list
265
255
  description: |-
266
256
  False: Yellow flash disabled
267
257
  True: Yellow flash enabled
@@ -272,15 +262,13 @@ objects:
272
262
  All red can be manually set using the controllers operating panel during maintenance work.
273
263
  arguments:
274
264
  intersection:
275
- list: true
276
- type: integer
265
+ type: integer_list
277
266
  description: |-
278
267
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
279
268
  Other value: Intersection number
280
269
  range: "[0-255]"
281
270
  status:
282
- list: true
283
- type: boolean
271
+ type: boolean_list
284
272
  description: |-
285
273
  False: All red disabled
286
274
  True: All red enabled
@@ -291,15 +279,13 @@ objects:
291
279
  The "police key" is a external control switch present in some controllers that manually switches the controller to either dark mode or yellow flash.
292
280
  arguments:
293
281
  intersection:
294
- list: true
295
- type: integer
282
+ type: integer_list
296
283
  description: |-
297
284
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
298
285
  Other value: Intersection number
299
286
  range: "[0-255]"
300
287
  status:
301
- list: true
302
- type: integer
288
+ type: integer_list
303
289
  values:
304
290
  0: disabled
305
291
  1: dark mode
@@ -367,15 +353,13 @@ objects:
367
353
  Can be used for the management system to check the current control mode (startup, normal, standby, failure, test).
368
354
  arguments:
369
355
  intersection:
370
- list: true
371
- type: integer
356
+ type: integer_list
372
357
  description: |-
373
358
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
374
359
  Other value: Intersection number
375
360
  range: "[0-255]"
376
361
  controlmode:
377
- list: true
378
- type: string
362
+ type: string_list
379
363
  values:
380
364
  startup: Startup mode
381
365
  control: Normal control
@@ -469,29 +453,25 @@ objects:
469
453
  Requires security code 2.
470
454
  arguments:
471
455
  status:
472
- list: true
456
+ type: string_list
473
457
  description: Set operating mode
474
- type: string
475
458
  values:
476
459
  NormalControl: Normal Control
477
460
  YellowFlash: Enables yellow flash
478
461
  Dark: Enables dark mode
479
462
  securityCode:
480
- list: true
463
+ type: string_list
481
464
  description: Security code 2
482
- type: string
483
465
  timeout:
484
- list: true
466
+ type: integer_list
485
467
  description: |-
486
468
  Time in minutes until controller automatically reverts to previous functional position.
487
469
  0=no automatic return
488
- type: integer
489
470
  min: 0
490
471
  max: 1440
491
472
  intersection:
492
- list: true
473
+ type: integer_list
493
474
  description: Intersection number
494
- type: integer
495
475
  min: 0
496
476
  max: 255
497
477
  command: setValue
@@ -88,7 +88,7 @@
88
88
  "description" : "Time in minutes until controller automatically reverts to previous functional position.\n0=no automatic return"
89
89
  },
90
90
  {
91
- "$ref" : "../../../core/3.1.1/definitions.json#/integer_list"
91
+ "$ref" : "../../../core/3.1.1/definitions.json#/integer"
92
92
  }
93
93
  ]
94
94
  }
@@ -55,7 +55,7 @@
55
55
  "allOf" : [
56
56
  {
57
57
  "description" : "local: Local coordination\ncentralized: Coordination with synchronized clock\noff: Coordination not active",
58
- "pattern" : "(?-mix:^(local|centralized|false)(?:,(local|centralized|false))*$)"
58
+ "pattern" : "(?-mix:^(local|centralized|off)(?:,(local|centralized|off))*$)"
59
59
  },
60
60
  {
61
61
  "$ref" : "../../../core/3.1.1/definitions.json#/string_list"
@@ -0,0 +1,93 @@
1
+ {
2
+ "allOf" : [
3
+ {
4
+ "description" : "Signal Priority Status\nThis status can be used to get updates about priority requests. For example, you can use it to know when priority requests are activated or cancelled.\nA list of priorities is returned, referred to by their request ids. The same request id can appear only once.\nAll priorities are included in the list (not only the ones that have changed state since the last update). This is done regardless of whether the status is send in respond to a status request, or due to a status subscription, and also regardless of whether a status subscription uses an update interval, or send-on-change, or both.\nIf you subscribe using an update interval, you’re not guaranteed to get all intermediate states. To guarantee that, send-on-change must be used when subscribing.\nTo understand how this status relates to ETSI/J2735, please see the wiki.\nAll priorities are send on every status update, regardless of whether an interval, or sendOnChange (or both) is used.\nWhen a priority reaches an end states (completed, timeout, rejected, cooldown or stale), it must be sent once on the next status update, then removed from the list.\nA request always starts in the ‘received’ state. The following table shows the possible state transitions:",
5
+ "properties" : {
6
+ "n" : {
7
+ "enum" : [
8
+ "status"
9
+ ]
10
+ }
11
+ }
12
+ },
13
+ {
14
+ "if" : {
15
+ "required" : [
16
+ "n"
17
+ ],
18
+ "properties" : {
19
+ "n" : {
20
+ "const" : "status"
21
+ }
22
+ }
23
+ },
24
+ "then" : {
25
+ "properties" : {
26
+ "s" : {
27
+ "description" : "JSON array of priority status items",
28
+ "type" : "array",
29
+ "items" : {
30
+ "type" : "object",
31
+ "required" : [
32
+ "r",
33
+ "s",
34
+ "t"
35
+ ],
36
+ "additionalProperties" : false,
37
+ "properties" : {
38
+ "r" : {
39
+ "description" : "ID of the priority request",
40
+ "type" : "string"
41
+ },
42
+ "t" : {
43
+ "allOf" : [
44
+ {
45
+ "description" : "Timestamp, indicating when the priority last changed state.\nFormat according to W3C XML dateTime with a resolution of 3 decimal places.\nAll time stamps in UTC. E.g. 2009-10-02T14:34:34.341Z"
46
+ },
47
+ {
48
+ "$ref" : "../../../core/3.1.1/definitions.json#/timestamp"
49
+ }
50
+ ]
51
+ },
52
+ "s" : {
53
+ "description" : "Current status of the priority request",
54
+ "type" : "string",
55
+ "enum" : [
56
+ "activated",
57
+ "completed",
58
+ "cooldown",
59
+ "queued",
60
+ "received",
61
+ "rejected",
62
+ "stale",
63
+ "timeout"
64
+ ]
65
+ },
66
+ "e" : {
67
+ "allOf" : [
68
+ {
69
+ "description" : "(Optional) Estimated green extension provided by the priority, in seconds\nOnly used when state is ‘completed’."
70
+ },
71
+ {
72
+ "$ref" : "../../../core/3.1.1/definitions.json#/integer"
73
+ }
74
+ ]
75
+ },
76
+ "d" : {
77
+ "allOf" : [
78
+ {
79
+ "description" : "(Optional) Estimated red reduction provided by the priority, in seconds\nOnly used when state is ‘completed’."
80
+ },
81
+ {
82
+ "$ref" : "../../../core/3.1.1/definitions.json#/integer"
83
+ }
84
+ ]
85
+ }
86
+ }
87
+ }
88
+ }
89
+ }
90
+ }
91
+ }
92
+ ]
93
+ }
@@ -51,8 +51,14 @@
51
51
  "then" : {
52
52
  "properties" : {
53
53
  "s" : {
54
- "description" : "Number of vehicles.\n- Value expressed as an integer with a range of 0-65535.\n- Contains data from all detector logics. Each detector logic is separated with a comma.\n- The value is set to “-1” if no data could be measured (e.g. detector fault)",
55
- "type" : "string"
54
+ "allOf" : [
55
+ {
56
+ "description" : "Number of vehicles.\n- Value expressed as an integer with a range of 0-65535.\n- Contains data from all detector logics. Each detector logic is separated with a comma.\n- The value is set to “-1” if no data could be measured (e.g. detector fault)"
57
+ },
58
+ {
59
+ "$ref" : "../../../core/3.1.1/definitions.json#/integer_list"
60
+ }
61
+ ]
56
62
  }
57
63
  }
58
64
  }
@@ -51,8 +51,14 @@
51
51
  "then" : {
52
52
  "properties" : {
53
53
  "s" : {
54
- "description" : "Average speed in km/h (integer).\n- Value expressed as an integer with a range of 0-65535.\n- Contains data from all detector logics. Each detector logic is separated with a comma.\n- The value is set to “-1” if no data could be measured (e.g. detector fault)",
55
- "type" : "string"
54
+ "allOf" : [
55
+ {
56
+ "description" : "Average speed in km/h (integer).\n- Value expressed as an integer with a range of 0-65535.\n- Contains data from all detector logics. Each detector logic is separated with a comma.\n- The value is set to “-1” if no data could be measured (e.g. detector fault)"
57
+ },
58
+ {
59
+ "$ref" : "../../../core/3.1.1/definitions.json#/integer_list"
60
+ }
61
+ ]
56
62
  }
57
63
  }
58
64
  }
@@ -51,8 +51,14 @@
51
51
  "then" : {
52
52
  "properties" : {
53
53
  "s" : {
54
- "description" : "Occupancy in percent (%) (0-100)\n- Value expressed as an integer with a range of 0-100.\n- Contains data from all detector logics. Each detector logic is separated with a comma.\n- The value is set to “-1” if no data could be measured (e.g. detector fault)",
55
- "type" : "string"
54
+ "allOf" : [
55
+ {
56
+ "description" : "Occupancy in percent (%) (0-100)\n- Value expressed as an integer with a range of 0-100.\n- Contains data from all detector logics. Each detector logic is separated with a comma.\n- The value is set to “-1” if no data could be measured (e.g. detector fault)"
57
+ },
58
+ {
59
+ "$ref" : "../../../core/3.1.1/definitions.json#/integer_list"
60
+ }
61
+ ]
56
62
  }
57
63
  }
58
64
  }