datex2-xml2json 0.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. datex2_xml2json/__init__.py +0 -0
  2. datex2_xml2json/json_validator.py +36 -0
  3. datex2_xml2json/merge.py +39 -0
  4. datex2_xml2json/schema/Baustellen-4-00-00.sch +7 -0
  5. datex2_xml2json/schema/DATEXIISchema_2_2_0.xsd +4707 -0
  6. datex2_xml2json/schema/DATEXIISchema_2_2_3.xsd +6783 -0
  7. datex2_xml2json/schema/DATEXII_3.7_Profile/.DS_Store +0 -0
  8. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_AfirEnergyInfrastructure.json +2455 -0
  9. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_AfirFacilities.json +2809 -0
  10. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_Common.json +3651 -0
  11. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_CommonExtension.json +919 -0
  12. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_ControlledZone.json +1070 -0
  13. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_D2Payload.json +11 -0
  14. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_EnergyInfrastructure.json +1924 -0
  15. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_Facilities.json +2858 -0
  16. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_FaultAndStatus.json +1415 -0
  17. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_LocationExtension.json +186 -0
  18. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_LocationReferencing.json +4847 -0
  19. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_Parking.json +5314 -0
  20. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_ReroutingManagementEnhanced.json +1160 -0
  21. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_RoadTrafficData.json +1938 -0
  22. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_Situation.json +8040 -0
  23. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_TrafficManagementPlan.json +2358 -0
  24. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_TrafficRegulation.json +3377 -0
  25. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_UrbanExtensions.json +194 -0
  26. datex2_xml2json/schema/DATEXII_3.7_Profile/DATEXII_3_Vms.json +2544 -0
  27. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/.DS_Store +0 -0
  28. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_AfirEnergyInfrastructure.xsd +2102 -0
  29. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_AfirFacilities.xsd +2060 -0
  30. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_Common.xsd +4152 -0
  31. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_CommonExtension.xsd +1102 -0
  32. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_ControlledZone.xsd +601 -0
  33. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_D2Payload.xsd +280 -0
  34. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_EnergyInfrastructure.xsd +1761 -0
  35. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_Facilities.xsd +2037 -0
  36. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_FaultAndStatus.xsd +1076 -0
  37. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_LocationExtension.xsd +196 -0
  38. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_LocationReferencing.xsd +4132 -0
  39. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_Parking.xsd +4025 -0
  40. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_ReroutingManagementEnhanced.xsd +997 -0
  41. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_RoadTrafficData.xsd +1273 -0
  42. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_Situation.xsd +5777 -0
  43. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_TrafficManagementPlan.xsd +1184 -0
  44. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_TrafficRegulation.xsd +2611 -0
  45. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_UrbanExtensions.xsd +148 -0
  46. datex2_xml2json/schema/DATEXII_3.7_Profile/xml/DATEXII_3_Vms.xsd +2290 -0
  47. datex2_xml2json/schema/MDM_BaustellenInfoDigitalRoadworksProfile_04-03-00.xsd +2401 -0
  48. datex2_xml2json/schema/MDM_Datenmodell_Baustellen_04-00-00.xsd +3232 -0
  49. datex2_xml2json/schema/cifs_schema.json +161 -0
  50. datex2_xml2json/transform/.DS_Store +0 -0
  51. datex2_xml2json/transform/__init__.py +13 -0
  52. datex2_xml2json/transform/base.py +79 -0
  53. datex2_xml2json/transform/cifs_transformer.py +275 -0
  54. datex2_xml2json/transform/geojson_geometry_transformer.py +159 -0
  55. datex2_xml2json/transform/geoparquet_transformer.py +160 -0
  56. datex2_xml2json/transform/jsonata_transformer.py +100 -0
  57. datex2_xml2json/transform/roads_regio_transformer.py +88 -0
  58. datex2_xml2json/transform/source_setter.py +42 -0
  59. datex2_xml2json/transform/transformation_rules.py +526 -0
  60. datex2_xml2json/transformer.py +197 -0
  61. datex2_xml2json/util.py +141 -0
  62. datex2_xml2json-0.0.1.dist-info/METADATA +176 -0
  63. datex2_xml2json-0.0.1.dist-info/RECORD +65 -0
  64. datex2_xml2json-0.0.1.dist-info/WHEEL +4 -0
  65. datex2_xml2json-0.0.1.dist-info/licenses/LICENSE.md +179 -0
