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,1415 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$defs": {
4
+ "AllFaultsOfSingleDevice": {
5
+ "title": "AllFaultsOfSingleDevice",
6
+ "description": "A collection of all current faults of a service fulfilled by a single device. An empty structure means that there are no faults reported for the device.",
7
+ "type": "object",
8
+ "additionalProperties": false,
9
+ "properties": {
10
+ "operatingProperlySince": {
11
+ "title": "operatingProperlySince",
12
+ "description": "Time, since when the device is working properly (without fault).",
13
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
14
+ },
15
+ "deviceReference": {
16
+ "title": "deviceReference",
17
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceReferenceG"
18
+ },
19
+ "deviceFault": {
20
+ "title": "deviceFault",
21
+ "type": "array",
22
+ "items": {
23
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceFault"
24
+ },
25
+ "minItems": 0
26
+ },
27
+ "fstAllFaultsOfSingleDeviceExtensionG": {
28
+ "title": "fstAllFaultsOfSingleDeviceExtensionG",
29
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
30
+ }
31
+ },
32
+ "required": [
33
+ "deviceReference"
34
+ ]
35
+ },
36
+ "CatalogueInformation": {
37
+ "title": "CatalogueInformation",
38
+ "description": "A reference to specific additional information by means of a predefined element out of a catalogue. The type of reference information depends on the data structure this class is aggregated to.",
39
+ "type": "object",
40
+ "additionalProperties": false,
41
+ "properties": {
42
+ "catalogueReferenceByOID": {
43
+ "title": "catalogueReferenceByOID",
44
+ "description": "The reference to a catalogue by its OID according to ISO/IEC 8824-1:2015 using the dot-notation (example: \"1.2.250.1\").",
45
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/ObjectIdentifier"
46
+ },
47
+ "catalogueElement": {
48
+ "title": "catalogueElement",
49
+ "description": "A reference to a specific element within the specified catalogue. The notation of this reference also depends on the specified catalogue.",
50
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
51
+ },
52
+ "fstCatalogueInformationExtensionG": {
53
+ "title": "fstCatalogueInformationExtensionG",
54
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
55
+ }
56
+ },
57
+ "required": [
58
+ "catalogueElement",
59
+ "catalogueReferenceByOID"
60
+ ]
61
+ },
62
+ "Component": {
63
+ "title": "Component",
64
+ "description": "Components of a device which have some special interest such as having status and faults of their own",
65
+ "type": "object",
66
+ "additionalProperties": false,
67
+ "properties": {
68
+ "idG": {
69
+ "type": "string"
70
+ },
71
+ "versionG": {
72
+ "type": "string"
73
+ },
74
+ "typeOfDevice": {
75
+ "title": "typeOfDevice",
76
+ "description": "Information about the type of the device.",
77
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceTypeEnumG"
78
+ },
79
+ "lastUpdateOfDeviceInformation": {
80
+ "title": "lastUpdateOfDeviceInformation",
81
+ "description": "Time of the last update of the device information, i.e. the time of the information in this class was last updated.",
82
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
83
+ },
84
+ "externalDeviceId": {
85
+ "title": "externalDeviceId",
86
+ "description": "An external id or name for the device.",
87
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
88
+ },
89
+ "lastDeviceCheck": {
90
+ "title": "lastDeviceCheck",
91
+ "description": "The time the device was last checked. Depending on local policies, this can be a physical check or just an online check.",
92
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
93
+ },
94
+ "softwareVersion": {
95
+ "title": "softwareVersion",
96
+ "description": "Information on the current software version of the device.",
97
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
98
+ },
99
+ "softwareVersionDate": {
100
+ "title": "softwareVersionDate",
101
+ "description": "Information on the date of the current software version of the device.",
102
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
103
+ },
104
+ "additionalDeviceInformation": {
105
+ "title": "additionalDeviceInformation",
106
+ "description": "Any additional device information.",
107
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
108
+ },
109
+ "ipAddress": {
110
+ "title": "ipAddress",
111
+ "description": "IP address associated with the device",
112
+ "$ref": "DATEXII_3_CommonExtension.json#/$defs/IpAddress"
113
+ },
114
+ "portNumber": {
115
+ "title": "portNumber",
116
+ "description": "Primary TCP or UDP port number associated with device",
117
+ "$ref": "DATEXII_3_CommonExtension.json#/$defs/PortNumber"
118
+ },
119
+ "componentType": {
120
+ "title": "componentType",
121
+ "description": "Type of device component",
122
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceComponentEnumG"
123
+ },
124
+ "accountableAuthority": {
125
+ "title": "accountableAuthority",
126
+ "description": "Information about the authority accountable for this device. Use this attribute only in case it differs from the accountable authority of the table of devices or the information manager declared within the PayloadPublication.",
127
+ "$ref": "DATEXII_3_Common.json#/$defs/InternationalIdentifier"
128
+ },
129
+ "pointLocation": {
130
+ "title": "pointLocation",
131
+ "$ref": "DATEXII_3_LocationReferencing.json#/$defs/PointLocationG"
132
+ },
133
+ "physicalDeviceDetails": {
134
+ "title": "physicalDeviceDetails",
135
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/PhysicalDeviceDetails"
136
+ },
137
+ "component": {
138
+ "title": "component",
139
+ "description": "Components of this device which have some special interest such as having status and faults of their own",
140
+ "type": "array",
141
+ "items": {
142
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/Component"
143
+ },
144
+ "minItems": 0
145
+ },
146
+ "dependsOn": {
147
+ "title": "dependsOn",
148
+ "description": "Other devices (other than components of this device) whose services this device depends on in order to deliver its service",
149
+ "type": "array",
150
+ "items": {
151
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceReferenceG"
152
+ },
153
+ "minItems": 0
154
+ },
155
+ "fstDeviceExtensionG": {
156
+ "title": "fstDeviceExtensionG",
157
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
158
+ },
159
+ "fstComponentExtensionG": {
160
+ "title": "fstComponentExtensionG",
161
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
162
+ }
163
+ },
164
+ "required": [
165
+ "idG",
166
+ "versionG",
167
+ "lastUpdateOfDeviceInformation",
168
+ "typeOfDevice",
169
+ "componentType",
170
+ "pointLocation"
171
+ ]
172
+ },
173
+ "Device": {
174
+ "title": "Device",
175
+ "description": "Static information about a logical device that delivers a service. A device can announce itself, or the information can be enriched by operators.",
176
+ "type": "object",
177
+ "additionalProperties": false,
178
+ "properties": {
179
+ "idG": {
180
+ "type": "string"
181
+ },
182
+ "versionG": {
183
+ "type": "string"
184
+ },
185
+ "typeOfDevice": {
186
+ "title": "typeOfDevice",
187
+ "description": "Information about the type of the device.",
188
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceTypeEnumG"
189
+ },
190
+ "lastUpdateOfDeviceInformation": {
191
+ "title": "lastUpdateOfDeviceInformation",
192
+ "description": "Time of the last update of the device information, i.e. the time of the information in this class was last updated.",
193
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
194
+ },
195
+ "externalDeviceId": {
196
+ "title": "externalDeviceId",
197
+ "description": "An external id or name for the device.",
198
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
199
+ },
200
+ "lastDeviceCheck": {
201
+ "title": "lastDeviceCheck",
202
+ "description": "The time the device was last checked. Depending on local policies, this can be a physical check or just an online check.",
203
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
204
+ },
205
+ "softwareVersion": {
206
+ "title": "softwareVersion",
207
+ "description": "Information on the current software version of the device.",
208
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
209
+ },
210
+ "softwareVersionDate": {
211
+ "title": "softwareVersionDate",
212
+ "description": "Information on the date of the current software version of the device.",
213
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
214
+ },
215
+ "additionalDeviceInformation": {
216
+ "title": "additionalDeviceInformation",
217
+ "description": "Any additional device information.",
218
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
219
+ },
220
+ "ipAddress": {
221
+ "title": "ipAddress",
222
+ "description": "IP address associated with the device",
223
+ "$ref": "DATEXII_3_CommonExtension.json#/$defs/IpAddress"
224
+ },
225
+ "portNumber": {
226
+ "title": "portNumber",
227
+ "description": "Primary TCP or UDP port number associated with device",
228
+ "$ref": "DATEXII_3_CommonExtension.json#/$defs/PortNumber"
229
+ },
230
+ "accountableAuthority": {
231
+ "title": "accountableAuthority",
232
+ "description": "Information about the authority accountable for this device. Use this attribute only in case it differs from the accountable authority of the table of devices or the information manager declared within the PayloadPublication.",
233
+ "$ref": "DATEXII_3_Common.json#/$defs/InternationalIdentifier"
234
+ },
235
+ "pointLocation": {
236
+ "title": "pointLocation",
237
+ "$ref": "DATEXII_3_LocationReferencing.json#/$defs/PointLocationG"
238
+ },
239
+ "physicalDeviceDetails": {
240
+ "title": "physicalDeviceDetails",
241
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/PhysicalDeviceDetails"
242
+ },
243
+ "component": {
244
+ "title": "component",
245
+ "description": "Components of this device which have some special interest such as having status and faults of their own",
246
+ "type": "array",
247
+ "items": {
248
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/Component"
249
+ },
250
+ "minItems": 0
251
+ },
252
+ "dependsOn": {
253
+ "title": "dependsOn",
254
+ "description": "Other devices (other than components of this device) whose services this device depends on in order to deliver its service",
255
+ "type": "array",
256
+ "items": {
257
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceReferenceG"
258
+ },
259
+ "minItems": 0
260
+ },
261
+ "fstDeviceExtensionG": {
262
+ "title": "fstDeviceExtensionG",
263
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
264
+ }
265
+ },
266
+ "required": [
267
+ "idG",
268
+ "versionG",
269
+ "lastUpdateOfDeviceInformation",
270
+ "typeOfDevice",
271
+ "pointLocation"
272
+ ]
273
+ },
274
+ "DeviceComponentEnum": {
275
+ "title": "DeviceComponentEnum",
276
+ "description": "Type of component of a device",
277
+ "type": "string",
278
+ "enum": [
279
+ "ambientLightMonitor",
280
+ "cabinet",
281
+ "communicationsEquipment",
282
+ "controller",
283
+ "display",
284
+ "fan",
285
+ "generalPurposeIoPort",
286
+ "heater",
287
+ "other",
288
+ "powerSupply",
289
+ "processor",
290
+ "sensor",
291
+ "extendedG"
292
+ ]
293
+ },
294
+ "DeviceComponentEnumG": {
295
+ "title": "DeviceComponentEnumG",
296
+ "type": "object",
297
+ "additionalProperties": false,
298
+ "properties": {
299
+ "value": {
300
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceComponentEnum"
301
+ },
302
+ "extendedValueG": {
303
+ "type": "string"
304
+ }
305
+ },
306
+ "required": [
307
+ "value"
308
+ ]
309
+ },
310
+ "DeviceFault": {
311
+ "title": "DeviceFault",
312
+ "description": "Information about a fault relating to a specific device",
313
+ "type": "object",
314
+ "additionalProperties": false,
315
+ "properties": {
316
+ "idG": {
317
+ "type": "string"
318
+ },
319
+ "faultLastUpdateTime": {
320
+ "title": "faultLastUpdateTime",
321
+ "description": "The date and time at which the fault information as specified in this instance was last updated.",
322
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
323
+ },
324
+ "faultType": {
325
+ "title": "faultType",
326
+ "description": "The type of fault.",
327
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/FaultTypeEnumG"
328
+ },
329
+ "faultInstructions": {
330
+ "title": "faultInstructions",
331
+ "description": "Instructions to rectify this fault.",
332
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
333
+ },
334
+ "faultImpactOnData": {
335
+ "title": "faultImpactOnData",
336
+ "description": "The impact on data of this fault.",
337
+ "type": "array",
338
+ "items": {
339
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/FaultImpactOnDataEnumG"
340
+ },
341
+ "minItems": 0
342
+ },
343
+ "faultComponent": {
344
+ "title": "faultComponent",
345
+ "description": "Identity of the component (if any), in which the fault occurred.",
346
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
347
+ },
348
+ "faultComponentType": {
349
+ "title": "faultComponentType",
350
+ "description": "The fault comes from a component of this device, of the identified component type.",
351
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceComponentEnumG"
352
+ },
353
+ "faultObjectInformation": {
354
+ "title": "faultObjectInformation",
355
+ "description": "A reference to specific additional information on the fault by referencing a predefined element out of some catalogue.",
356
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/CatalogueInformation"
357
+ },
358
+ "comFaultExtensionG": {
359
+ "title": "comFaultExtensionG",
360
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
361
+ },
362
+ "fstDeviceFaultExtensionG": {
363
+ "title": "fstDeviceFaultExtensionG",
364
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
365
+ }
366
+ },
367
+ "required": [
368
+ "idG",
369
+ "faultLastUpdateTime",
370
+ "faultType"
371
+ ]
372
+ },
373
+ "DeviceG": {
374
+ "title": "DeviceG",
375
+ "description": "Only one of the properties shall be used in an instance.",
376
+ "type": "object",
377
+ "additionalProperties": false,
378
+ "properties": {
379
+ "fstDevice": {
380
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/Device"
381
+ },
382
+ "fstComponent": {
383
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/Component"
384
+ }
385
+ }
386
+ },
387
+ "DeviceHealthEnum": {
388
+ "title": "DeviceHealthEnum",
389
+ "description": "This enumeration provides information on the health status of a device, in terms of its ability to provide its functional service.",
390
+ "type": "string",
391
+ "enum": [
392
+ "ok",
393
+ "notOk",
394
+ "functionalityPartlyOk",
395
+ "intermittentlyOk",
396
+ "alarm",
397
+ "notResponding",
398
+ "offline",
399
+ "unknown",
400
+ "extendedG"
401
+ ]
402
+ },
403
+ "DeviceHealthEnumG": {
404
+ "title": "DeviceHealthEnumG",
405
+ "type": "object",
406
+ "additionalProperties": false,
407
+ "properties": {
408
+ "value": {
409
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceHealthEnum"
410
+ },
411
+ "extendedValueG": {
412
+ "type": "string"
413
+ }
414
+ },
415
+ "required": [
416
+ "value"
417
+ ]
418
+ },
419
+ "DevicePower": {
420
+ "title": "DevicePower",
421
+ "description": "Power source for a device",
422
+ "type": "object",
423
+ "additionalProperties": false,
424
+ "properties": {
425
+ "health": {
426
+ "title": "health",
427
+ "description": "Health of the power supply",
428
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceHealthEnumG"
429
+ },
430
+ "sourceType": {
431
+ "title": "sourceType",
432
+ "description": "Type of power supply",
433
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/PowerSourceEnumG"
434
+ },
435
+ "fstDevicePowerExtensionG": {
436
+ "title": "fstDevicePowerExtensionG",
437
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
438
+ }
439
+ },
440
+ "required": [
441
+ "health",
442
+ "sourceType"
443
+ ]
444
+ },
445
+ "DevicePublication": {
446
+ "title": "DevicePublication",
447
+ "description": "This publication provides static information about devices, including its point-location. It can be used in case no specific publication for the type of device is available or suitable. Fault- and StatusPublication can reference to the specified devices.",
448
+ "type": "object",
449
+ "additionalProperties": false,
450
+ "properties": {
451
+ "lang": {
452
+ "title": "lang",
453
+ "description": "The default language used throughout the payload publication.",
454
+ "$ref": "DATEXII_3_Common.json#/$defs/Language"
455
+ },
456
+ "feedDescription": {
457
+ "title": "feedDescription",
458
+ "description": "A description of the information which is to be found in the publications originating from the particular feed (URL).",
459
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
460
+ },
461
+ "feedType": {
462
+ "title": "feedType",
463
+ "description": "A classification of the information which is to be found in the publications originating from the particular feed.",
464
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
465
+ },
466
+ "publicationTime": {
467
+ "title": "publicationTime",
468
+ "description": "Date/time at which the payload publication was created.",
469
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
470
+ },
471
+ "publicationCreator": {
472
+ "title": "publicationCreator",
473
+ "$ref": "DATEXII_3_Common.json#/$defs/InternationalIdentifier"
474
+ },
475
+ "headerInformation": {
476
+ "title": "headerInformation",
477
+ "$ref": "DATEXII_3_Common.json#/$defs/HeaderInformation"
478
+ },
479
+ "device": {
480
+ "title": "device",
481
+ "type": "array",
482
+ "items": {
483
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceG"
484
+ },
485
+ "minItems": 0
486
+ },
487
+ "deviceTable": {
488
+ "title": "deviceTable",
489
+ "type": "array",
490
+ "items": {
491
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceTable"
492
+ },
493
+ "minItems": 0
494
+ },
495
+ "comPayloadPublicationExtensionG": {
496
+ "title": "comPayloadPublicationExtensionG",
497
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
498
+ },
499
+ "fstDevicePublicationExtensionG": {
500
+ "title": "fstDevicePublicationExtensionG",
501
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
502
+ }
503
+ },
504
+ "required": [
505
+ "lang",
506
+ "publicationTime",
507
+ "publicationCreator",
508
+ "headerInformation"
509
+ ]
510
+ },
511
+ "DeviceReferenceG": {
512
+ "title": "DeviceReferenceG",
513
+ "description": "Only one of the properties shall be used in an instance.",
514
+ "type": "object",
515
+ "additionalProperties": false,
516
+ "properties": {
517
+ "fstVmsUnitReference": {
518
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/VmsUnitReference"
519
+ },
520
+ "fstMeasurementSiteReference": {
521
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/MeasurementSiteReference"
522
+ },
523
+ "fstGeneralDeviceReference": {
524
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/GeneralDeviceReference"
525
+ }
526
+ }
527
+ },
528
+ "DeviceTable": {
529
+ "title": "DeviceTable",
530
+ "description": "A table of devices grouped by any logical criteria, e.g. all traffic lights within a certain administrative area.",
531
+ "type": "object",
532
+ "additionalProperties": false,
533
+ "properties": {
534
+ "idG": {
535
+ "type": "string"
536
+ },
537
+ "versionG": {
538
+ "type": "string"
539
+ },
540
+ "deviceTableName": {
541
+ "title": "deviceTableName",
542
+ "description": "The name of the table of devices.",
543
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
544
+ },
545
+ "accountableAuthority": {
546
+ "title": "accountableAuthority",
547
+ "description": "Information about the authority accountable for this table of devices. Use this attribute only in the case where it differs from the information manager declared within the PayloadPublication.",
548
+ "$ref": "DATEXII_3_Common.json#/$defs/InternationalIdentifier"
549
+ },
550
+ "device": {
551
+ "title": "device",
552
+ "type": "array",
553
+ "items": {
554
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceG"
555
+ },
556
+ "minItems": 1
557
+ },
558
+ "fstDeviceTableExtensionG": {
559
+ "title": "fstDeviceTableExtensionG",
560
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
561
+ }
562
+ },
563
+ "required": [
564
+ "idG",
565
+ "versionG",
566
+ "device"
567
+ ]
568
+ },
569
+ "DeviceTableReferenceG": {
570
+ "title": "DeviceTableReferenceG",
571
+ "description": "Only one of the properties shall be used in an instance.",
572
+ "type": "object",
573
+ "additionalProperties": false,
574
+ "properties": {
575
+ "fstMeasurementSiteTableReference": {
576
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/MeasurementSiteTableReference"
577
+ },
578
+ "fstGeneralDeviceTableReference": {
579
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/GeneralDeviceTableReference"
580
+ },
581
+ "fstVmsUnitTableReference": {
582
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/VmsUnitTableReference"
583
+ }
584
+ }
585
+ },
586
+ "DeviceTableVersionedReferenceG": {
587
+ "title": "DeviceTableVersionedReferenceG",
588
+ "type": "object",
589
+ "properties": {
590
+ "targetClass": {
591
+ "type": "string",
592
+ "default": "DeviceTable"
593
+ },
594
+ "idG": {
595
+ "type": "string"
596
+ },
597
+ "versionG": {
598
+ "type": "string"
599
+ }
600
+ },
601
+ "required": [
602
+ "targetClass",
603
+ "idG"
604
+ ]
605
+ },
606
+ "DeviceTypeEnum": {
607
+ "title": "DeviceTypeEnum",
608
+ "description": "This enumeration provides information on types of field devices.",
609
+ "type": "string",
610
+ "enum": [
611
+ "accessControl",
612
+ "camera",
613
+ "fireDetection",
614
+ "firefightingDevice",
615
+ "itsStation",
616
+ "lighting",
617
+ "meteorological",
618
+ "roadsideTelephone",
619
+ "tollingDevice",
620
+ "trafficDetector",
621
+ "ventilation",
622
+ "parkingGuidance",
623
+ "parkingManagement",
624
+ "roadsideEquipment",
625
+ "trafficSignal",
626
+ "transportLink",
627
+ "transportRoute",
628
+ "tunnel",
629
+ "vehicle",
630
+ "vms",
631
+ "other",
632
+ "extendedG"
633
+ ]
634
+ },
635
+ "DeviceTypeEnumG": {
636
+ "title": "DeviceTypeEnumG",
637
+ "type": "object",
638
+ "additionalProperties": false,
639
+ "properties": {
640
+ "value": {
641
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceTypeEnum"
642
+ },
643
+ "extendedValueG": {
644
+ "type": "string"
645
+ }
646
+ },
647
+ "required": [
648
+ "value"
649
+ ]
650
+ },
651
+ "DeviceVersionedReferenceG": {
652
+ "title": "DeviceVersionedReferenceG",
653
+ "type": "object",
654
+ "properties": {
655
+ "targetClass": {
656
+ "type": "string",
657
+ "default": "Device"
658
+ },
659
+ "idG": {
660
+ "type": "string"
661
+ },
662
+ "versionG": {
663
+ "type": "string"
664
+ }
665
+ },
666
+ "required": [
667
+ "targetClass",
668
+ "idG"
669
+ ]
670
+ },
671
+ "FaultImpactOnDataEnum": {
672
+ "title": "FaultImpactOnDataEnum",
673
+ "description": "This enumeration provides information on the impact on data of a fault.",
674
+ "type": "string",
675
+ "enum": [
676
+ "downloadFailed",
677
+ "intermittentData",
678
+ "noData",
679
+ "unreliableData",
680
+ "unspecified",
681
+ "extendedG"
682
+ ]
683
+ },
684
+ "FaultImpactOnDataEnumG": {
685
+ "title": "FaultImpactOnDataEnumG",
686
+ "type": "object",
687
+ "additionalProperties": false,
688
+ "properties": {
689
+ "value": {
690
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/FaultImpactOnDataEnum"
691
+ },
692
+ "extendedValueG": {
693
+ "type": "string"
694
+ }
695
+ },
696
+ "required": [
697
+ "value"
698
+ ]
699
+ },
700
+ "FaultPublication": {
701
+ "title": "FaultPublication",
702
+ "description": "A publication containing fault information of devices or of tables of devices.",
703
+ "type": "object",
704
+ "additionalProperties": false,
705
+ "properties": {
706
+ "lang": {
707
+ "title": "lang",
708
+ "description": "The default language used throughout the payload publication.",
709
+ "$ref": "DATEXII_3_Common.json#/$defs/Language"
710
+ },
711
+ "feedDescription": {
712
+ "title": "feedDescription",
713
+ "description": "A description of the information which is to be found in the publications originating from the particular feed (URL).",
714
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
715
+ },
716
+ "feedType": {
717
+ "title": "feedType",
718
+ "description": "A classification of the information which is to be found in the publications originating from the particular feed.",
719
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
720
+ },
721
+ "publicationTime": {
722
+ "title": "publicationTime",
723
+ "description": "Date/time at which the payload publication was created.",
724
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
725
+ },
726
+ "publicationCreator": {
727
+ "title": "publicationCreator",
728
+ "$ref": "DATEXII_3_Common.json#/$defs/InternationalIdentifier"
729
+ },
730
+ "headerInformation": {
731
+ "title": "headerInformation",
732
+ "$ref": "DATEXII_3_Common.json#/$defs/HeaderInformation"
733
+ },
734
+ "allFaultsOfSingleDevice": {
735
+ "title": "allFaultsOfSingleDevice",
736
+ "type": "array",
737
+ "items": {
738
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/AllFaultsOfSingleDevice"
739
+ },
740
+ "minItems": 0
741
+ },
742
+ "faultsOfAllDevicesFromTable": {
743
+ "title": "faultsOfAllDevicesFromTable",
744
+ "type": "array",
745
+ "items": {
746
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/FaultsOfAllDevicesFromTable"
747
+ },
748
+ "minItems": 0
749
+ },
750
+ "comPayloadPublicationExtensionG": {
751
+ "title": "comPayloadPublicationExtensionG",
752
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
753
+ },
754
+ "fstFaultPublicationExtensionG": {
755
+ "title": "fstFaultPublicationExtensionG",
756
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
757
+ }
758
+ },
759
+ "required": [
760
+ "lang",
761
+ "publicationTime",
762
+ "publicationCreator",
763
+ "headerInformation"
764
+ ]
765
+ },
766
+ "FaultsOfAllDevicesFromTable": {
767
+ "title": "FaultsOfAllDevicesFromTable",
768
+ "description": "Fault information for a table of devices.",
769
+ "type": "object",
770
+ "additionalProperties": false,
771
+ "properties": {
772
+ "deviceTableReference": {
773
+ "title": "deviceTableReference",
774
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceTableReferenceG"
775
+ },
776
+ "allFaultsOfSingleDevice": {
777
+ "title": "allFaultsOfSingleDevice",
778
+ "type": "array",
779
+ "items": {
780
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/AllFaultsOfSingleDevice"
781
+ },
782
+ "minItems": 1
783
+ },
784
+ "fstFaultsOfAllDevicesFromTableExtensionG": {
785
+ "title": "fstFaultsOfAllDevicesFromTableExtensionG",
786
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
787
+ }
788
+ },
789
+ "required": [
790
+ "deviceTableReference",
791
+ "allFaultsOfSingleDevice"
792
+ ]
793
+ },
794
+ "FaultTypeEnum": {
795
+ "title": "FaultTypeEnum",
796
+ "description": "This enumeration provides information on types of faults.",
797
+ "type": "string",
798
+ "enum": [
799
+ "internalCommunicationFault",
800
+ "synchronizationFault",
801
+ "componentFault",
802
+ "configurationError",
803
+ "disconnected",
804
+ "electronicsFault",
805
+ "generalSystemError",
806
+ "hardwareFault",
807
+ "controlFault",
808
+ "intermittentlyWorking",
809
+ "mechanicalFault",
810
+ "notWorking",
811
+ "operatingSystemFault",
812
+ "powerFailure",
813
+ "securityFault",
814
+ "softwareFault",
815
+ "timeOrClockFault",
816
+ "unspecifiedFault",
817
+ "unknownFault",
818
+ "otherFault",
819
+ "extendedG"
820
+ ]
821
+ },
822
+ "FaultTypeEnumG": {
823
+ "title": "FaultTypeEnumG",
824
+ "type": "object",
825
+ "additionalProperties": false,
826
+ "properties": {
827
+ "value": {
828
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/FaultTypeEnum"
829
+ },
830
+ "extendedValueG": {
831
+ "type": "string"
832
+ }
833
+ },
834
+ "required": [
835
+ "value"
836
+ ]
837
+ },
838
+ "GeneralDeviceReference": {
839
+ "title": "GeneralDeviceReference",
840
+ "description": "A reference to a device of any type.",
841
+ "type": "object",
842
+ "additionalProperties": false,
843
+ "properties": {
844
+ "deviceReference": {
845
+ "title": "deviceReference",
846
+ "description": "A reference to a device of any type.",
847
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceVersionedReferenceG"
848
+ },
849
+ "comGlobalReferenceExtensionG": {
850
+ "title": "comGlobalReferenceExtensionG",
851
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
852
+ },
853
+ "fstDeviceReferenceExtensionG": {
854
+ "title": "fstDeviceReferenceExtensionG",
855
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
856
+ },
857
+ "fstGeneralDeviceReferenceExtensionG": {
858
+ "title": "fstGeneralDeviceReferenceExtensionG",
859
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
860
+ }
861
+ },
862
+ "required": [
863
+ "deviceReference"
864
+ ]
865
+ },
866
+ "GeneralDeviceTableReference": {
867
+ "title": "GeneralDeviceTableReference",
868
+ "description": "A reference to a table of devices of any type.",
869
+ "type": "object",
870
+ "additionalProperties": false,
871
+ "properties": {
872
+ "deviceTableReference": {
873
+ "title": "deviceTableReference",
874
+ "description": "A reference to a table of devices of any type.",
875
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceTableVersionedReferenceG"
876
+ },
877
+ "comGlobalReferenceExtensionG": {
878
+ "title": "comGlobalReferenceExtensionG",
879
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
880
+ },
881
+ "fstDeviceTableReferenceExtensionG": {
882
+ "title": "fstDeviceTableReferenceExtensionG",
883
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
884
+ },
885
+ "fstGeneralDeviceTableReferenceExtensionG": {
886
+ "title": "fstGeneralDeviceTableReferenceExtensionG",
887
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
888
+ }
889
+ },
890
+ "required": [
891
+ "deviceTableReference"
892
+ ]
893
+ },
894
+ "MeasurementSiteReference": {
895
+ "title": "MeasurementSiteReference",
896
+ "description": "A reference to a measurement site.",
897
+ "type": "object",
898
+ "additionalProperties": false,
899
+ "properties": {
900
+ "measurementSiteReference": {
901
+ "title": "measurementSiteReference",
902
+ "description": "A reference to a measurement site.",
903
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/MeasurementSiteVersionedReferenceG"
904
+ },
905
+ "comGlobalReferenceExtensionG": {
906
+ "title": "comGlobalReferenceExtensionG",
907
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
908
+ },
909
+ "fstDeviceReferenceExtensionG": {
910
+ "title": "fstDeviceReferenceExtensionG",
911
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
912
+ },
913
+ "fstMeasurementSiteReferenceExtensionG": {
914
+ "title": "fstMeasurementSiteReferenceExtensionG",
915
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
916
+ }
917
+ },
918
+ "required": [
919
+ "measurementSiteReference"
920
+ ]
921
+ },
922
+ "MeasurementSiteTableReference": {
923
+ "title": "MeasurementSiteTableReference",
924
+ "description": "A reference to a measurement site table.",
925
+ "type": "object",
926
+ "additionalProperties": false,
927
+ "properties": {
928
+ "measurementSiteTableReference": {
929
+ "title": "measurementSiteTableReference",
930
+ "description": "A reference to a measurement site table.",
931
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/MeasurementSiteTableVersionedReferenceG"
932
+ },
933
+ "comGlobalReferenceExtensionG": {
934
+ "title": "comGlobalReferenceExtensionG",
935
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
936
+ },
937
+ "fstDeviceTableReferenceExtensionG": {
938
+ "title": "fstDeviceTableReferenceExtensionG",
939
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
940
+ },
941
+ "fstMeasurementSiteTableReferenceExtensionG": {
942
+ "title": "fstMeasurementSiteTableReferenceExtensionG",
943
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
944
+ }
945
+ },
946
+ "required": [
947
+ "measurementSiteTableReference"
948
+ ]
949
+ },
950
+ "MeasurementSiteTableVersionedReferenceG": {
951
+ "title": "MeasurementSiteTableVersionedReferenceG",
952
+ "type": "object",
953
+ "properties": {
954
+ "targetClass": {
955
+ "type": "string",
956
+ "default": "MeasurementSiteTable"
957
+ },
958
+ "idG": {
959
+ "type": "string"
960
+ },
961
+ "versionG": {
962
+ "type": "string"
963
+ }
964
+ },
965
+ "required": [
966
+ "targetClass",
967
+ "idG"
968
+ ]
969
+ },
970
+ "MeasurementSiteVersionedReferenceG": {
971
+ "title": "MeasurementSiteVersionedReferenceG",
972
+ "type": "object",
973
+ "properties": {
974
+ "targetClass": {
975
+ "type": "string",
976
+ "default": "MeasurementSite"
977
+ },
978
+ "idG": {
979
+ "type": "string"
980
+ },
981
+ "versionG": {
982
+ "type": "string"
983
+ }
984
+ },
985
+ "required": [
986
+ "targetClass",
987
+ "idG"
988
+ ]
989
+ },
990
+ "ObjectIdentifier": {
991
+ "title": "ObjectIdentifier",
992
+ "description": "An OID according to ISO/IEC 9834-1:2012 and ISO/IEC 8824-1:2015 using the dot-notation. Example: (1.3.162) points to CEN. The presentation in ASN.1 would be: {iso(1) identified-organization(3) cen(162)}.",
993
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
994
+ },
995
+ "OperationalDeviceStateEnum": {
996
+ "title": "OperationalDeviceStateEnum",
997
+ "description": "This enumeration provides information on the operational state of a device.",
998
+ "type": "string",
999
+ "enum": [
1000
+ "maintenanceMode",
1001
+ "on",
1002
+ "off",
1003
+ "powerSafeMode",
1004
+ "specialMode",
1005
+ "temporarilyDeactivated",
1006
+ "permanentlyDeactivated",
1007
+ "unknown",
1008
+ "extendedG"
1009
+ ]
1010
+ },
1011
+ "OperationalDeviceStateEnumG": {
1012
+ "title": "OperationalDeviceStateEnumG",
1013
+ "type": "object",
1014
+ "additionalProperties": false,
1015
+ "properties": {
1016
+ "value": {
1017
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/OperationalDeviceStateEnum"
1018
+ },
1019
+ "extendedValueG": {
1020
+ "type": "string"
1021
+ }
1022
+ },
1023
+ "required": [
1024
+ "value"
1025
+ ]
1026
+ },
1027
+ "OperationalState": {
1028
+ "title": "OperationalState",
1029
+ "description": "Information about the operational state in which a device has been placed.",
1030
+ "type": "object",
1031
+ "additionalProperties": false,
1032
+ "properties": {
1033
+ "operationalDeviceState": {
1034
+ "title": "operationalDeviceState",
1035
+ "description": "The operational state into which the device has been placed.",
1036
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/OperationalDeviceStateEnumG"
1037
+ },
1038
+ "stateDescription": {
1039
+ "title": "stateDescription",
1040
+ "description": "A description of the operational state.",
1041
+ "type": "array",
1042
+ "items": {
1043
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
1044
+ },
1045
+ "minItems": 0
1046
+ },
1047
+ "lastStateChange": {
1048
+ "title": "lastStateChange",
1049
+ "description": "The time at which the last operational state change occurred.",
1050
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
1051
+ },
1052
+ "lastStateUpdate": {
1053
+ "title": "lastStateUpdate",
1054
+ "description": "The time the operational state information was last updated.",
1055
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
1056
+ },
1057
+ "operationalStateCatalogueInformation": {
1058
+ "title": "operationalStateCatalogueInformation",
1059
+ "description": "A reference to specific additional information on the operational state by referencing a predefined element out of some catalogue.",
1060
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/CatalogueInformation"
1061
+ },
1062
+ "fstOperationalStateExtensionG": {
1063
+ "title": "fstOperationalStateExtensionG",
1064
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1065
+ }
1066
+ },
1067
+ "required": [
1068
+ "operationalDeviceState"
1069
+ ]
1070
+ },
1071
+ "PhysicalDeviceDetails": {
1072
+ "title": "PhysicalDeviceDetails",
1073
+ "description": "Details of a specific physical device",
1074
+ "type": "object",
1075
+ "additionalProperties": false,
1076
+ "properties": {
1077
+ "barcode": {
1078
+ "title": "barcode",
1079
+ "description": "textual equivalent of the content on the machine-readable barcode for this device",
1080
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
1081
+ },
1082
+ "installationDate": {
1083
+ "title": "installationDate",
1084
+ "description": "date that this device was installed",
1085
+ "$ref": "DATEXII_3_Common.json#/$defs/Date"
1086
+ },
1087
+ "manufactureDate": {
1088
+ "title": "manufactureDate",
1089
+ "description": "date that this device was manufactured",
1090
+ "$ref": "DATEXII_3_Common.json#/$defs/Date"
1091
+ },
1092
+ "manufacturer": {
1093
+ "title": "manufacturer",
1094
+ "description": "the identity of the manufacturer of this device",
1095
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
1096
+ },
1097
+ "model": {
1098
+ "title": "model",
1099
+ "description": "model of device",
1100
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
1101
+ },
1102
+ "name": {
1103
+ "title": "name",
1104
+ "description": "name of the individual device",
1105
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
1106
+ },
1107
+ "serialNumber": {
1108
+ "title": "serialNumber",
1109
+ "description": "serial number of this device",
1110
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
1111
+ },
1112
+ "stockCode": {
1113
+ "title": "stockCode",
1114
+ "description": "number or text used to identify this kind of device in stock",
1115
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
1116
+ },
1117
+ "fstPhysicalDeviceDetailsExtensionG": {
1118
+ "title": "fstPhysicalDeviceDetailsExtensionG",
1119
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1120
+ }
1121
+ }
1122
+ },
1123
+ "PowerSourceEnum": {
1124
+ "title": "PowerSourceEnum",
1125
+ "description": "Type of power source",
1126
+ "type": "string",
1127
+ "enum": [
1128
+ "battery",
1129
+ "generator",
1130
+ "hydro",
1131
+ "mains",
1132
+ "solar",
1133
+ "wind",
1134
+ "extendedG"
1135
+ ]
1136
+ },
1137
+ "PowerSourceEnumG": {
1138
+ "title": "PowerSourceEnumG",
1139
+ "type": "object",
1140
+ "additionalProperties": false,
1141
+ "properties": {
1142
+ "value": {
1143
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/PowerSourceEnum"
1144
+ },
1145
+ "extendedValueG": {
1146
+ "type": "string"
1147
+ }
1148
+ },
1149
+ "required": [
1150
+ "value"
1151
+ ]
1152
+ },
1153
+ "Status": {
1154
+ "title": "Status",
1155
+ "description": "Status and operational state information for the service from a single device.",
1156
+ "type": "object",
1157
+ "additionalProperties": false,
1158
+ "properties": {
1159
+ "health": {
1160
+ "title": "health",
1161
+ "description": "Health of the device in terms of its ability to provide its service.",
1162
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceHealthEnumG"
1163
+ },
1164
+ "statusDescription": {
1165
+ "title": "statusDescription",
1166
+ "description": "A description of the device status.",
1167
+ "type": "array",
1168
+ "items": {
1169
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
1170
+ },
1171
+ "minItems": 0
1172
+ },
1173
+ "lastStatusChange": {
1174
+ "title": "lastStatusChange",
1175
+ "description": "The time at which the last status change occurred.",
1176
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
1177
+ },
1178
+ "lastStatusUpdate": {
1179
+ "title": "lastStatusUpdate",
1180
+ "description": "The time the status information was last updated.",
1181
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
1182
+ },
1183
+ "relatedFault": {
1184
+ "title": "relatedFault",
1185
+ "description": "A reference to one or more faults that recently occurred on this device (and are not yet cleared).",
1186
+ "type": "array",
1187
+ "items": {
1188
+ "$ref": "DATEXII_3_Common.json#/$defs/VersionedReference"
1189
+ },
1190
+ "minItems": 0
1191
+ },
1192
+ "deviceReference": {
1193
+ "title": "deviceReference",
1194
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceReferenceG"
1195
+ },
1196
+ "operationalState": {
1197
+ "title": "operationalState",
1198
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/OperationalState"
1199
+ },
1200
+ "statusCatalogueInformation": {
1201
+ "title": "statusCatalogueInformation",
1202
+ "description": "A reference to specific additional information on the device status by referencing a predefined element out of some catalogue.",
1203
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/CatalogueInformation"
1204
+ },
1205
+ "devicePower": {
1206
+ "title": "devicePower",
1207
+ "type": "array",
1208
+ "items": {
1209
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DevicePower"
1210
+ },
1211
+ "minItems": 0
1212
+ },
1213
+ "fstStatusExtensionG": {
1214
+ "title": "fstStatusExtensionG",
1215
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1216
+ }
1217
+ },
1218
+ "required": [
1219
+ "health",
1220
+ "lastStatusUpdate",
1221
+ "deviceReference"
1222
+ ]
1223
+ },
1224
+ "StatusOfAllDevicesFromTable": {
1225
+ "title": "StatusOfAllDevicesFromTable",
1226
+ "description": "Status information for a table of devices.",
1227
+ "type": "object",
1228
+ "additionalProperties": false,
1229
+ "properties": {
1230
+ "deviceTableReference": {
1231
+ "title": "deviceTableReference",
1232
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/DeviceTableReferenceG"
1233
+ },
1234
+ "status": {
1235
+ "title": "status",
1236
+ "type": "array",
1237
+ "items": {
1238
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/Status"
1239
+ },
1240
+ "minItems": 1
1241
+ },
1242
+ "fstStatusOfAllDevicesFromTableExtensionG": {
1243
+ "title": "fstStatusOfAllDevicesFromTableExtensionG",
1244
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1245
+ }
1246
+ },
1247
+ "required": [
1248
+ "deviceTableReference",
1249
+ "status"
1250
+ ]
1251
+ },
1252
+ "StatusPublication": {
1253
+ "title": "StatusPublication",
1254
+ "description": "A publication containing status information of devices or of tables of devices.",
1255
+ "type": "object",
1256
+ "additionalProperties": false,
1257
+ "properties": {
1258
+ "lang": {
1259
+ "title": "lang",
1260
+ "description": "The default language used throughout the payload publication.",
1261
+ "$ref": "DATEXII_3_Common.json#/$defs/Language"
1262
+ },
1263
+ "feedDescription": {
1264
+ "title": "feedDescription",
1265
+ "description": "A description of the information which is to be found in the publications originating from the particular feed (URL).",
1266
+ "$ref": "DATEXII_3_Common.json#/$defs/MultilingualString"
1267
+ },
1268
+ "feedType": {
1269
+ "title": "feedType",
1270
+ "description": "A classification of the information which is to be found in the publications originating from the particular feed.",
1271
+ "$ref": "DATEXII_3_Common.json#/$defs/String"
1272
+ },
1273
+ "publicationTime": {
1274
+ "title": "publicationTime",
1275
+ "description": "Date/time at which the payload publication was created.",
1276
+ "$ref": "DATEXII_3_Common.json#/$defs/DateTime"
1277
+ },
1278
+ "publicationCreator": {
1279
+ "title": "publicationCreator",
1280
+ "$ref": "DATEXII_3_Common.json#/$defs/InternationalIdentifier"
1281
+ },
1282
+ "headerInformation": {
1283
+ "title": "headerInformation",
1284
+ "$ref": "DATEXII_3_Common.json#/$defs/HeaderInformation"
1285
+ },
1286
+ "status": {
1287
+ "title": "status",
1288
+ "type": "array",
1289
+ "items": {
1290
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/Status"
1291
+ },
1292
+ "minItems": 0
1293
+ },
1294
+ "statusOfAllDevicesFromTable": {
1295
+ "title": "statusOfAllDevicesFromTable",
1296
+ "type": "array",
1297
+ "items": {
1298
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/StatusOfAllDevicesFromTable"
1299
+ },
1300
+ "minItems": 0
1301
+ },
1302
+ "comPayloadPublicationExtensionG": {
1303
+ "title": "comPayloadPublicationExtensionG",
1304
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1305
+ },
1306
+ "fstStatusPublicationExtensionG": {
1307
+ "title": "fstStatusPublicationExtensionG",
1308
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1309
+ }
1310
+ },
1311
+ "required": [
1312
+ "lang",
1313
+ "publicationTime",
1314
+ "publicationCreator",
1315
+ "headerInformation"
1316
+ ]
1317
+ },
1318
+ "VmsControllerTableVersionedReferenceG": {
1319
+ "title": "VmsControllerTableVersionedReferenceG",
1320
+ "type": "object",
1321
+ "properties": {
1322
+ "targetClass": {
1323
+ "type": "string",
1324
+ "default": "VmsControllerTable"
1325
+ },
1326
+ "idG": {
1327
+ "type": "string"
1328
+ },
1329
+ "versionG": {
1330
+ "type": "string"
1331
+ }
1332
+ },
1333
+ "required": [
1334
+ "targetClass",
1335
+ "idG"
1336
+ ]
1337
+ },
1338
+ "VmsControllerVersionedReferenceG": {
1339
+ "title": "VmsControllerVersionedReferenceG",
1340
+ "type": "object",
1341
+ "properties": {
1342
+ "targetClass": {
1343
+ "type": "string",
1344
+ "default": "VmsController"
1345
+ },
1346
+ "idG": {
1347
+ "type": "string"
1348
+ },
1349
+ "versionG": {
1350
+ "type": "string"
1351
+ }
1352
+ },
1353
+ "required": [
1354
+ "targetClass",
1355
+ "idG"
1356
+ ]
1357
+ },
1358
+ "VmsUnitReference": {
1359
+ "title": "VmsUnitReference",
1360
+ "description": "A reference to a VMS unit record.",
1361
+ "type": "object",
1362
+ "additionalProperties": false,
1363
+ "properties": {
1364
+ "vmsUnitReference": {
1365
+ "title": "vmsUnitReference",
1366
+ "description": "A reference to a VMS controller record.",
1367
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/VmsControllerVersionedReferenceG"
1368
+ },
1369
+ "comGlobalReferenceExtensionG": {
1370
+ "title": "comGlobalReferenceExtensionG",
1371
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1372
+ },
1373
+ "fstDeviceReferenceExtensionG": {
1374
+ "title": "fstDeviceReferenceExtensionG",
1375
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1376
+ },
1377
+ "fstVmsUnitReferenceExtensionG": {
1378
+ "title": "fstVmsUnitReferenceExtensionG",
1379
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1380
+ }
1381
+ },
1382
+ "required": [
1383
+ "vmsUnitReference"
1384
+ ]
1385
+ },
1386
+ "VmsUnitTableReference": {
1387
+ "title": "VmsUnitTableReference",
1388
+ "description": "A reference to a VMS table.",
1389
+ "type": "object",
1390
+ "additionalProperties": false,
1391
+ "properties": {
1392
+ "vmsUnitTableReference": {
1393
+ "title": "vmsUnitTableReference",
1394
+ "description": "A reference to a VMS controller table.",
1395
+ "$ref": "DATEXII_3_FaultAndStatus.json#/$defs/VmsControllerTableVersionedReferenceG"
1396
+ },
1397
+ "comGlobalReferenceExtensionG": {
1398
+ "title": "comGlobalReferenceExtensionG",
1399
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1400
+ },
1401
+ "fstDeviceTableReferenceExtensionG": {
1402
+ "title": "fstDeviceTableReferenceExtensionG",
1403
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1404
+ },
1405
+ "fstVmsUnitTableReferenceExtensionG": {
1406
+ "title": "fstVmsUnitTableReferenceExtensionG",
1407
+ "$ref": "DATEXII_3_Common.json#/$defs/ExtensionTypeG"
1408
+ }
1409
+ },
1410
+ "required": [
1411
+ "vmsUnitTableReference"
1412
+ ]
1413
+ }
1414
+ }
1415
+ }