rsmp_schema 0.5.2 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rspec.yaml +1 -1
  3. data/.tool-versions +1 -1
  4. data/Gemfile.lock +24 -22
  5. data/examples/validate.rb +1 -1
  6. data/lib/rsmp_schema/version.rb +1 -1
  7. data/rsmp_schema.gemspec +5 -5
  8. data/schemas/core/3.2/alarm_suspended_resumed.json +2 -2
  9. data/schemas/tlc/1.2/statuses/S0006.json +3 -3
  10. data/schemas/tlc/1.2/sxl.yaml +4 -4
  11. data/schemas/tlc/1.2.1/alarms/A0001.json +3 -0
  12. data/schemas/tlc/1.2.1/alarms/A0002.json +3 -0
  13. data/schemas/tlc/1.2.1/alarms/A0003.json +3 -0
  14. data/schemas/tlc/1.2.1/alarms/A0004.json +3 -0
  15. data/schemas/tlc/1.2.1/alarms/A0005.json +3 -0
  16. data/schemas/tlc/1.2.1/alarms/A0006.json +3 -0
  17. data/schemas/tlc/1.2.1/alarms/A0007.json +59 -0
  18. data/schemas/tlc/1.2.1/alarms/A0008.json +61 -0
  19. data/schemas/tlc/1.2.1/alarms/A0009.json +3 -0
  20. data/schemas/tlc/1.2.1/alarms/A0010.json +3 -0
  21. data/schemas/tlc/1.2.1/alarms/A0101.json +3 -0
  22. data/schemas/tlc/1.2.1/alarms/A0201.json +60 -0
  23. data/schemas/tlc/1.2.1/alarms/A0202.json +60 -0
  24. data/schemas/tlc/1.2.1/alarms/A0301.json +132 -0
  25. data/schemas/tlc/1.2.1/alarms/A0302.json +158 -0
  26. data/schemas/tlc/1.2.1/alarms/A0303.json +132 -0
  27. data/schemas/tlc/1.2.1/alarms/A0304.json +158 -0
  28. data/schemas/tlc/1.2.1/alarms/alarms.json +286 -0
  29. data/schemas/tlc/1.2.1/commands/M0001.json +138 -0
  30. data/schemas/tlc/1.2.1/commands/M0002.json +112 -0
  31. data/schemas/tlc/1.2.1/commands/M0003.json +112 -0
  32. data/schemas/tlc/1.2.1/commands/M0004.json +85 -0
  33. data/schemas/tlc/1.2.1/commands/M0005.json +112 -0
  34. data/schemas/tlc/1.2.1/commands/M0006.json +112 -0
  35. data/schemas/tlc/1.2.1/commands/M0007.json +85 -0
  36. data/schemas/tlc/1.2.1/commands/M0008.json +112 -0
  37. data/schemas/tlc/1.2.1/commands/M0010.json +85 -0
  38. data/schemas/tlc/1.2.1/commands/M0011.json +85 -0
  39. data/schemas/tlc/1.2.1/commands/M0012.json +79 -0
  40. data/schemas/tlc/1.2.1/commands/M0013.json +79 -0
  41. data/schemas/tlc/1.2.1/commands/M0014.json +106 -0
  42. data/schemas/tlc/1.2.1/commands/M0015.json +112 -0
  43. data/schemas/tlc/1.2.1/commands/M0016.json +79 -0
  44. data/schemas/tlc/1.2.1/commands/M0017.json +79 -0
  45. data/schemas/tlc/1.2.1/commands/M0018.json +112 -0
  46. data/schemas/tlc/1.2.1/commands/M0019.json +139 -0
  47. data/schemas/tlc/1.2.1/commands/M0020.json +139 -0
  48. data/schemas/tlc/1.2.1/commands/M0021.json +79 -0
  49. data/schemas/tlc/1.2.1/commands/M0022.json +355 -0
  50. data/schemas/tlc/1.2.1/commands/M0023.json +85 -0
  51. data/schemas/tlc/1.2.1/commands/M0103.json +103 -0
  52. data/schemas/tlc/1.2.1/commands/M0104.json +220 -0
  53. data/schemas/tlc/1.2.1/commands/command_requests.json +7 -0
  54. data/schemas/tlc/1.2.1/commands/command_responses.json +7 -0
  55. data/schemas/tlc/1.2.1/commands/commands.json +398 -0
  56. data/schemas/tlc/1.2.1/rsmp.json +73 -0
  57. data/schemas/tlc/1.2.1/statuses/S0001.json +137 -0
  58. data/schemas/tlc/1.2.1/statuses/S0002.json +55 -0
  59. data/schemas/tlc/1.2.1/statuses/S0003.json +55 -0
  60. data/schemas/tlc/1.2.1/statuses/S0004.json +55 -0
  61. data/schemas/tlc/1.2.1/statuses/S0005.json +112 -0
  62. data/schemas/tlc/1.2.1/statuses/S0006.json +88 -0
  63. data/schemas/tlc/1.2.1/statuses/S0007.json +116 -0
  64. data/schemas/tlc/1.2.1/statuses/S0008.json +116 -0
  65. data/schemas/tlc/1.2.1/statuses/S0009.json +116 -0
  66. data/schemas/tlc/1.2.1/statuses/S0010.json +116 -0
  67. data/schemas/tlc/1.2.1/statuses/S0011.json +116 -0
  68. data/schemas/tlc/1.2.1/statuses/S0012.json +116 -0
  69. data/schemas/tlc/1.2.1/statuses/S0013.json +88 -0
  70. data/schemas/tlc/1.2.1/statuses/S0014.json +90 -0
  71. data/schemas/tlc/1.2.1/statuses/S0015.json +90 -0
  72. data/schemas/tlc/1.2.1/statuses/S0016.json +61 -0
  73. data/schemas/tlc/1.2.1/statuses/S0017.json +61 -0
  74. data/schemas/tlc/1.2.1/statuses/S0018.json +61 -0
  75. data/schemas/tlc/1.2.1/statuses/S0019.json +61 -0
  76. data/schemas/tlc/1.2.1/statuses/S0020.json +88 -0
  77. data/schemas/tlc/1.2.1/statuses/S0021.json +56 -0
  78. data/schemas/tlc/1.2.1/statuses/S0022.json +55 -0
  79. data/schemas/tlc/1.2.1/statuses/S0023.json +56 -0
  80. data/schemas/tlc/1.2.1/statuses/S0024.json +56 -0
  81. data/schemas/tlc/1.2.1/statuses/S0025.json +250 -0
  82. data/schemas/tlc/1.2.1/statuses/S0026.json +55 -0
  83. data/schemas/tlc/1.2.1/statuses/S0027.json +55 -0
  84. data/schemas/tlc/1.2.1/statuses/S0028.json +55 -0
  85. data/schemas/tlc/1.2.1/statuses/S0029.json +55 -0
  86. data/schemas/tlc/1.2.1/statuses/S0030.json +55 -0
  87. data/schemas/tlc/1.2.1/statuses/S0031.json +55 -0
  88. data/schemas/tlc/1.2.1/statuses/S0032.json +116 -0
  89. data/schemas/tlc/1.2.1/statuses/S0033.json +114 -0
  90. data/schemas/tlc/1.2.1/statuses/S0034.json +61 -0
  91. data/schemas/tlc/1.2.1/statuses/S0035.json +74 -0
  92. data/schemas/tlc/1.2.1/statuses/S0091.json +65 -0
  93. data/schemas/tlc/1.2.1/statuses/S0092.json +65 -0
  94. data/schemas/tlc/1.2.1/statuses/S0095.json +55 -0
  95. data/schemas/tlc/1.2.1/statuses/S0096.json +196 -0
  96. data/schemas/tlc/1.2.1/statuses/S0097.json +82 -0
  97. data/schemas/tlc/1.2.1/statuses/S0098.json +103 -0
  98. data/schemas/tlc/1.2.1/statuses/S0201.json +88 -0
  99. data/schemas/tlc/1.2.1/statuses/S0202.json +88 -0
  100. data/schemas/tlc/1.2.1/statuses/S0203.json +88 -0
  101. data/schemas/tlc/1.2.1/statuses/S0204.json +304 -0
  102. data/schemas/tlc/1.2.1/statuses/S0205.json +88 -0
  103. data/schemas/tlc/1.2.1/statuses/S0206.json +88 -0
  104. data/schemas/tlc/1.2.1/statuses/S0207.json +88 -0
  105. data/schemas/tlc/1.2.1/statuses/S0208.json +304 -0
  106. data/schemas/tlc/1.2.1/statuses/statuses.json +786 -0
  107. data/schemas/tlc/1.2.1/sxl.yaml +2109 -0
  108. metadata +110 -13
