rsmp_schema 0.1.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/lib/rsmp_schema/convert/export/json_schema.rb +96 -54
  4. data/lib/rsmp_schema/schema.rb +80 -24
  5. data/lib/rsmp_schema/version.rb +1 -1
  6. data/lib/rsmp_schema.rb +2 -0
  7. data/schemas/tlc/1.0.10/sxl.yaml +20 -65
  8. data/schemas/tlc/1.0.13/sxl.yaml +20 -80
  9. data/schemas/tlc/1.0.14/sxl.yaml +20 -80
  10. data/schemas/tlc/1.0.15/sxl.yaml +20 -87
  11. data/schemas/tlc/1.0.7/sxl.yaml +20 -61
  12. data/schemas/tlc/1.0.8/sxl.yaml +20 -65
  13. data/schemas/tlc/1.0.9/sxl.yaml +20 -65
  14. data/schemas/tlc/1.1/alarms/A0303.json +111 -0
  15. data/schemas/tlc/1.1/alarms/A0304.json +137 -0
  16. data/schemas/tlc/1.1/alarms/alarms.json +33 -1
  17. data/schemas/tlc/1.1/commands/M0001.json +2 -2
  18. data/schemas/tlc/1.1/commands/M0005.json +1 -1
  19. data/schemas/tlc/1.1/commands/M0013.json +1 -1
  20. data/schemas/tlc/1.1/commands/M0019.json +1 -1
  21. data/schemas/tlc/1.1/commands/M0022.json +335 -0
  22. data/schemas/tlc/1.1/commands/M0023.json +64 -0
  23. data/schemas/tlc/1.1/commands/commands.json +32 -0
  24. data/schemas/tlc/1.1/statuses/S0001.json +3 -3
  25. data/schemas/tlc/1.1/statuses/S0002.json +1 -1
  26. data/schemas/tlc/1.1/statuses/S0003.json +1 -1
  27. data/schemas/tlc/1.1/statuses/S0004.json +1 -1
  28. data/schemas/tlc/1.1/statuses/S0007.json +1 -1
  29. data/schemas/tlc/1.1/statuses/S0008.json +1 -1
  30. data/schemas/tlc/1.1/statuses/S0009.json +1 -1
  31. data/schemas/tlc/1.1/statuses/S0010.json +1 -1
  32. data/schemas/tlc/1.1/statuses/S0011.json +1 -1
  33. data/schemas/tlc/1.1/statuses/S0012.json +1 -1
  34. data/schemas/tlc/1.1/statuses/S0013.json +2 -2
  35. data/schemas/tlc/1.1/statuses/S0020.json +1 -1
  36. data/schemas/tlc/1.1/statuses/S0032.json +96 -0
  37. data/schemas/tlc/1.1/statuses/S0033.json +93 -0
  38. data/schemas/tlc/1.1/statuses/S0034.json +40 -0
  39. data/schemas/tlc/1.1/statuses/S0205.json +8 -2
  40. data/schemas/tlc/1.1/statuses/S0206.json +8 -2
  41. data/schemas/tlc/1.1/statuses/S0207.json +8 -2
  42. data/schemas/tlc/1.1/statuses/S0208.json +72 -18
  43. data/schemas/tlc/1.1/statuses/statuses.json +48 -0
  44. data/schemas/tlc/1.1/sxl.yaml +596 -241
  45. metadata +9 -2
@@ -103,7 +103,6 @@ objects:
103
103
  signalgroupstatus:
104
104
  type: string
105
105
  description: Signal group status as text field
106
- range: "[text]"
107
106
  pattern: "^[a-hA-G0-9N-P]*$"
108
107
  cyclecounter:
109
108
  type: integer
@@ -126,7 +125,6 @@ objects:
126
125
  detectorlogicstatus:
127
126
  type: string
128
127
  description: Detector logic status as text field
129
- range: "[text]"
130
128
  S0003:
131
129
  description: |-
132
130
  Input status.
@@ -136,11 +134,9 @@ objects:
136
134
  inputstatus:
137
135
  type: string
138
136
  description: Input status as text field
139
- range: "[text]"
140
137
  extendedinputstatus:
141
138
  type: string