@@ -0,0 +1,1160 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$defs": {
4
+ "BasicAllocation": {
5
+ "title": "BasicAllocation",
6
+ "description": "Specifiying allocation by using a basic set of Conditions, but without using the TrafficRegulations namespace ",
7
+ "type": "object",
8
+ "additionalProperties": false,
9
+ "properties": {
10
+ "routeProportion": {
11
+ "title": "routeProportion",
12
+ "description": "The weight of this specific route against other alternative routes (and possibly the original route) that have identical specific applied characteristics in their route allocation. Those sets of weights should always sum up to 100%.",
13
+ "$ref": "DATEXII_3_Common.json#/$defs/Percentage"
14
+ },
15
+ "reroutingAdvice": {
16
+ "title": "reroutingAdvice",
17
+ "description": "Type of rerouting advice instigated by operator.",
18
+ "type": "array",
19
+ "items": {
20
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ReroutingAdviceTypeEnumG"
21
+ },
22
+ "minItems": 0
23
+ },
24
+ "complianceOptionOverride": {
25
+ "title": "complianceOptionOverride",
26
+ "description": "Override the compliance option for the specific route to make it mandatory or advisory.",
27
+ "$ref": "DATEXII_3_Situation.json#/$defs/ComplianceOptionEnumG"
28
+ },
29
+ "routeEffectivlyClosedForAllocation": {
30
+ "title": "routeEffectivlyClosedForAllocation",
31
+ "description": "For the specification given in this particular allocation set, the route is closed.",
32
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
33
+ },
34
+ "condition": {
35
+ "title": "condition",
36
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ConditionG"
37
+ },
38
+ "rerRouteAllocationExtensionG": {
39
+ "title": "rerRouteAllocationExtensionG",
40
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
41
+ },
42
+ "rerBasicAllocationExtensionG": {
43
+ "title": "rerBasicAllocationExtensionG",
44
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
45
+ }
46
+ },
47
+ "required": [
48
+ "condition"
49
+ ]
50
+ },
51
+ "CapacityManagement": {
52
+ "title": "CapacityManagement",
53
+ "description": "One or more capacity management measures without specifying a specific route",
54
+ "type": "object",
55
+ "additionalProperties": false,
56
+ "properties": {
57
+ "name": {
58
+ "title": "name",
59
+ "description": "A given name for the specific capacity management.",
60
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
61
+ },
62
+ "capacityManagementMeasure": {
63
+ "title": "capacityManagementMeasure",
64
+ "type": "array",
65
+ "items": {
66
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/CapacityManagementMeasure"
67
+ },
68
+ "minItems": 1
69
+ }
70
+ },
71
+ "required": [
72
+ "capacityManagementMeasure"
73
+ ]
74
+ },
75
+ "CapacityManagementActionEnum": {
76
+ "title": "CapacityManagementActionEnum",
77
+ "description": "Types of capacity management actions.",
78
+ "type": "string",
79
+ "enum": [
80
+ "additionalParkingBan",
81
+ "alteredSignalPhasing",
82
+ "alternatedSignalisedTraffic",
83
+ "closedEntry",
84
+ "closedExit",
85
+ "closedLanes",
86
+ "modifiedCycleLength",
87
+ "modifiedGreenPeriod",
88
+ "oneDirectionTraffic",
89
+ "oneDirectionTrafficReversed",
90
+ "openedExtraLane",
91
+ "reducingLocalAccess",
92
+ "synchronizedTrafficSignals",
93
+ "other",
94
+ "extendedG"
95
+ ]
96
+ },
97
+ "CapacityManagementActionEnumG": {
98
+ "title": "CapacityManagementActionEnumG",
99
+ "type": "object",
100
+ "additionalProperties": false,
101
+ "properties": {
102
+ "value": {
103
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/CapacityManagementActionEnum"
104
+ },
105
+ "extendedValueG": {
106
+ "type": "string"
107
+ }
108
+ },
109
+ "required": [
110
+ "value"
111
+ ]
112
+ },
113
+ "CapacityManagementMeasure": {
114
+ "title": "CapacityManagementMeasure",
115
+ "description": "A traffic management measure, possibly with concrete actions, which leads to an intended change (increase or decrease) of capacity for the specific route.",
116
+ "type": "object",
117
+ "additionalProperties": false,
118
+ "properties": {
119
+ "measure": {
120
+ "title": "measure",
121
+ "description": "The type of the capacity management measure",
122
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/CapacityManagementMeasureEnumG"
123
+ },
124
+ "action": {
125
+ "title": "action",
126
+ "description": "Actions that belong to the capacity management measure",
127
+ "type": "array",
128
+ "items": {
129
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/CapacityManagementActionEnumG"
130
+ },
131
+ "minItems": 0
132
+ },
133
+ "description": {
134
+ "title": "description",
135
+ "description": "A description of the capacity management measure and its actions",
136
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
137
+ },
138
+ "defaultGreenTimeAdjustment": {
139
+ "title": "defaultGreenTimeAdjustment",
140
+ "description": "Additional or reduced traffic signal green time as standard value for all traffic signals on the specified route. Each traffic signal can overwrite this value.",
141
+ "$ref": "DATEXII_3_Common.json#/$defs/Seconds"
142
+ },
143
+ "defaultCycleLength": {
144
+ "title": "defaultCycleLength",
145
+ "description": "The default cycle time to complete one full sequence of the operation of traffic signals along a specified route.",
146
+ "$ref": "DATEXII_3_Common.json#/$defs/Seconds"
147
+ },
148
+ "recommendedSpeed": {
149
+ "title": "recommendedSpeed",
150
+ "description": "Advice for the optimal vehicle speed, for example in case of a green wave.",
151
+ "$ref": "DATEXII_3_Common.json#/$defs/KilometresPerHour"
152
+ },
153
+ "affectedLocation": {
154
+ "title": "affectedLocation",
155
+ "description": "If the affected location for the capacity measure is not already sufficiently specified in the enclosing objects, this property can be used to define it.",
156
+ "type": "array",
157
+ "items": {
158
+ "$ref": "DATEXII_3_LocationReferencing.json#/$defs/LocationReferenceG"
159
+ },
160
+ "minItems": 0
161
+ },
162
+ "trafficSignal": {
163
+ "title": "trafficSignal",
164
+ "description": "Traffic signal as part of a group of traffic signals that the management applies to.",
165
+ "type": "array",
166
+ "items": {
167
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/TrafficSignal"
168
+ },
169
+ "minItems": 0
170
+ },
171
+ "rerCapacityManagementMeasureExtensionG": {
172
+ "title": "rerCapacityManagementMeasureExtensionG",
173
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
174
+ }
175
+ },
176
+ "required": [
177
+ "measure"
178
+ ]
179
+ },
180
+ "CapacityManagementMeasureEnum": {
181
+ "title": "CapacityManagementMeasureEnum",
182
+ "description": "Types of capacity management measures.",
183
+ "type": "string",
184
+ "enum": [
185
+ "accessMeasures",
186
+ "capacityIncrease",
187
+ "capacityReduction",
188
+ "inflowReduction",
189
+ "outflowIncrease",
190
+ "parkingMeasures",
191
+ "signalMeasures",
192
+ "other",
193
+ "extendedG"
194
+ ]
195
+ },
196
+ "CapacityManagementMeasureEnumG": {
197
+ "title": "CapacityManagementMeasureEnumG",
198
+ "type": "object",
199
+ "additionalProperties": false,
200
+ "properties": {
201
+ "value": {
202
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/CapacityManagementMeasureEnum"
203
+ },
204
+ "extendedValueG": {
205
+ "type": "string"
206
+ }
207
+ },
208
+ "required": [
209
+ "value"
210
+ ]
211
+ },
212
+ "ConditionG": {
213
+ "title": "ConditionG",
214
+ "description": "Only one of the properties shall be used in an instance.",
215
+ "type": "object",
216
+ "additionalProperties": false,
217
+ "properties": {
218
+ "rerConditionSet": {
219
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ConditionSet"
220
+ },
221
+ "rerVehicleCondition": {
222
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/VehicleCondition"
223
+ },
224
+ "rerValidityCondition": {
225
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ValidityCondition"
226
+ },
227
+ "rerOccupantCondition": {
228
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/OccupantCondition"
229
+ },
230
+ "rerUserCondition": {
231
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/UserCondition"
232
+ },
233
+ "rerTrafficTypeCondition": {
234
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/TrafficTypeCondition"
235
+ }
236
+ }
237
+ },
238
+ "ConditionOperator": {
239
+ "title": "ConditionOperator",
240
+ "description": "The logical operator to be used in a test of conditions.",
241
+ "type": "string",
242
+ "enum": [
243
+ "and",
244
+ "or",
245
+ "xor",
246
+ "extendedG"
247
+ ]
248
+ },
249
+ "ConditionOperatorG": {
250
+ "title": "ConditionOperatorG",
251
+ "type": "object",
252
+ "additionalProperties": false,
253
+ "properties": {
254
+ "value": {
255
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ConditionOperator"
256
+ },
257
+ "extendedValueG": {
258
+ "type": "string"
259
+ }
260
+ },
261
+ "required": [
262
+ "value"
263
+ ]
264
+ },
265
+ "ConditionSet": {
266
+ "title": "ConditionSet",
267
+ "description": "Groups a number of conditions into a condition set.",
268
+ "type": "object",
269
+ "additionalProperties": false,
270
+ "properties": {
271
+ "negate": {
272
+ "title": "negate",
273
+ "description": "If set to true means that the entire condition shall be negated.",
274
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
275
+ },
276
+ "operator": {
277
+ "title": "operator",
278
+ "description": "Specifies the operator to be applied between the conditions in the set.",
279
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ConditionOperatorG"
280
+ },
281
+ "legalBasis": {
282
+ "title": "legalBasis",
283
+ "$ref": "DATEXII_3_TrafficRegulation.json#/$defs/LegalBasis"
284
+ },
285
+ "conditions": {
286
+ "title": "conditions",
287
+ "description": "Specifies the conditions that are present in the set",
288
+ "type": "array",
289
+ "items": {
290
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ConditionG"
291
+ },
292
+ "minItems": 1
293
+ },
294
+ "rerConditionExtensionG": {
295
+ "title": "rerConditionExtensionG",
296
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
297
+ },
298
+ "rerConditionSetExtensionG": {
299
+ "title": "rerConditionSetExtensionG",
300
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
301
+ }
302
+ },
303
+ "required": [
304
+ "operator",
305
+ "conditions"
306
+ ]
307
+ },
308
+ "DetailedAllocation": {
309
+ "title": "DetailedAllocation",
310
+ "description": "Allocation using the full Condition model of namespace TrafficRegulations ",
311
+ "type": "object",
312
+ "additionalProperties": false,
313
+ "properties": {
314
+ "routeProportion": {
315
+ "title": "routeProportion",
316
+ "description": "The weight of this specific route against other alternative routes (and possibly the original route) that have identical specific applied characteristics in their route allocation. Those sets of weights should always sum up to 100%.",
317
+ "$ref": "DATEXII_3_Common.json#/$defs/Percentage"
318
+ },
319
+ "reroutingAdvice": {
320
+ "title": "reroutingAdvice",
321
+ "description": "Type of rerouting advice instigated by operator.",
322
+ "type": "array",
323
+ "items": {
324
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ReroutingAdviceTypeEnumG"
325
+ },
326
+ "minItems": 0
327
+ },
328
+ "complianceOptionOverride": {
329
+ "title": "complianceOptionOverride",
330
+ "description": "Override the compliance option for the specific route to make it mandatory or advisory.",
331
+ "$ref": "DATEXII_3_Situation.json#/$defs/ComplianceOptionEnumG"
332
+ },
333
+ "routeEffectivlyClosedForAllocation": {
334
+ "title": "routeEffectivlyClosedForAllocation",
335
+ "description": "For the specification given in this particular allocation set, the route is closed.",
336
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
337
+ },
338
+ "condition": {
339
+ "title": "condition",
340
+ "$ref": "DATEXII_3_TrafficRegulation.json#/$defs/ConditionG"
341
+ },
342
+ "rerRouteAllocationExtensionG": {
343
+ "title": "rerRouteAllocationExtensionG",
344
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
345
+ },
346
+ "rerDetailedAllocationExtensionG": {
347
+ "title": "rerDetailedAllocationExtensionG",
348
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
349
+ }
350
+ },
351
+ "required": [
352
+ "condition"
353
+ ]
354
+ },
355
+ "FacilityTypeEnum": {
356
+ "title": "FacilityTypeEnum",
357
+ "description": "A collection of different facilities a route might lead to.",
358
+ "type": "string",
359
+ "enum": [
360
+ "carPark",
361
+ "parking",
362
+ "publicTransport",
363
+ "parkAndDrive",
364
+ "parkAndRide",
365
+ "parkAndCycle",
366
+ "parkAndWalk",
367
+ "kissAndRide",
368
+ "liftshare",
369
+ "carSharing",
370
+ "restArea",
371
+ "serviceArea",
372
+ "eventParking",
373
+ "dropOff",
374
+ "overnightParking",
375
+ "pointOfInterest",
376
+ "other",
377
+ "extendedG"
378
+ ]
379
+ },
380
+ "FacilityTypeEnumG": {
381
+ "title": "FacilityTypeEnumG",
382
+ "type": "object",
383
+ "additionalProperties": false,
384
+ "properties": {
385
+ "value": {
386
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/FacilityTypeEnum"
387
+ },
388
+ "extendedValueG": {
389
+ "type": "string"
390
+ }
391
+ },
392
+ "required": [
393
+ "value"
394
+ ]
395
+ },
396
+ "OccupantCondition": {
397
+ "title": "OccupantCondition",
398
+ "description": "Conditions for the occupants of a vehicle.",
399
+ "type": "object",
400
+ "additionalProperties": false,
401
+ "properties": {
402
+ "negate": {
403
+ "title": "negate",
404
+ "description": "If set to true means that the entire condition shall be negated.",
405
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
406
+ },
407
+ "disabledWithPermit": {
408
+ "title": "disabledWithPermit",
409
+ "description": "Occupant is disabled with permit.",
410
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
411
+ },
412
+ "numberOfOccupants": {
413
+ "title": "numberOfOccupants",
414
+ "description": "Total number of occupants including the driver.",
415
+ "$ref": "DATEXII_3_Common.json#/$defs/NonNegativeInteger"
416
+ },
417
+ "legalBasis": {
418
+ "title": "legalBasis",
419
+ "$ref": "DATEXII_3_TrafficRegulation.json#/$defs/LegalBasis"
420
+ },
421
+ "rerConditionExtensionG": {
422
+ "title": "rerConditionExtensionG",
423
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
424
+ },
425
+ "rerOccupantConditionExtensionG": {
426
+ "title": "rerOccupantConditionExtensionG",
427
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
428
+ }
429
+ }
430
+ },
431
+ "PriorityIndex": {
432
+ "title": "PriorityIndex",
433
+ "description": "A priority index for routes with 0 = no priority; up to 10 = highest priority.",
434
+ "$ref": "DATEXII_3_Common.json#/$defs/NonNegativeInteger",
435
+ "minimum": 0.0,
436
+ "maximum": 10.0
437
+ },
438
+ "PtSchedule": {
439
+ "title": "PtSchedule",
440
+ "description": "A rough schedule for one or more public transport lines from this stop",
441
+ "type": "object",
442
+ "additionalProperties": false,
443
+ "properties": {
444
+ "idG": {
445
+ "type": "string"
446
+ },
447
+ "versionG": {
448
+ "type": "string"
449
+ },
450
+ "lastUpdated": {
451
+ "title": "lastUpdated",
452
+ "description": "The timestamp of the latest update of this information.",
453
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
454
+ },
455
+ "line": {
456
+ "title": "line",
457
+ "description": "Line or multiple lines for which this schedule is valid",
458
+ "type": "array",
459
+ "items": {
460
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
461
+ },
462
+ "minItems": 0
463
+ },
464
+ "nextDepartures": {
465
+ "title": "nextDepartures",
466
+ "description": "The next departures for this line / these lines",
467
+ "type": "array",
468
+ "items": {
469
+ "$ref": "DATEXII_3_Common.json#/$defs/Time"
470
+ },
471
+ "minItems": 0
472
+ },
473
+ "destination": {
474
+ "title": "destination",
475
+ "description": "A destination that can be reached from this stop",
476
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
477
+ },
478
+ "interval": {
479
+ "title": "interval",
480
+ "description": "The interval for reaching the destination from this stop",
481
+ "$ref": "DATEXII_3_Common.json#/$defs/Seconds"
482
+ },
483
+ "travelTimeToDestination": {
484
+ "title": "travelTimeToDestination",
485
+ "description": "The travel time to reach the destination from this stop",
486
+ "$ref": "DATEXII_3_Common.json#/$defs/Seconds"
487
+ },
488
+ "ptType": {
489
+ "title": "ptType",
490
+ "description": "The type of public transport",
491
+ "type": "array",
492
+ "items": {
493
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/PublicTransportTypeEnumG"
494
+ },
495
+ "minItems": 0
496
+ },
497
+ "ptVehicleType": {
498
+ "title": "ptVehicleType",
499
+ "description": "The type of public transport vehicle.",
500
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/PublicTransportVehicleTypeG"
501
+ },
502
+ "ptVehicleName": {
503
+ "title": "ptVehicleName",
504
+ "description": "A name of the specific vehicle type, for example \"Railjet\".",
505
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
506
+ },
507
+ "ptOperator": {
508
+ "title": "ptOperator",
509
+ "description": "Information about the operator of this public transport.",
510
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
511
+ },
512
+ "validity": {
513
+ "title": "validity",
514
+ "$ref": "DATEXII_3_Common.json#/$defs/Validity"
515
+ },
516
+ "rerPtScheduleExtensionG": {
517
+ "title": "rerPtScheduleExtensionG",
518
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
519
+ }
520
+ },
521
+ "required": [
522
+ "idG",
523
+ "versionG",
524
+ "lastUpdated"
525
+ ]
526
+ },
527
+ "PublicTransportTypeEnum": {
528
+ "title": "PublicTransportTypeEnum",
529
+ "description": "Special measures in the context of public transport.",
530
+ "type": "string",
531
+ "enum": [
532
+ "freePublicTransport",
533
+ "nonFreePublicTransport",
534
+ "onDemandTraffic",
535
+ "railReplacementService",
536
+ "shuttleService",
537
+ "extendedG"
538
+ ]
539
+ },
540
+ "PublicTransportTypeEnumG": {
541
+ "title": "PublicTransportTypeEnumG",
542
+ "type": "object",
543
+ "additionalProperties": false,
544
+ "properties": {
545
+ "value": {
546
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/PublicTransportTypeEnum"
547
+ },
548
+ "extendedValueG": {
549
+ "type": "string"
550
+ }
551
+ },
552
+ "required": [
553
+ "value"
554
+ ]
555
+ },
556
+ "PublicTransportVehicleType": {
557
+ "title": "PublicTransportVehicleType",
558
+ "description": "Types of public transport vehicles",
559
+ "type": "string",
560
+ "enum": [
561
+ "bus",
562
+ "coach",
563
+ "miniBus",
564
+ "subway",
565
+ "taxi",
566
+ "train",
567
+ "tram",
568
+ "extendedG"
569
+ ]
570
+ },
571
+ "PublicTransportVehicleTypeG": {
572
+ "title": "PublicTransportVehicleTypeG",
573
+ "type": "object",
574
+ "additionalProperties": false,
575
+ "properties": {
576
+ "value": {
577
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/PublicTransportVehicleType"
578
+ },
579
+ "extendedValueG": {
580
+ "type": "string"
581
+ }
582
+ },
583
+ "required": [
584
+ "value"
585
+ ]
586
+ },
587
+ "ReroutingAdviceTypeEnum": {
588
+ "title": "ReroutingAdviceTypeEnum",
589
+ "description": "Advices related to rerouting.",
590
+ "type": "string",
591
+ "enum": [
592
+ "doNotFollowDiversionSigns",
593
+ "doNotUseEntry",
594
+ "doNotUseExit",
595
+ "doNotUseIntersectionOrJunction",
596
+ "followDiversionSigns",
597
+ "followLocalDiversion",
598
+ "followSpecialMarkers",
599
+ "useEntry",
600
+ "useExit",
601
+ "useIntersectionOrJunction",
602
+ "extendedG"
603
+ ]
604
+ },
605
+ "ReroutingAdviceTypeEnumG": {
606
+ "title": "ReroutingAdviceTypeEnumG",
607
+ "type": "object",
608
+ "additionalProperties": false,
609
+ "properties": {
610
+ "value": {
611
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ReroutingAdviceTypeEnum"
612
+ },
613
+ "extendedValueG": {
614
+ "type": "string"
615
+ }
616
+ },
617
+ "required": [
618
+ "value"
619
+ ]
620
+ },
621
+ "ReroutingManagementEnhanced": {
622
+ "title": "ReroutingManagementEnhanced",
623
+ "description": "Description of one or more alternative routes (and additional measures) which are differentiated from the original route that may be congested, blocked or closed.",
624
+ "type": "object",
625
+ "additionalProperties": false,
626
+ "properties": {
627
+ "name": {
628
+ "title": "name",
629
+ "description": "A given name for the specific route management.",
630
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
631
+ },
632
+ "type": {
633
+ "title": "type",
634
+ "description": "The type of rerouting.",
635
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ReroutingTypeEnumG"
636
+ },
637
+ "bindingTrafficRegulation": {
638
+ "title": "bindingTrafficRegulation",
639
+ "description": "Indicates that the rerouting information is a binding traffic regulation (i.e. shall be followed).",
640
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
641
+ },
642
+ "preventiveMeasure": {
643
+ "title": "preventiveMeasure",
644
+ "description": "Indicates an action that is taken in advance (e.g. before an incident or traffic disruption occurs).",
645
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
646
+ },
647
+ "routingOrigin": {
648
+ "title": "routingOrigin",
649
+ "description": "A location serving as a geo-filter for routing itineraries that have their starting point within this location and for which this rerouting management should become applicable.",
650
+ "type": "array",
651
+ "items": {
652
+ "$ref": "DATEXII_3_LocationReferencing.json#/$defs/LocationG"
653
+ },
654
+ "minItems": 0
655
+ },
656
+ "routingThrough": {
657
+ "title": "routingThrough",
658
+ "description": "A location serving as a geo-filter for routing itineraries that touch or pass through this location and for which this rerouting management should become applicable.",
659
+ "type": "array",
660
+ "items": {
661
+ "$ref": "DATEXII_3_LocationReferencing.json#/$defs/LocationG"
662
+ },
663
+ "minItems": 0
664
+ },
665
+ "routingDestination": {
666
+ "title": "routingDestination",
667
+ "description": "A location serving as a geo-filter for routing itineraries that have their end point within this location and for which this rerouting management should become applicable.",
668
+ "type": "array",
669
+ "items": {
670
+ "$ref": "DATEXII_3_LocationReferencing.json#/$defs/LocationG"
671
+ },
672
+ "minItems": 0
673
+ },
674
+ "originalRoute": {
675
+ "title": "originalRoute",
676
+ "description": "The original route, for which alternative routes are specified, which may be congested, blocked or closed.",
677
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/RouteDescription"
678
+ },
679
+ "alternativeRoute": {
680
+ "title": "alternativeRoute",
681
+ "description": "An alternative route on the transport network that provides a functionally equivalent but distinct route from the original route.",
682
+ "type": "array",
683
+ "items": {
684
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/RouteDescription"
685
+ },
686
+ "minItems": 0
687
+ }
688
+ }
689
+ },
690
+ "ReroutingTypeEnum": {
691
+ "title": "ReroutingTypeEnum",
692
+ "description": "Types of rerouting management.",
693
+ "type": "string",
694
+ "enum": [
695
+ "alternative",
696
+ "kpiForNavigationServices",
697
+ "parkAndRide",
698
+ "parkingGuidance",
699
+ "strategyConform",
700
+ "urbanCompatible",
701
+ "extendedG"
702
+ ]
703
+ },
704
+ "ReroutingTypeEnumG": {
705
+ "title": "ReroutingTypeEnumG",
706
+ "type": "object",
707
+ "additionalProperties": false,
708
+ "properties": {
709
+ "value": {
710
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ReroutingTypeEnum"
711
+ },
712
+ "extendedValueG": {
713
+ "type": "string"
714
+ }
715
+ },
716
+ "required": [
717
+ "value"
718
+ ]
719
+ },
720
+ "RouteAllocation": {
721
+ "title": "RouteAllocation",
722
+ "description": "Supports the allocation of traffic by proportion for a specific route against other alternative routes that perform the same functional purpose. This may also include the original route.",
723
+ "type": "object",
724
+ "additionalProperties": false,
725
+ "properties": {
726
+ "routeProportion": {
727
+ "title": "routeProportion",
728
+ "description": "The weight of this specific route against other alternative routes (and possibly the original route) that have identical specific applied characteristics in their route allocation. Those sets of weights should always sum up to 100%.",
729
+ "$ref": "DATEXII_3_Common.json#/$defs/Percentage"
730
+ },
731
+ "reroutingAdvice": {
732
+ "title": "reroutingAdvice",
733
+ "description": "Type of rerouting advice instigated by operator.",
734
+ "type": "array",
735
+ "items": {
736
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/ReroutingAdviceTypeEnumG"
737
+ },
738
+ "minItems": 0
739
+ },
740
+ "complianceOptionOverride": {
741
+ "title": "complianceOptionOverride",
742
+ "description": "Override the compliance option for the specific route to make it mandatory or advisory.",
743
+ "$ref": "DATEXII_3_Situation.json#/$defs/ComplianceOptionEnumG"
744
+ },
745
+ "routeEffectivlyClosedForAllocation": {
746
+ "title": "routeEffectivlyClosedForAllocation",
747
+ "description": "For the specification given in this particular allocation set, the route is closed.",
748
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
749
+ },
750
+ "rerRouteAllocationExtensionG": {
751
+ "title": "rerRouteAllocationExtensionG",
752
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
753
+ }
754
+ }
755
+ },
756
+ "RouteAllocationG": {
757
+ "title": "RouteAllocationG",
758
+ "description": "Only one of the properties shall be used in an instance.",
759
+ "type": "object",
760
+ "additionalProperties": false,
761
+ "properties": {
762
+ "rerRouteAllocation": {
763
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/RouteAllocation"
764
+ },
765
+ "rerDetailedAllocation": {
766
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/DetailedAllocation"
767
+ },
768
+ "rerBasicAllocation": {
769
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/BasicAllocation"
770
+ }
771
+ }
772
+ },
773
+ "RouteDescription": {
774
+ "title": "RouteDescription",
775
+ "description": "Description of a route (original/alternatives), the location of which is defined by an Itinerary.",
776
+ "type": "object",
777
+ "additionalProperties": false,
778
+ "properties": {
779
+ "nameOfRoute": {
780
+ "title": "nameOfRoute",
781
+ "description": "Human oriented name or identifier for the route for better usability.",
782
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
783
+ },
784
+ "routeClosed": {
785
+ "title": "routeClosed",
786
+ "description": "Whether the route is closed for all kind of traffic",
787
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
788
+ },
789
+ "isPublicTransportRoute": {
790
+ "title": "isPublicTransportRoute",
791
+ "description": "Indication, if the route itself is a public transport route. A schedule may be offered.",
792
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
793
+ },
794
+ "troReference": {
795
+ "title": "troReference",
796
+ "description": "A reference to a coresponding traffic regulation order",
797
+ "type": "array",
798
+ "items": {
799
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/TrafficRegulationOrderVersionedReferenceG"
800
+ },
801
+ "minItems": 0
802
+ },
803
+ "priorityIndex": {
804
+ "title": "priorityIndex",
805
+ "description": "A priority index for this route. 0 = no priority; up to 10 = highest priority.",
806
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/PriorityIndex"
807
+ },
808
+ "capacityAvailable": {
809
+ "title": "capacityAvailable",
810
+ "description": "Indicates that capacities are still available on this route (or not).",
811
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
812
+ },
813
+ "signedRerouting": {
814
+ "title": "signedRerouting",
815
+ "description": "Indication of whether the rerouting is signed with road traffic signs.",
816
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
817
+ },
818
+ "entry": {
819
+ "title": "entry",
820
+ "description": "The specified entry on to a road, not forming part of the original route, at which the alternative route commences.",
821
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
822
+ },
823
+ "exit": {
824
+ "title": "exit",
825
+ "description": "The specified exit from the normal route/road at which this specific alternative route commences.",
826
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
827
+ },
828
+ "roadOrJunctionNumber": {
829
+ "title": "roadOrJunctionNumber",
830
+ "description": "The intersecting road or the junction at which this specific alternative route commences.",
831
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
832
+ },
833
+ "trafficConstriction": {
834
+ "title": "trafficConstriction",
835
+ "description": "Traffic constriction for this route.",
836
+ "$ref": "DATEXII_3_Situation.json#/$defs/TrafficConstrictionTypeEnumG"
837
+ },
838
+ "routeLength": {
839
+ "title": "routeLength",
840
+ "description": "The length of the route.",
841
+ "$ref": "DATEXII_3_Common.json#/$defs/MetresAsNonNegativeInteger"
842
+ },
843
+ "itinerary": {
844
+ "title": "itinerary",
845
+ "description": "Group of one or more physically separate locations arranged as an ordered set that defines a route (SOURCE: EN16157-2)",
846
+ "$ref": "DATEXII_3_LocationReferencing.json#/$defs/ItineraryG"
847
+ },
848
+ "routeAllocation": {
849
+ "title": "routeAllocation",
850
+ "type": "array",
851
+ "items": {
852
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/RouteAllocationG"
853
+ },
854
+ "minItems": 0
855
+ },
856
+ "specificDestinationFacility": {
857
+ "title": "specificDestinationFacility",
858
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/SpecificDestinationFacility"
859
+ },
860
+ "ptRouteSchedule": {
861
+ "title": "ptRouteSchedule",
862
+ "description": "Public transport route schedule for the associated RouteDescription",
863
+ "type": "array",
864
+ "items": {
865
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/PtSchedule"
866
+ },
867
+ "minItems": 0
868
+ },
869
+ "capacityManagementMeasure": {
870
+ "title": "capacityManagementMeasure",
871
+ "type": "array",
872
+ "items": {
873
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/CapacityManagementMeasure"
874
+ },
875
+ "minItems": 0
876
+ },
877
+ "supplementaryPositionalDescription": {
878
+ "title": "supplementaryPositionalDescription",
879
+ "$ref": "DATEXII_3_LocationReferencing.json#/$defs/SupplementaryPositionalDescription"
880
+ },
881
+ "abnormalTraffic": {
882
+ "title": "abnormalTraffic",
883
+ "$ref": "DATEXII_3_Situation.json#/$defs/AbnormalTraffic"
884
+ },
885
+ "routeDelays": {
886
+ "title": "routeDelays",
887
+ "description": "Details of the delays on this specific route. It is recommended to only use one of the optional attributes to avoid confusion.",
888
+ "$ref": "DATEXII_3_Situation.json#/$defs/Delays"
889
+ },
890
+ "trafficStatus": {
891
+ "title": "trafficStatus",
892
+ "$ref": "DATEXII_3_RoadTrafficData.json#/$defs/TrafficStatusValue"
893
+ },
894
+ "travelTimeData": {
895
+ "title": "travelTimeData",
896
+ "type": "array",
897
+ "items": {
898
+ "$ref": "DATEXII_3_RoadTrafficData.json#/$defs/TravelTimeData"
899
+ },
900
+ "minItems": 0
901
+ },
902
+ "rerRouteDescriptionExtensionG": {
903
+ "title": "rerRouteDescriptionExtensionG",
904
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
905
+ }
906
+ }
907
+ },
908
+ "SpecificDestinationFacility": {
909
+ "title": "SpecificDestinationFacility",
910
+ "description": "A specifric facility as a destination for the routing/rerouting.",
911
+ "type": "object",
912
+ "additionalProperties": false,
913
+ "properties": {
914
+ "idG": {
915
+ "type": "string"
916
+ },
917
+ "versionG": {
918
+ "type": "string"
919
+ },
920
+ "type": {
921
+ "title": "type",
922
+ "description": "The type of this specific destination facility.",
923
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/FacilityTypeEnumG"
924
+ },
925
+ "otherSpecificDestinationFacility": {
926
+ "title": "otherSpecificDestinationFacility",
927
+ "description": "A specific destination facility for this route using a free text.",
928
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
929
+ },
930
+ "freeParking": {
931
+ "title": "freeParking",
932
+ "description": "Indication whether parking is for free or not at this facility.",
933
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
934
+ },
935
+ "ptSchedule": {
936
+ "title": "ptSchedule",
937
+ "type": "array",
938
+ "items": {
939
+ "$ref": "DATEXII_3_ReroutingManagementEnhanced.json#/$defs/PtSchedule"
940
+ },
941
+ "minItems": 0
942
+ },
943
+ "facFacilityObjectExtensionG": {
944
+ "title": "facFacilityObjectExtensionG",
945
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
946
+ },
947
+ "facFacilityExtensionG": {
948
+ "title": "facFacilityExtensionG",
949
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
950
+ },
951
+ "rerSpecificDestinationFacilityExtensionG": {
952
+ "title": "rerSpecificDestinationFacilityExtensionG",
953
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
954
+ }
955
+ },
956
+ "required": [
957
+ "idG",
958
+ "versionG",
959
+ "type"
960
+ ]
961
+ },
962
+ "TrafficRegulationOrderVersionedReferenceG": {
963
+ "title": "TrafficRegulationOrderVersionedReferenceG",
964
+ "type": "object",
965
+ "properties": {
966
+ "targetClass": {
967
+ "type": "string",
968
+ "default": "TrafficRegulationOrder"
969
+ },
970
+ "idG": {
971
+ "type": "string"
972
+ },
973
+ "versionG": {
974
+ "type": "string"
975
+ }
976
+ },
977
+ "required": [
978
+ "targetClass",
979
+ "idG"
980
+ ]
981
+ },
982
+ "TrafficSignal": {
983
+ "title": "TrafficSignal",
984
+ "description": "Road equipment for controlling traffic with a set of automatically operated lights of different colours.",
985
+ "type": "object",
986
+ "additionalProperties": false,
987
+ "properties": {
988
+ "index": {
989
+ "title": "index",
990
+ "description": "An index to assign a fixed order for multiple elements of this type.",
991
+ "$ref": "DATEXII_3_Common.json#/$defs/Integer"
992
+ },
993
+ "externalId": {
994
+ "title": "externalId",
995
+ "description": "An external identifier to identify the traffic signal.",
996
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
997
+ },
998
+ "greenTimeAdjustmentOverride": {
999
+ "title": "greenTimeAdjustmentOverride",
1000
+ "description": "Additional or reduced green time for this traffic signal. Overwrites the default value.",
1001
+ "$ref": "DATEXII_3_Common.json#/$defs/Seconds"
1002
+ },
1003
+ "cycleLengthOverride": {
1004
+ "title": "cycleLengthOverride",
1005
+ "description": "The cycle time for this traffic signal. Overwrites the default value.",
1006
+ "$ref": "DATEXII_3_Common.json#/$defs/Seconds"
1007
+ },
1008
+ "signalGroup": {
1009
+ "title": "signalGroup",
1010
+ "description": "Corresponding signal group object described in more detail externally,",
1011
+ "$ref": "DATEXII_3_Common.json#/$defs/Reference"
1012
+ },
1013
+ "notionalMidPoint": {
1014
+ "title": "notionalMidPoint",
1015
+ "description": "Abstracted location representing a singular reference location for all traffic signals at a single intersection (usually its midpoint or helpwise the horizontal midpoint of the corresponding stop line).",
1016
+ "$ref": "DATEXII_3_LocationReferencing.json#/$defs/PointLocationG"
1017
+ },
1018
+ "rerTrafficSignalExtensionG": {
1019
+ "title": "rerTrafficSignalExtensionG",
1020
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1021
+ }
1022
+ },
1023
+ "required": [
1024
+ "index"
1025
+ ]
1026
+ },
1027
+ "TrafficTypeCondition": {
1028
+ "title": "TrafficTypeCondition",
1029
+ "description": "Conditions for traffic types",
1030
+ "type": "object",
1031
+ "additionalProperties": false,
1032
+ "properties": {
1033
+ "negate": {
1034
+ "title": "negate",
1035
+ "description": "If set to true means that the entire condition shall be negated.",
1036
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
1037
+ },
1038
+ "trafficType": {
1039
+ "title": "trafficType",
1040
+ "description": "Exclduing certain types of traffic.",
1041
+ "type": "array",
1042
+ "items": {
1043
+ "$ref": "DATEXII_3_Situation.json#/$defs/TrafficTypeEnumG"
1044
+ },
1045
+ "minItems": 0
1046
+ },
1047
+ "legalBasis": {
1048
+ "title": "legalBasis",
1049
+ "$ref": "DATEXII_3_TrafficRegulation.json#/$defs/LegalBasis"
1050
+ },
1051
+ "rerConditionExtensionG": {
1052
+ "title": "rerConditionExtensionG",
1053
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1054
+ },
1055
+ "rerTrafficTypeConditionExtensionG": {
1056
+ "title": "rerTrafficTypeConditionExtensionG",
1057
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1058
+ }
1059
+ }
1060
+ },
1061
+ "UserCondition": {
1062
+ "title": "UserCondition",
1063
+ "description": "Conditions depending on specific users",
1064
+ "type": "object",
1065
+ "additionalProperties": false,
1066
+ "properties": {
1067
+ "negate": {
1068
+ "title": "negate",
1069
+ "description": "If set to true means that the entire condition shall be negated.",
1070
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
1071
+ },
1072
+ "users": {
1073
+ "title": "users",
1074
+ "description": "A restriction for certain users.",
1075
+ "type": "array",
1076
+ "items": {
1077
+ "$ref": "DATEXII_3_Facilities.json#/$defs/UserTypeEnumG"
1078
+ },
1079
+ "minItems": 0
1080
+ },
1081
+ "legalBasis": {
1082
+ "title": "legalBasis",
1083
+ "$ref": "DATEXII_3_TrafficRegulation.json#/$defs/LegalBasis"
1084
+ },
1085
+ "rerConditionExtensionG": {
1086
+ "title": "rerConditionExtensionG",
1087
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1088
+ },
1089
+ "rerUserConditionExtensionG": {
1090
+ "title": "rerUserConditionExtensionG",
1091
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1092
+ }
1093
+ }
1094
+ },
1095
+ "ValidityCondition": {
1096
+ "title": "ValidityCondition",
1097
+ "description": "Conditions for time validity of a traffic regulation.",
1098
+ "type": "object",
1099
+ "additionalProperties": false,
1100
+ "properties": {
1101
+ "negate": {
1102
+ "title": "negate",
1103
+ "description": "If set to true means that the entire condition shall be negated.",
1104
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
1105
+ },
1106
+ "legalBasis": {
1107
+ "title": "legalBasis",
1108
+ "$ref": "DATEXII_3_TrafficRegulation.json#/$defs/LegalBasis"
1109
+ },
1110
+ "validity": {
1111
+ "title": "validity",
1112
+ "$ref": "DATEXII_3_Common.json#/$defs/Validity"
1113
+ },
1114
+ "rerConditionExtensionG": {
1115
+ "title": "rerConditionExtensionG",
1116
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1117
+ },
1118
+ "rerValidityConditionExtensionG": {
1119
+ "title": "rerValidityConditionExtensionG",
1120
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1121
+ }
1122
+ },
1123
+ "required": [
1124
+ "validity"
1125
+ ]
1126
+ },
1127
+ "VehicleCondition": {
1128
+ "title": "VehicleCondition",
1129
+ "description": "Conditions for a vehicle.",
1130
+ "type": "object",
1131
+ "additionalProperties": false,
1132
+ "properties": {
1133
+ "negate": {
1134
+ "title": "negate",
1135
+ "description": "If set to true means that the entire condition shall be negated.",
1136
+ "$ref": "DATEXII_3_Common.json#/$defs/Boolean"
1137
+ },
1138
+ "legalBasis": {
1139
+ "title": "legalBasis",
1140
+ "$ref": "DATEXII_3_TrafficRegulation.json#/$defs/LegalBasis"
1141
+ },
1142
+ "vehicleCharacteristics": {
1143
+ "title": "vehicleCharacteristics",
1144
+ "$ref": "DATEXII_3_Common.json#/$defs/VehicleCharacteristics"
1145
+ },
1146
+ "rerConditionExtensionG": {
1147
+ "title": "rerConditionExtensionG",
1148
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1149
+ },
1150
+ "rerVehicleConditionExtensionG": {
1151
+ "title": "rerVehicleConditionExtensionG",
1152
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1153
+ }
1154
+ },
1155
+ "required": [
1156
+ "vehicleCharacteristics"
1157
+ ]
1158
+ }
1159
+ }
1160
+ }