@@ -0,0 +1,304 @@
1
+ {
2
+ "description" : "Traffic Counting: Number of vehicles of given classification.\nUsed for Traffic counting.",
3
+ "allOf" : [
4
+ {
5
+ "properties" : {
6
+ "n" : {
7
+ "enum" : [
8
+ "B",
9
+ "C",
10
+ "F",
11
+ "L",
12
+ "LS",
13
+ "MC",
14
+ "P",
15
+ "PS",
16
+ "SP",
17
+ "starttime"
18
+ ]
19
+ }
20
+ }
21
+ },
22
+ {
23
+ "if" : {
24
+ "required" : [
25
+ "q"
26
+ ],
27
+ "properties" : {
28
+ "q" : {
29
+ "const" : "undefined"
30
+ }
31
+ }
32
+ },
33
+ "then" : {
34
+ "s" : {
35
+ "type" : "null"
36
+ }
37
+ },
38
+ "else" : {
39
+ "allOf" : [
40
+ {
41
+ "if" : {
42
+ "required" : [
43
+ "n"
44
+ ],
45
+ "properties" : {
46
+ "n" : {
47
+ "const" : "starttime"
48
+ }
49
+ }
50
+ },
51
+ "then" : {
52
+ "properties" : {
53
+ "s" : {
54
+ "allOf" : [
55
+ {
56
+ "description" : "Time stamp for start of measuring"
57
+ },
58
+ {
59
+ "$ref" : "../../../core/3.1.2/definitions.json#/timestamp"
60
+ }
61
+ ]
62
+ }
63
+ }
64
+ }
65
+ },
66
+ {
67
+ "if" : {
68
+ "required" : [
69
+ "n"
70
+ ],
71
+ "properties" : {
72
+ "n" : {
73
+ "const" : "P"
74
+ }
75
+ }
76
+ },
77
+ "then" : {
78
+ "properties" : {
79
+ "s" : {
80
+ "allOf" : [
81
+ {
82
+ "description" : "Number of cars"
83
+ },
84
+ {
85
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer"
86
+ }
87
+ ]
88
+ }
89
+ }
90
+ }
91
+ },
92
+ {
93
+ "if" : {
94
+ "required" : [
95
+ "n"
96
+ ],
97
+ "properties" : {
98
+ "n" : {
99
+ "const" : "PS"
100
+ }
101
+ }
102
+ },
103
+ "then" : {
104
+ "properties" : {
105
+ "s" : {
106
+ "allOf" : [
107
+ {
108
+ "description" : "Number of cars with trailers"
109
+ },
110
+ {
111
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer"
112
+ }
113
+ ]
114
+ }
115
+ }
116
+ }
117
+ },
118
+ {
119
+ "if" : {
120
+ "required" : [
121
+ "n"
122
+ ],
123
+ "properties" : {
124
+ "n" : {
125
+ "const" : "L"
126
+ }
127
+ }
128
+ },
129
+ "then" : {
130
+ "properties" : {
131
+ "s" : {
132
+ "allOf" : [
133
+ {
134
+ "description" : "Number of trucks"
135
+ },
136
+ {
137
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer"
138
+ }
139
+ ]
140
+ }
141
+ }
142
+ }
143
+ },
144
+ {
145
+ "if" : {
146
+ "required" : [
147
+ "n"
148
+ ],
149
+ "properties" : {
150
+ "n" : {
151
+ "const" : "LS"
152
+ }
153
+ }
154
+ },
155
+ "then" : {
156
+ "properties" : {
157
+ "s" : {
158
+ "allOf" : [
159
+ {
160
+ "description" : "Number of trucks with trailers"
161
+ },
162
+ {
163
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer"
164
+ }
165
+ ]
166
+ }
167
+ }
168
+ }
169
+ },
170
+ {
171
+ "if" : {
172
+ "required" : [
173
+ "n"
174
+ ],
175
+ "properties" : {
176
+ "n" : {
177
+ "const" : "B"
178
+ }
179
+ }
180
+ },
181
+ "then" : {
182
+ "properties" : {
183
+ "s" : {
184
+ "allOf" : [
185
+ {
186
+ "description" : "Number of buses"
187
+ },
188
+ {
189
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer"
190
+ }
191
+ ]
192
+ }
193
+ }
194
+ }
195
+ },
196
+ {
197
+ "if" : {
198
+ "required" : [
199
+ "n"
200
+ ],
201
+ "properties" : {
202
+ "n" : {
203
+ "const" : "SP"
204
+ }
205
+ }
206
+ },
207
+ "then" : {
208
+ "properties" : {
209
+ "s" : {
210
+ "allOf" : [
211
+ {
212
+ "description" : "Number of trams"
213
+ },
214
+ {
215
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer"
216
+ }
217
+ ]
218
+ }
219
+ }
220
+ }
221
+ },
222
+ {
223
+ "if" : {
224
+ "required" : [
225
+ "n"
226
+ ],
227
+ "properties" : {
228
+ "n" : {
229
+ "const" : "MC"
230
+ }
231
+ }
232
+ },
233
+ "then" : {
234
+ "properties" : {
235
+ "s" : {
236
+ "allOf" : [
237
+ {
238
+ "description" : "Number of motor cycles"
239
+ },
240
+ {
241
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer"
242
+ }
243
+ ]
244
+ }
245
+ }
246
+ }
247
+ },
248
+ {
249
+ "if" : {
250
+ "required" : [
251
+ "n"
252
+ ],
253
+ "properties" : {
254
+ "n" : {
255
+ "const" : "C"
256
+ }
257
+ }
258
+ },
259
+ "then" : {
260
+ "properties" : {
261
+ "s" : {
262
+ "allOf" : [
263
+ {
264
+ "description" : "Number of bicycles"
265
+ },
266
+ {
267
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer"
268
+ }
269
+ ]
270
+ }
271
+ }
272
+ }
273
+ },
274
+ {
275
+ "if" : {
276
+ "required" : [
277
+ "n"
278
+ ],
279
+ "properties" : {
280
+ "n" : {
281
+ "const" : "F"
282
+ }
283
+ }
284
+ },
285
+ "then" : {
286
+ "properties" : {
287
+ "s" : {
288
+ "allOf" : [
289
+ {
290
+ "description" : "Number of pedestrians"
291
+ },
292
+ {
293
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer"
294
+ }
295
+ ]
296
+ }
297
+ }
298
+ }
299
+ }
300
+ ]
301
+ }
302
+ }
303
+ ]
304
+ }
@@ -0,0 +1,88 @@
1
+ {
2
+ "description" : "Traffic Counting: Number of vehicles.\nThis status was introduced to improve performance in case traffic counting is done on all all detectors.",
3
+ "allOf" : [
4
+ {
5
+ "properties" : {
6
+ "n" : {
7
+ "enum" : [
8
+ "start",
9
+ "vehicles"
10
+ ]
11
+ }
12
+ }
13
+ },
14
+ {
15
+ "if" : {
16
+ "required" : [
17
+ "q"
18
+ ],
19
+ "properties" : {
20
+ "q" : {
21
+ "const" : "undefined"
22
+ }
23
+ }
24
+ },
25
+ "then" : {
26
+ "s" : {
27
+ "type" : "null"
28
+ }
29
+ },
30
+ "else" : {
31
+ "allOf" : [
32
+ {
33
+ "if" : {
34
+ "required" : [
35
+ "n"
36
+ ],
37
+ "properties" : {
38
+ "n" : {
39
+ "const" : "start"
40
+ }
41
+ }
42
+ },
43
+ "then" : {
44
+ "properties" : {
45
+ "s" : {
46
+ "allOf" : [
47
+ {
48
+ "description" : "Time stamp for start of measuring"
49
+ },
50
+ {
51
+ "$ref" : "../../../core/3.1.2/definitions.json#/timestamp"
52
+ }
53
+ ]
54
+ }
55
+ }
56
+ }
57
+ },
58
+ {
59
+ "if" : {
60
+ "required" : [
61
+ "n"
62
+ ],
63
+ "properties" : {
64
+ "n" : {
65
+ "const" : "vehicles"
66
+ }
67
+ }
68
+ },
69
+ "then" : {
70
+ "properties" : {
71
+ "s" : {
72
+ "allOf" : [
73
+ {
74
+ "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)"
75
+ },
76
+ {
77
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer_list"
78
+ }
79
+ ]
80
+ }
81
+ }
82
+ }
83
+ }
84
+ ]
85
+ }
86
+ }
87
+ ]
88
+ }
@@ -0,0 +1,88 @@
1
+ {
2
+ "description" : "Traffic Counting: Vehicle speed\nThis status was introduced to improve performance in case traffic counting is done on all all detectors.",
3
+ "allOf" : [
4
+ {
5
+ "properties" : {
6
+ "n" : {
7
+ "enum" : [
8
+ "speed",
9
+ "start"
10
+ ]
11
+ }
12
+ }
13
+ },
14
+ {
15
+ "if" : {
16
+ "required" : [
17
+ "q"
18
+ ],
19
+ "properties" : {
20
+ "q" : {
21
+ "const" : "undefined"
22
+ }
23
+ }
24
+ },
25
+ "then" : {
26
+ "s" : {
27
+ "type" : "null"
28
+ }
29
+ },
30
+ "else" : {
31
+ "allOf" : [
32
+ {
33
+ "if" : {
34
+ "required" : [
35
+ "n"
36
+ ],
37
+ "properties" : {
38
+ "n" : {
39
+ "const" : "start"
40
+ }
41
+ }
42
+ },
43
+ "then" : {
44
+ "properties" : {
45
+ "s" : {
46
+ "allOf" : [
47
+ {
48
+ "description" : "Time stamp for start of measuring"
49
+ },
50
+ {
51
+ "$ref" : "../../../core/3.1.2/definitions.json#/timestamp"
52
+ }
53
+ ]
54
+ }
55
+ }
56
+ }
57
+ },
58
+ {
59
+ "if" : {
60
+ "required" : [
61
+ "n"
62
+ ],
63
+ "properties" : {
64
+ "n" : {
65
+ "const" : "speed"
66
+ }
67
+ }
68
+ },
69
+ "then" : {
70
+ "properties" : {
71
+ "s" : {
72
+ "allOf" : [
73
+ {
74
+ "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)"
75
+ },
76
+ {
77
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer_list"
78
+ }
79
+ ]
80
+ }
81
+ }
82
+ }
83
+ }
84
+ ]
85
+ }
86
+ }
87
+ ]
88
+ }
@@ -0,0 +1,88 @@
1
+ {
2
+ "description" : "Traffic Counting: Occupancy.\nThis status was introduced to improve performance in case traffic counting is done on all all detectors.",
3
+ "allOf" : [
4
+ {
5
+ "properties" : {
6
+ "n" : {
7
+ "enum" : [
8
+ "occupancy",
9
+ "start"
10
+ ]
11
+ }
12
+ }
13
+ },
14
+ {
15
+ "if" : {
16
+ "required" : [
17
+ "q"
18
+ ],
19
+ "properties" : {
20
+ "q" : {
21
+ "const" : "undefined"
22
+ }
23
+ }
24
+ },
25
+ "then" : {
26
+ "s" : {
27
+ "type" : "null"
28
+ }
29
+ },
30
+ "else" : {
31
+ "allOf" : [
32
+ {
33
+ "if" : {
34
+ "required" : [
35
+ "n"
36
+ ],
37
+ "properties" : {
38
+ "n" : {
39
+ "const" : "start"
40
+ }
41
+ }
42
+ },
43
+ "then" : {
44
+ "properties" : {
45
+ "s" : {
46
+ "allOf" : [
47
+ {
48
+ "description" : "Time stamp for start of measuring"
49
+ },
50
+ {
51
+ "$ref" : "../../../core/3.1.2/definitions.json#/timestamp"
52
+ }
53
+ ]
54
+ }
55
+ }
56
+ }
57
+ },
58
+ {
59
+ "if" : {
60
+ "required" : [
61
+ "n"
62
+ ],
63
+ "properties" : {
64
+ "n" : {
65
+ "const" : "occupancy"
66
+ }
67
+ }
68
+ },
69
+ "then" : {
70
+ "properties" : {
71
+ "s" : {
72
+ "allOf" : [
73
+ {
74
+ "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)"
75
+ },
76
+ {
77
+ "$ref" : "../../../core/3.1.2/definitions.json#/integer_list"
78
+ }
79
+ ]
80
+ }
81
+ }
82
+ }
83
+ }
84
+ ]
85
+ }
86
+ }
87
+ ]
88
+ }