142
139
  description: Extended input status as text field
143
- range: "[text]"
144
140
  S0004:
145
141
  description: |-
146
142
  Output status.
@@ -150,11 +146,9 @@ objects:
150
146
  outputstatus:
151
147
  type: string
152
148
  description: Output status as text field
153
- range: "[text]"
154
149
  extendedoutputstatus:
155
150
  type: string
156
151
  description: Extended output status as text field
157
- range: "[text]"
158
152
  S0005:
159
153
  description: |-
160
154
  Traffic Light Controller starting.
@@ -189,15 +183,13 @@ objects:
189
183
  During maintenance work the controller might be using dark mode (no output to the signal heads).
190
184
  arguments:
191
185
  intersection:
192
- list: true
193
- type: integer
186
+ type: integer_list
194
187
  description: |-
195
188
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
196
189
  Other value: Intersection number
197
190
  range: "[0-255]"
198
191
  status:
199
- list: true
200
- type: boolean
192
+ type: boolean_list
201
193
  description: |-
202
194
  False: Traffic Light Controller in dark mode
203
195
  True: Traffic Light Controller not in dark mode
@@ -208,15 +200,13 @@ objects:
208
200
  Signal timings is controlled manually by service personnel using the operating panel of the controller.
209
201
  arguments:
210
202
  intersection:
211
- list: true
212
- type: integer
203
+ type: integer_list
213
204
  description: |-
214
205
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
215
206
  Other value: Intersection number
216
207
  range: "[0-255]"
217
208
  status:
218
- list: true
219
- type: boolean
209
+ type: boolean_list
220
210
  description: |-
221
211
  False: Manual control inactive
222
212
  True: Manual control active
@@ -227,15 +217,13 @@ objects:
227
217
  Usually only used in case normal detectors can't be used, e.g. during maintenance work.
228
218
  arguments:
229
219
  intersection:
230
- list: true
231
- type: integer
220
+ type: integer_list
232
221
  description: |-
233
222
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
234
223
  Other value: Intersection number
235
224
  range: "[0-255]"
236
225
  status:
237
- list: true
238
- type: boolean
226
+ type: boolean_list
239
227
  description: |-
240
228
  False: Fixed time control inactive
241
229
  True: Fixed time control active
@@ -246,15 +234,13 @@ objects:
246
234
  Used to determine if the controller is operating independently or operating with other controllers (coordination).
247
235
  arguments:
248
236
  intersection:
249
- list: true
250
- type: integer
237
+ type: integer_list
251
238
  description: |-
252
239
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
253
240
  Other value: Intersection number
254
241
  range: "[0-255]"
255
242
  status:
256
- list: true
257
- type: boolean
243
+ type: boolean_list
258
244
  description: |-
259
245
  False: Isolated control disabled
260
246
  True: Isolated control enabled (Vehicle actuated control or Fixed time control)
@@ -265,15 +251,13 @@ objects:
265
251
  Yellow flash may be used during a serious fault (depending on configuration) or maintenance work. It can also be manually set using M0001.
266
252
  arguments:
267
253
  intersection:
268
- list: true
269
- type: integer
254
+ type: integer_list
270
255
  description: |-
271
256
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
272
257
  Other value: Intersection number
273
258
  range: "[0-255]"
274
259
  status:
275
- list: true
276
- type: boolean
260
+ type: boolean_list
277
261
  description: |-
278
262
  False: Yellow flash disabled
279
263
  True: Yellow flash enabled
@@ -284,15 +268,13 @@ objects:
284
268
  All red can be manually set using the controllers operating panel during maintenance work.
285
269
  arguments:
286
270
  intersection:
287
- list: true
288
- type: integer
271
+ type: integer_list
289
272
  description: |-
290
273
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
291
274
  Other value: Intersection number
292
275
  range: "[0-255]"
293
276
  status:
294
- list: true
295
- type: boolean
277
+ type: boolean_list
296
278
  description: |-
297
279
  False: All red disabled
298
280
  True: All red enabled
@@ -303,15 +285,13 @@ objects:
303
285
  The "police key" is a external control switch present in some controllers that manually switches the controller to either dark mode or yellow flash.
304
286
  arguments:
305
287
  intersection:
306
- list: true
307
- type: integer
288
+ type: integer_list
308
289
  description: |-
309
290
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
310
291
  Other value: Intersection number
311
292
  range: "[0-255]"
312
293
  status:
313
- list: true
314
- type: integer
294
+ type: integer_list
315
295
  values:
316
296
  0: disabled
317
297
  1: dark mode
@@ -379,15 +359,13 @@ objects:
379
359
  Can be used for the management system to check the current control mode (startup, normal, standby, failure, test).
380
360
  arguments:
381
361
  intersection:
382
- list: true
383
- type: integer
362
+ type: integer_list
384
363
  description: |-
385
364
  0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
386
365
  Other value: Intersection number
387
366
  range: "[0-255]"
388
367
  controlmode:
389
- list: true
390
- type: string
368
+ type: string_list
391
369
  values:
392
370
  startup: Startup mode
393
371
  control: Normal control
@@ -403,7 +381,6 @@ objects:
403
381
  detectorlogics:
404
382
  type: string
405
383
  description: Manually set detector logics (1/0) as text field
406
- range: "[text]"
407
384
  pattern: "^[01]*$"
408
385
  S0022:
409
386
  description: |-
@@ -414,7 +391,6 @@ objects:
414
391
  status:
415
392
  type: string
416
393
  description: Comma separated list of configured time plans. E.g. "1,2,3,5"
417
- range: "[text]"
418
394
  S0023:
419
395
  description: |-
420
396
  Dynamic bands.
@@ -434,7 +410,6 @@ objects:
434
410
 
435
411
  E.g.
436
412
  pp-dd-ee,pp-dd-ee
437
- range: "[text]"
438
413
  pattern: "(^$)|(^(?<item>(\\d{1,2})\\-\\d{1,2}-\\d{1,2})(,\\g<item>)*$)"
439
414
  S0024:
440
415
  description: |-
@@ -454,7 +429,6 @@ objects:
454
429
 
455
430
  E.g.
456
431
  pp-tt,pp-tt
457
- range: "[text]"
458
432
  pattern: "^(\\d{1,2}\\-\\d{1,2})(?:,(\\d{1,2}\\-\\d{1,2}))*$"
459
433
  S0026:
460
434
  description: |-
@@ -482,7 +456,6 @@ objects:
482
456
  Each segment is separated with a comma
483
457
  E.g.
484
458
  d-t,d-t
485
- range: "[text]"
486
459
  S0027:
487
460
  description: |-
488
461
  Time tables.
@@ -511,7 +484,6 @@ objects:
511
484
 
512
485
  E.g.
513
486
  t-o-h-m,t-o-h-m
514
- range: "[text]"
515
487
  S0028:
516
488
  description: |-
517
489
  Cycle time.
@@ -530,7 +502,6 @@ objects:
530
502
 
531
503
  E.g.
532
504
  pp-tt,pp-tt
533
- range: "[text]"
534
505
  S0029:
535
506
  description: |-
536
507
  Forced input status.
@@ -540,7 +511,6 @@ objects:
540
511
  status:
541
512
  type: string
542
513
  description: Forced input status as text field
543
- range: "[text]"
544
514
  S0030:
545
515
  description: |-
546
516
  Forced output status.
@@ -550,7 +520,6 @@ objects:
550
520
  status:
551
521
  type: string
552
522
  description: Forced output status as text field
553
- range: "[text]"
554
523
  S0031:
555
524
  description: |-
556
525
  Trigger level sensitivity for loop detector.
@@ -564,7 +533,6 @@ objects:
564
533
  dd=loop detector number
565
534
  ss=sensitivity value
566
535
  Each loop detector is separated with a comma. E.g.dd-ss,dd-ss.
567
- range: "[text]"
568
536
  S0091:
569
537
  description: |-
570
538
  Operator logged in/out OP-panel.
@@ -603,7 +571,6 @@ objects:
603
571
  status:
604
572
  type: string
605
573
  description: Manufacturer, product name and version of traffic light controller
606
- range: "[text]"
607
574
  S0096:
608
575
  description: |-
609
576
  Current date and time
@@ -662,7 +629,6 @@ objects:
662
629
 
663
630
  Note:
664
631
  - The checksum should be calculated using the same data as used in S0098
665
- range: "[text]"
666
632
  timestamp:
667
633
  type: timestamp
668
634
  description: Time stamp of the checksum. Format according to W3C XML dateTime
@@ -705,7 +671,6 @@ objects:
705
671
  description: |-
706
672
  Version information of the configuration. Contains basic information such as controller id, changes to config and other information.
707
673
  The format is not specified in detail.
708
- range: "[text]"
709
674
  S0205:
710
675
  description: |-
711
676
  Traffic Counting: Number of vehicles.
@@ -852,29 +817,25 @@ objects:
852
817
  Requires security code 2.
853
818
  arguments:
854
819
  status:
855
- list: true
820
+ type: string_list
856
821
  description: Set operating mode
857
- type: string
858
822
  values:
859
823
  NormalControl: Normal Control
860
824
  YellowFlash: Enables yellow flash
861
825
  Dark: Enables dark mode
862
826
  securityCode:
863
- list: true
827
+ type: string_list
864
828
  description: Security code 2
865
- type: string
866
829
  timeout:
867
- list: true
830
+ type: integer_list
868
831
  description: |-
869
832
  Time in minutes until controller automatically reverts to previous functional position.
870
833
  0=no automatic return
871
- type: integer
872
834
  min: 0
873
835
  max: 1440
874
836
  intersection:
875
- list: true
837
+ type: integer_list
876
838
  description: Intersection number
877
- type: integer
878
839
  min: 0
879
840
  max: 255
880
841
  command: setValue
@@ -894,7 +855,6 @@ objects:
894
855
  securityCode:
895
856
  type: string
896
857
  description: Security code 2
897
- range: "[text]"
898
858
  timeplan:
899
859
  type: integer
900
860
  description: designation of time plan
@@ -915,7 +875,6 @@ objects:
915
875
  securityCode:
916
876
  type: string
917
877
  description: Security code 2
918
- range: "[text]"
919
878
  traficsituation:
920
879
  type: integer
921
880
  description: designation of traficsituation
@@ -933,7 +892,6 @@ objects:
933
892
  securityCode:
934
893
  type: string
935
894
  description: Security code 2
936
- range: "[text]"
937
895
  command: setRestart
938
896
  M0005:
939
897
  description: |-
@@ -950,7 +908,6 @@ objects:
950
908
  securityCode:
951
909
  type: string
952
910
  description: Security code 2
953
- range: "[text]"
954
911
  emergencyroute:
955
912
  type: integer
956
913
  description: Number of emergency route
@@ -973,7 +930,6 @@ objects:
973
930
  securityCode:
974
931
  type: string
975
932
  description: Security code 2
976
- range: "[text]"
977
933
  input:
978
934
  type: integer
979
935
  description: Number of Input
@@ -994,7 +950,6 @@ objects:
994
950
  securityCode:
995
951
  type: string
996
952
  description: Security code 2
997
- range: "[text]"
998
953
  command: setFixedTime
999
954
  M0012:
1000
955
  description: |-
@@ -1031,11 +986,9 @@ objects:
1031
986
  "5,4143,65:22,1,4"
1032
987
 
1033
988
  Such a message would order signal group 6,7,10,17,22 to green and signal group 5,11,24 to red
1034
- range: "[text]"
1035
989
  securityCode:
1036
990
  type: string
1037
991
  description: Security code 2
1038
- range: "[text]"
1039
992
  command: setStart
1040
993
  M0013:
1041
994
  description: |-
@@ -1066,11 +1019,9 @@ objects:
1066
1019
  "5,4143:65:22,1,4"
1067
1020
 
1068
1021
  Such a message would activate input 6,7,10,17,22 and deactivate input 5,11,24
1069
- range: "[text]"
1070
1022
  securityCode:
1071
1023
  type: string
1072
1024
  description: Security code 2
1073
- range: "[text]"
1074
1025
  command: setInput
1075
1026
  M0014:
1076
1027
  description: |-
@@ -1095,11 +1046,9 @@ objects:
1095
1046
 
1096
1047
  E.g.
1097
1048
  dd-ee,dd-ee
1098
- range: "[text]"
1099
1049
  securityCode:
1100
1050
  type: string
1101
1051
  description: Security code 2
1102
- range: "[text]"
1103
1052
  command: setCommands
1104
1053
  M0015:
1105
1054
  description: |-
@@ -1119,7 +1068,6 @@ objects:
1119
1068
  securityCode:
1120
1069
  type: string
1121
1070
  description: Security code 2
1122
- range: "[text]"
1123
1071
  command: setOffset
1124
1072
  M0016:
1125
1073
  description: |-
@@ -1149,11 +1097,9 @@ objects:
1149
1097
 
1150
1098
  E.g.
1151
1099
  d-t,d-t
1152
- range: "[text]"
1153
1100
  securityCode:
1154
1101
  type: string
1155
1102
  description: Security code 2
1156
- range: "[text]"
1157
1103
  command: setWeekTable
1158
1104
  M0017:
1159
1105
  description: |-
@@ -1184,11 +1130,9 @@ objects:
1184
1130
 
1185
1131
  E.g.
1186
1132
  t-o-h-m,t-o-h-m
1187
- range: "[text]"
1188
1133
  securityCode:
1189
1134
  type: string
1190
1135
  description: Security code 2
1191
- range: "[text]"
1192
1136
  command: setTimeTable
1193
1137
  M0018:
1194
1138
  description: |-
@@ -1208,7 +1152,6 @@ objects:
1208
1152
  securityCode:
1209
1153
  type: string
1210
1154
  description: Security code 2
1211
- range: "[text]"
1212
1155
  command: setCycleTime
1213
1156
  M0019:
1214
1157
  description: |-
@@ -1225,7 +1168,6 @@ objects:
1225
1168
  securityCode:
1226
1169
  type: string
1227
1170
  description: Security code 2
1228
- range: "[text]"
1229
1171
  input:
1230
1172
  type: integer
1231
1173
  description: Number of Input
@@ -1251,7 +1193,6 @@ objects:
1251
1193
  securityCode:
1252
1194
  type: string
1253
1195
  description: Security code 2
1254
- range: "[text]"
1255
1196
  output:
1256
1197
  type: integer
1257
1198
  description: Number of Output
@@ -1275,11 +1216,9 @@ objects:
1275
1216
  Loop detector trigger level sensitivity is written as dd-ss where:
1276
1217
  dd=loop detector number
1277
1218
  ss=sensitivity value
1278
- range: "[text]"
1279
1219
  securityCode:
1280
1220
  type: string
1281
1221
  description: Security code 2
1282
- range: "[text]"
1283
1222
  command: setLevel
1284
1223
  M0103:
1285
1224
  description: |-
@@ -1295,11 +1234,9 @@ objects:
1295
1234
  oldSecurityCode:
1296
1235
  type: string
1297
1236
  description: Previous security code
1298
- range: "[text]"
1299
1237
  newSecurityCode:
1300
1238
  type: string
1301
1239
  description: New security code
1302
- range: "[text]"
1303
1240
  command: setSecurityCode
1304
1241
  M0104:
1305
1242
  description: |-
@@ -1310,7 +1247,6 @@ objects:
1310
1247
  securityCode:
1311
1248
  type: string
1312
1249
  description: Security code 1
1313
- range: "[text]"
1314
1250
  year:
1315
1251
  type: integer
1316
1252
  description: |-
@@ -1460,7 +1396,6 @@ objects:
1460
1396
  securityCode:
1461
1397
  type: string
1462
1398
  description: Security code 2
1463
- range: "[text]"
1464
1399
  command: setStart
1465
1400
  M0011:
1466
1401
  description: |-
@@ -1477,7 +1412,6 @@ objects:
1477
1412
  securityCode:
1478
1413
  type: string
1479
1414
  description: Security code 2
1480
- range: "[text]"
1481
1415
  command: setStop
1482
1416
  Detector logic:
1483
1417
  description:
@@ -1651,7 +1585,6 @@ objects:
1651
1585
  securityCode:
1652
1586
  type: string
1653
1587
  description: Security code 2
1654
- range: "[text]"
1655
1588
  mode:
1656
1589
  type: boolean
1657
1590
  description: |-