@dvsa/cvs-type-definitions 2.0.12 → 2.0.16

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 (104) hide show
  1. package/README.md +1 -1
  2. package/lib/README.md +48 -0
  3. package/lib/json-schemas/v1/activity/index.json +62 -0
  4. package/lib/json-schemas/v1/defect-category-reference-data/index.json +440 -0
  5. package/lib/json-schemas/v1/defect-details/index.json +265 -0
  6. package/lib/json-schemas/v1/defect-location/index.json +49 -0
  7. package/lib/json-schemas/v1/reason-item/index.json +17 -0
  8. package/lib/json-schemas/v1/tech-record/index.json +639 -0
  9. package/lib/json-schemas/v1/test/index.json +1843 -0
  10. package/lib/json-schemas/v1/test-result/index.json +636 -0
  11. package/lib/json-schemas/v1/test-station/index.json +67 -0
  12. package/lib/json-schemas/v1/test-type/index.json +479 -0
  13. package/lib/json-schemas/v1/vehicle/index.json +1804 -0
  14. package/lib/json-schemas/v1/vehicle-tech-record/index.json +683 -0
  15. package/lib/json-schemas/v1/visit/index.json +1895 -0
  16. package/lib/json-schemas/v3/tech-record/get/car/complete/index.json +216 -0
  17. package/lib/json-schemas/v3/tech-record/get/car/skeleton/index.json +195 -0
  18. package/lib/json-schemas/v3/tech-record/get/hgv/complete/index.json +1051 -0
  19. package/lib/json-schemas/v3/tech-record/get/hgv/skeleton/index.json +1124 -0
  20. package/lib/json-schemas/v3/tech-record/get/hgv/testable/index.json +1119 -0
  21. package/lib/json-schemas/v3/tech-record/get/lgv/complete/index.json +226 -0
  22. package/lib/json-schemas/v3/tech-record/get/lgv/skeleton/index.json +202 -0
  23. package/lib/json-schemas/v3/tech-record/get/motorcycle/complete/index.json +219 -0
  24. package/lib/json-schemas/v3/tech-record/get/motorcycle/skeleton/index.json +202 -0
  25. package/lib/json-schemas/v3/tech-record/get/psv/complete/index.json +1027 -0
  26. package/lib/json-schemas/v3/tech-record/get/psv/skeleton/index.json +1120 -0
  27. package/lib/json-schemas/v3/tech-record/get/psv/testable/index.json +1097 -0
  28. package/lib/json-schemas/v3/tech-record/get/search/complete/index.json +55 -0
  29. package/lib/json-schemas/v3/tech-record/get/search/skeleton/index.json +55 -0
  30. package/lib/json-schemas/v3/tech-record/get/trl/complete/index.json +1307 -0
  31. package/lib/json-schemas/v3/tech-record/get/trl/skeleton/index.json +1002 -0
  32. package/lib/json-schemas/v3/tech-record/get/trl/testable/index.json +1155 -0
  33. package/lib/json-schemas/v3/tech-record/post/psv/complete/index.json +1024 -0
  34. package/lib/json-schemas/v3/tech-record/post/psv/skeleton/index.json +1112 -0
  35. package/lib/json-schemas/v3/tech-record/post/psv/testable/index.json +1092 -0
  36. package/lib/json-schemas/v3/tech-record/put/car/complete/request/index.json +87 -0
  37. package/lib/json-schemas/v3/tech-record/put/car/complete/response/index.json +237 -0
  38. package/lib/json-schemas/v3/tech-record/put/car/skeleton/request/index.json +64 -0
  39. package/lib/json-schemas/v3/tech-record/put/car/skeleton/response/index.json +216 -0
  40. package/lib/json-schemas/v3/tech-record/put/hgv/complete/index.json +1009 -0
  41. package/lib/json-schemas/v3/tech-record/put/hgv/skeleton/index.json +1082 -0
  42. package/lib/json-schemas/v3/tech-record/put/hgv/testable/index.json +1077 -0
  43. package/lib/json-schemas/v3/tech-record/put/lgv/complete/request/index.json +97 -0
  44. package/lib/json-schemas/v3/tech-record/put/lgv/complete/response/index.json +247 -0
  45. package/lib/json-schemas/v3/tech-record/put/lgv/skeleton/request/index.json +71 -0
  46. package/lib/json-schemas/v3/tech-record/put/lgv/skeleton/response/index.json +223 -0
  47. package/lib/json-schemas/v3/tech-record/put/trl/complete/index.json +1265 -0
  48. package/lib/json-schemas/v3/tech-record/put/trl/skeleton/index.json +978 -0
  49. package/lib/json-schemas/v3/tech-record/put/trl/testable/index.json +1115 -0
  50. package/lib/package.json +38 -0
  51. package/lib/schema-validator.d.ts +3 -0
  52. package/lib/schema-validator.js +17 -0
  53. package/lib/schemas.d.ts +1 -0
  54. package/lib/schemas.js +52 -0
  55. package/lib/types/v1/activity/index.d.ts +23 -0
  56. package/lib/types/v1/defect-category-reference-data/index.d.ts +52 -0
  57. package/lib/types/v1/defect-details/index.d.ts +53 -0
  58. package/lib/types/v1/defect-location/index.d.ts +16 -0
  59. package/lib/types/v1/reason-item/index.d.ts +11 -0
  60. package/lib/types/v1/tech-record/index.d.ts +202 -0
  61. package/lib/types/v1/test/index.d.ts +353 -0
  62. package/lib/types/v1/test-result/index.d.ts +136 -0
  63. package/lib/types/v1/test-station/index.d.ts +23 -0
  64. package/lib/types/v1/test-type/index.d.ts +98 -0
  65. package/lib/types/v1/vehicle/index.d.ts +345 -0
  66. package/lib/types/v1/vehicle-tech-record/index.d.ts +212 -0
  67. package/lib/types/v1/visit/index.d.ts +366 -0
  68. package/lib/types/v3/tech-record/get/car/complete/index.d.ts +74 -0
  69. package/lib/types/v3/tech-record/get/car/skeleton/index.d.ts +72 -0
  70. package/lib/types/v3/tech-record/get/hgv/complete/index.d.ts +285 -0
  71. package/lib/types/v3/tech-record/get/hgv/skeleton/index.d.ts +285 -0
  72. package/lib/types/v3/tech-record/get/hgv/testable/index.d.ts +285 -0
  73. package/lib/types/v3/tech-record/get/lgv/complete/index.d.ts +75 -0
  74. package/lib/types/v3/tech-record/get/lgv/skeleton/index.d.ts +73 -0
  75. package/lib/types/v3/tech-record/get/motorcycle/complete/index.d.ts +75 -0
  76. package/lib/types/v3/tech-record/get/motorcycle/skeleton/index.d.ts +73 -0
  77. package/lib/types/v3/tech-record/get/psv/complete/index.d.ts +315 -0
  78. package/lib/types/v3/tech-record/get/psv/skeleton/index.d.ts +313 -0
  79. package/lib/types/v3/tech-record/get/psv/testable/index.d.ts +313 -0
  80. package/lib/types/v3/tech-record/get/search/complete/index.d.ts +20 -0
  81. package/lib/types/v3/tech-record/get/search/skeleton/index.d.ts +19 -0
  82. package/lib/types/v3/tech-record/get/trl/complete/index.d.ts +350 -0
  83. package/lib/types/v3/tech-record/get/trl/skeleton/index.d.ts +256 -0
  84. package/lib/types/v3/tech-record/get/trl/testable/index.d.ts +294 -0
  85. package/lib/types/v3/tech-record/post/psv/complete/index.d.ts +315 -0
  86. package/lib/types/v3/tech-record/post/psv/skeleton/index.d.ts +313 -0
  87. package/lib/types/v3/tech-record/post/psv/testable/index.d.ts +313 -0
  88. package/lib/types/v3/tech-record/put/car/complete/request/index.d.ts +24 -0
  89. package/lib/types/v3/tech-record/put/car/complete/response/index.d.ts +75 -0
  90. package/lib/types/v3/tech-record/put/car/skeleton/request/index.d.ts +22 -0
  91. package/lib/types/v3/tech-record/put/car/skeleton/response/index.d.ts +75 -0
  92. package/lib/types/v3/tech-record/put/hgv/complete/index.d.ts +276 -0
  93. package/lib/types/v3/tech-record/put/hgv/skeleton/index.d.ts +276 -0
  94. package/lib/types/v3/tech-record/put/hgv/testable/index.d.ts +276 -0
  95. package/lib/types/v3/tech-record/put/lgv/complete/request/index.d.ts +25 -0
  96. package/lib/types/v3/tech-record/put/lgv/complete/response/index.d.ts +76 -0
  97. package/lib/types/v3/tech-record/put/lgv/skeleton/request/index.d.ts +23 -0
  98. package/lib/types/v3/tech-record/put/lgv/skeleton/response/index.d.ts +76 -0
  99. package/lib/types/v3/tech-record/put/trl/complete/index.d.ts +341 -0
  100. package/lib/types/v3/tech-record/put/trl/skeleton/index.d.ts +250 -0
  101. package/lib/types/v3/tech-record/put/trl/testable/index.d.ts +285 -0
  102. package/package.json +3 -5
  103. package/schemas.ts +0 -49
  104. package/src/schema-validation/schema-validator.ts +0 -25
@@ -0,0 +1,1082 @@
1
+ {
2
+ "title": "PUT HGV Technical Record V3 Skeleton",
3
+ "type": "object",
4
+ "additionalProperties": false,
5
+ "required": [
6
+ "partialVin",
7
+ "techRecord_reasonForCreation",
8
+ "techRecord_statusCode",
9
+ "techRecord_vehicleType",
10
+ "primaryVrm",
11
+ "vin"
12
+ ],
13
+ "properties": {
14
+ "partialVin": {
15
+ "type": "string"
16
+ },
17
+ "techRecord_adrDetails_vehicleDetails_type": {
18
+ "type": [
19
+ "string",
20
+ "null"
21
+ ]
22
+ },
23
+ "techRecord_adrDetails_vehicleDetails_approvalDate": {
24
+ "type": [
25
+ "string",
26
+ "null"
27
+ ]
28
+ },
29
+ "techRecord_adrDetails_permittedDangerousGoods": {
30
+ "type": [
31
+ "array",
32
+ "null"
33
+ ],
34
+ "items": {
35
+ "type": "string"
36
+ }
37
+ },
38
+ "techRecord_adrDetails_compatibilityGroupJ": {
39
+ "type": [
40
+ "boolean",
41
+ "null"
42
+ ]
43
+ },
44
+ "techRecord_adrDetails_additionalExaminerNotes": {
45
+ "type": [
46
+ "string",
47
+ "null"
48
+ ],
49
+ "maxLength": 1024
50
+ },
51
+ "techRecord_adrDetails_applicantDetails_name": {
52
+ "type": [
53
+ "string",
54
+ "null"
55
+ ],
56
+ "maxLength": 150
57
+ },
58
+ "techRecord_adrDetails_applicantDetails_street": {
59
+ "type": [
60
+ "string",
61
+ "null"
62
+ ],
63
+ "maxLength": 150
64
+ },
65
+ "techRecord_adrDetails_applicantDetails_town": {
66
+ "type": [
67
+ "string",
68
+ "null"
69
+ ],
70
+ "maxLength": 100
71
+ },
72
+ "techRecord_adrDetails_applicantDetails_city": {
73
+ "type": [
74
+ "string",
75
+ "null"
76
+ ],
77
+ "maxLength": 100
78
+ },
79
+ "techRecord_adrDetails_applicantDetails_postcode": {
80
+ "type": [
81
+ "string",
82
+ "null"
83
+ ],
84
+ "maxLength": 25
85
+ },
86
+ "techRecord_adrDetails_memosApply": {
87
+ "type": [
88
+ "array",
89
+ "null"
90
+ ],
91
+ "items": {
92
+ "type": [
93
+ "string"
94
+ ]
95
+ }
96
+ },
97
+ "techRecord_adrDetails_documents": {
98
+ "type": [
99
+ "array",
100
+ "null"
101
+ ],
102
+ "items": {
103
+ "type": [
104
+ "string"
105
+ ]
106
+ }
107
+ },
108
+ "techRecord_adrDetails_listStatementApplicable": {
109
+ "type": [
110
+ "boolean",
111
+ "null"
112
+ ]
113
+ },
114
+ "techRecord_adrDetails_batteryListNumber": {
115
+ "type": [
116
+ "string",
117
+ "null"
118
+ ],
119
+ "maxLength": 8
120
+ },
121
+ "techRecord_adrDetails_brakeDeclarationsSeen": {
122
+ "type": [
123
+ "boolean",
124
+ "null"
125
+ ]
126
+ },
127
+ "techRecord_adrDetails_brakeDeclarationIssuer": {
128
+ "type": [
129
+ "string",
130
+ "null"
131
+ ]
132
+ },
133
+ "techRecord_adrDetails_brakeEndurance": {
134
+ "type": [
135
+ "boolean",
136
+ "null"
137
+ ]
138
+ },
139
+ "techRecord_adrDetails_weight": {
140
+ "type": [
141
+ "string",
142
+ "null"
143
+ ],
144
+ "maxLength": 8
145
+ },
146
+ "techRecord_adrDetails_declarationsSeen": {
147
+ "type": [
148
+ "boolean",
149
+ "null"
150
+ ]
151
+ },
152
+ "techRecord_adrDetails_additionalNotes_guidanceNotes": {
153
+ "type": [
154
+ "array",
155
+ "null"
156
+ ],
157
+ "items": {
158
+ "type": "string"
159
+ }
160
+ },
161
+ "techRecord_adrDetails_additionalNotes_number": {
162
+ "type": [
163
+ "array",
164
+ "null"
165
+ ],
166
+ "items": {
167
+ "type": "string"
168
+ }
169
+ },
170
+ "techRecord_adrDetails_adrTypeApprovalNo": {
171
+ "type": [
172
+ "string",
173
+ "null"
174
+ ]
175
+ },
176
+ "techRecord_adrDetails_adrCertificateNotes": {
177
+ "type": [
178
+ "string",
179
+ "null"
180
+ ],
181
+ "maxLength": 1500
182
+ },
183
+ "techRecord_adrDetails_tank_tankDetails_tankManufacturer": {
184
+ "type": [
185
+ "string",
186
+ "null"
187
+ ],
188
+ "maxLength": 70
189
+ },
190
+ "techRecord_adrDetails_tank_tankDetails_yearOfManufacture": {
191
+ "type": [
192
+ "integer",
193
+ "null"
194
+ ],
195
+ "maximum": 9999
196
+ },
197
+ "techRecord_adrDetails_tank_tankDetails_tankManufacturerSerialNo": {
198
+ "type": [
199
+ "string",
200
+ "null"
201
+ ],
202
+ "maxLength": 50
203
+ },
204
+ "techRecord_adrDetails_tank_tankDetails_tankTypeAppNo": {
205
+ "type": [
206
+ "string",
207
+ "null"
208
+ ],
209
+ "maxLength": 30
210
+ },
211
+ "techRecord_adrDetails_tank_tankDetails_tankCode": {
212
+ "type": [
213
+ "string",
214
+ "null"
215
+ ],
216
+ "maxLength": 30
217
+ },
218
+ "techRecord_adrDetails_tank_tankDetails_specialProvisions": {
219
+ "type": [
220
+ "string",
221
+ "null"
222
+ ],
223
+ "maxLength": 1024
224
+ },
225
+ "techRecord_adrDetails_tank_tankDetails_tc2Details_tc2Type": {
226
+ "anyOf": [
227
+ {
228
+ "type": "null"
229
+ },
230
+ {
231
+ "title": "TC2 Types",
232
+ "type": "string",
233
+ "enum": [
234
+ "initial"
235
+ ]
236
+ }
237
+ ]
238
+ },
239
+ "techRecord_adrDetails_tank_tankDetails_tc2Details_tc2IntermediateApprovalNo": {
240
+ "type": [
241
+ "string",
242
+ "null"
243
+ ],
244
+ "maxLength": 70
245
+ },
246
+ "techRecord_adrDetails_tank_tankDetails_tc2Details_tc2IntermediateExpiryDate": {
247
+ "type": [
248
+ "string",
249
+ "null"
250
+ ]
251
+ },
252
+ "techRecord_adrDetails_tank_tankDetails_tc3Details_tc3Type": {
253
+ "anyOf": [
254
+ {
255
+ "type": "null"
256
+ },
257
+ {
258
+ "title": "TC3 Types",
259
+ "type": "string",
260
+ "enum": [
261
+ "intermediate",
262
+ "periodic",
263
+ "exceptional"
264
+ ]
265
+ }
266
+ ]
267
+ },
268
+ "techRecord_adrDetails_tank_tankDetails_tc3Type_tc3PeriodicNumber": {
269
+ "type": [
270
+ "string",
271
+ "null"
272
+ ],
273
+ "maxLength": 75
274
+ },
275
+ "techRecord_adrDetails_tank_tankDetails_tc3Type_tc3PeriodicExpiryDate": {
276
+ "type": [
277
+ "string",
278
+ "null"
279
+ ]
280
+ },
281
+ "techRecord_adrDetails_tank_tankDetails_tankStatement_substancesPermitted": {
282
+ "type": [
283
+ "string",
284
+ "null"
285
+ ]
286
+ },
287
+ "techRecord_adrDetails_tank_tankDetails_tankStatement_statement": {
288
+ "type": [
289
+ "string",
290
+ "null"
291
+ ],
292
+ "maxLength": 1500
293
+ },
294
+ "techRecord_adrDetails_tank_tankDetails_tankStatement_productListRefNo": {
295
+ "type": [
296
+ "string",
297
+ "null"
298
+ ]
299
+ },
300
+ "techRecord_adrDetails_tank_tankDetails_tankStatement_productListUnNo": {
301
+ "type": [
302
+ "array",
303
+ "null"
304
+ ],
305
+ "items": {
306
+ "type": [
307
+ "string"
308
+ ]
309
+ }
310
+ },
311
+ "techRecord_adrDetails_tank_tankDetails_tankStatement_productList": {
312
+ "type": [
313
+ "string",
314
+ "null"
315
+ ],
316
+ "maxLength": 1500
317
+ },
318
+ "techRecord_alterationMarker": {
319
+ "type": [
320
+ "boolean",
321
+ "null"
322
+ ]
323
+ },
324
+ "techRecord_applicantDetails_name": {
325
+ "type": [
326
+ "string",
327
+ "null"
328
+ ],
329
+ "maxLength": 150
330
+ },
331
+ "techRecord_applicantDetails_address1": {
332
+ "type": [
333
+ "null",
334
+ "string"
335
+ ],
336
+ "maxLength": 60
337
+ },
338
+ "techRecord_applicantDetails_address2": {
339
+ "type": [
340
+ "null",
341
+ "string"
342
+ ],
343
+ "maxLength": 60
344
+ },
345
+ "techRecord_applicantDetails_postTown": {
346
+ "type": [
347
+ "null",
348
+ "string"
349
+ ],
350
+ "maxLength": 60
351
+ },
352
+ "techRecord_applicantDetails_address3": {
353
+ "type": [
354
+ "null",
355
+ "string"
356
+ ],
357
+ "maxLength": 60
358
+ },
359
+ "techRecord_applicantDetails_postCode": {
360
+ "type": [
361
+ "null",
362
+ "string"
363
+ ],
364
+ "maxLength": 12
365
+ },
366
+ "techRecord_applicantDetails_telephoneNumber": {
367
+ "type": [
368
+ "null",
369
+ "string"
370
+ ],
371
+ "maxLength": 25
372
+ },
373
+ "techRecord_applicantDetails_emailAddress": {
374
+ "type": [
375
+ "null",
376
+ "string"
377
+ ],
378
+ "maxLength": 255
379
+ },
380
+ "techRecord_applicationId": {
381
+ "type": [
382
+ "string",
383
+ "null"
384
+ ]
385
+ },
386
+ "axles": {
387
+ "type": "array",
388
+ "items": {
389
+ "type": "object",
390
+ "title": "HGV Axles",
391
+ "additionalProperties": false,
392
+ "properties": {
393
+ "techRecord_parkingBrakeMrk": {
394
+ "type": [
395
+ "boolean",
396
+ "null"
397
+ ]
398
+ },
399
+ "techRecord_axleNumber": {
400
+ "type": [
401
+ "integer",
402
+ "null"
403
+ ]
404
+ },
405
+ "techRecord_weights_gbWeight": {
406
+ "type": [
407
+ "integer",
408
+ "null"
409
+ ],
410
+ "minimum": 0,
411
+ "maximum": 99999
412
+ },
413
+ "techRecord_weights_designWeight": {
414
+ "type": [
415
+ "integer",
416
+ "null"
417
+ ],
418
+ "minimum": 0,
419
+ "maximum": 99999
420
+ },
421
+ "techRecord_weights_eecWeight": {
422
+ "type": [
423
+ "integer",
424
+ "null"
425
+ ],
426
+ "minimum": 0,
427
+ "maximum": 99999
428
+ },
429
+ "techRecord_tyres_tyreCode": {
430
+ "type": [
431
+ "integer",
432
+ "null"
433
+ ],
434
+ "minimum": 0,
435
+ "maximum": 99999
436
+ },
437
+ "techRecord_tyres_tyreSize": {
438
+ "type": [
439
+ "string",
440
+ "null"
441
+ ],
442
+ "maxLength": 12
443
+ },
444
+ "techRecord_tyres_plyRating": {
445
+ "type": [
446
+ "string",
447
+ "null"
448
+ ]
449
+ },
450
+ "techRecord_tyres_fitmentCode": {
451
+ "anyOf": [
452
+ {
453
+ "type": "null"
454
+ },
455
+ {
456
+ "title": "Fitment Code",
457
+ "type": "string",
458
+ "enum": [
459
+ "single",
460
+ "double"
461
+ ]
462
+ }
463
+ ]
464
+ },
465
+ "techRecord_tyres_dataTrAxles": {
466
+ "type": [
467
+ "null",
468
+ "integer"
469
+ ],
470
+ "minimum": 0,
471
+ "maximum": 999
472
+ }
473
+ }
474
+ }
475
+ },
476
+ "techRecord_bodyType_code": {
477
+ "type": "string"
478
+ },
479
+ "techRecord_bodyType_description": {
480
+ "type": "string"
481
+ },
482
+ "techRecord_brakes_antilockBrakingSystem": {
483
+ "type": [
484
+ "string",
485
+ "null"
486
+ ]
487
+ },
488
+ "techRecord_brakes_dtpNumber": {
489
+ "type": [
490
+ "string",
491
+ "null"
492
+ ],
493
+ "maxLength": 6
494
+ },
495
+ "techRecord_brakes_loadSensingValve": {
496
+ "type": [
497
+ "boolean",
498
+ "null"
499
+ ]
500
+ },
501
+ "techRecord_conversionRefNo": {
502
+ "type": [
503
+ "string",
504
+ "null"
505
+ ],
506
+ "maxLength": 10
507
+ },
508
+ "techRecord_departmentalVehicleMarker": {
509
+ "type": [
510
+ "boolean",
511
+ "null"
512
+ ]
513
+ },
514
+ "techRecord_dimensions_axleSpacing_axles": {
515
+ "type": "string"
516
+ },
517
+ "techRecord_dimensions_axleSpacing_value": {
518
+ "type": [
519
+ "integer",
520
+ "null"
521
+ ],
522
+ "maximum": 99999,
523
+ "minimum": 0
524
+ },
525
+ "techRecord_dimensions_length": {
526
+ "type": [
527
+ "integer",
528
+ "null"
529
+ ],
530
+ "maximum": 99999,
531
+ "minimum": 0
532
+ },
533
+ "techRecord_dimensions_width": {
534
+ "type": [
535
+ "integer",
536
+ "null"
537
+ ],
538
+ "maximum": 99999,
539
+ "minimum": 0
540
+ },
541
+ "techRecord_drawbarCouplingFitted": {
542
+ "type": [
543
+ "boolean",
544
+ "null"
545
+ ]
546
+ },
547
+ "techRecord_emissionsLimit": {
548
+ "type": [
549
+ "null",
550
+ "integer"
551
+ ],
552
+ "minimum": 0,
553
+ "maximum": 99
554
+ },
555
+ "techRecord_euroStandard": {
556
+ "type": [
557
+ "string",
558
+ "null"
559
+ ]
560
+ },
561
+ "techRecord_euVehicleCategory": {
562
+ "anyOf": [
563
+ {
564
+ "title": "EU vehicle category",
565
+ "type": "string",
566
+ "enum": [
567
+ "m1",
568
+ "m2",
569
+ "m3",
570
+ "n1",
571
+ "n2",
572
+ "n3",
573
+ "o1",
574
+ "o2",
575
+ "o3",
576
+ "o4",
577
+ "l1e-a",
578
+ "l1e",
579
+ "l2e",
580
+ "l3e",
581
+ "l4e",
582
+ "l5e",
583
+ "l6e",
584
+ "l7e"
585
+ ]
586
+ },
587
+ {
588
+ "type": "null"
589
+ }
590
+ ]
591
+ },
592
+ "techRecord_frontAxleToRearAxle": {
593
+ "type": [
594
+ "integer",
595
+ "null"
596
+ ],
597
+ "maximum": 99999,
598
+ "minimum": 0
599
+ },
600
+ "techRecord_frontAxleTo5thWheelMin": {
601
+ "type": [
602
+ "integer",
603
+ "null"
604
+ ],
605
+ "maximum": 99999,
606
+ "minimum": 0
607
+ },
608
+ "techRecord_frontAxleTo5thWheelMax": {
609
+ "type": [
610
+ "integer",
611
+ "null"
612
+ ],
613
+ "maximum": 99999,
614
+ "minimum": 0
615
+ },
616
+ "techRecord_frontVehicleTo5thWheelCouplingMin": {
617
+ "type": [
618
+ "integer",
619
+ "null"
620
+ ],
621
+ "maximum": 99999,
622
+ "minimum": 0
623
+ },
624
+ "techRecord_frontVehicleTo5thWheelCouplingMax": {
625
+ "type": [
626
+ "integer",
627
+ "null"
628
+ ],
629
+ "maximum": 99999,
630
+ "minimum": 0
631
+ },
632
+ "techRecord_fuelPropulsionSystem": {
633
+ "anyOf": [
634
+ {
635
+ "title": "Fuel Propulsion System",
636
+ "type": "string",
637
+ "enum": [
638
+ "DieselPetrol",
639
+ "Diesel",
640
+ "Petrol",
641
+ "Hybrid",
642
+ "Electric",
643
+ "CNG",
644
+ "Fuel cell",
645
+ "LNG",
646
+ "Other"
647
+ ]
648
+ },
649
+ {
650
+ "type": "null"
651
+ }
652
+ ]
653
+ },
654
+ "techRecord_functionCode": {
655
+ "type": [
656
+ "string",
657
+ "null"
658
+ ],
659
+ "maxLength": 1
660
+ },
661
+ "techRecord_grossDesignWeight": {
662
+ "type": [
663
+ "integer",
664
+ "null"
665
+ ],
666
+ "maximum": 99999,
667
+ "minimum": 0
668
+ },
669
+ "techRecord_grossEecWeight": {
670
+ "type": [
671
+ "integer",
672
+ "null"
673
+ ],
674
+ "maximum": 99999,
675
+ "minimum": 0
676
+ },
677
+ "techRecord_grossGbWeight": {
678
+ "type": [
679
+ "integer",
680
+ "null"
681
+ ],
682
+ "maximum": 99999,
683
+ "minimum": 0
684
+ },
685
+ "techRecord_make": {
686
+ "type": [
687
+ "string",
688
+ "null"
689
+ ],
690
+ "maxLength": 30
691
+ },
692
+ "techRecord_maxTrainGbWeight": {
693
+ "type": [
694
+ "number",
695
+ "null"
696
+ ],
697
+ "maximum": 99999,
698
+ "minimum": 0
699
+ },
700
+ "techRecord_maxTrainEecWeight": {
701
+ "type": [
702
+ "number",
703
+ "null"
704
+ ],
705
+ "maximum": 99999,
706
+ "minimum": 0
707
+ },
708
+ "techRecord_maxTrainDesignWeight": {
709
+ "type": [
710
+ "number",
711
+ "null"
712
+ ],
713
+ "maximum": 99999,
714
+ "minimum": 0
715
+ },
716
+ "techRecord_manufactureYear": {
717
+ "anyOf": [
718
+ {
719
+ "type": "integer",
720
+ "minimum": 0,
721
+ "maximum": 9999
722
+ },
723
+ {
724
+ "type": "null"
725
+ }
726
+ ]
727
+ },
728
+ "techRecord_microfilm_microfilmDocumentType": {
729
+ "anyOf": [
730
+ {
731
+ "type": "null"
732
+ },
733
+ {
734
+ "title": "Microfilm Document Types",
735
+ "type": "string",
736
+ "enum": [
737
+ "PSV Miscellaneous",
738
+ "AAT - Trailer Annual Test",
739
+ "AIV - HGV International App",
740
+ "COIF Modification",
741
+ "Trailer COC + Int Plate",
742
+ "RCT - Trailer Test Cert paid",
743
+ "HGV COC + Int Plate",
744
+ "PSV Carry/Auth",
745
+ "OMO Report",
746
+ "AIT - Trailer International App",
747
+ "IPV - HGV EEC Plate/Cert",
748
+ "XCV - HGV Test Cert free",
749
+ "AAV - HGV Annual Test",
750
+ "COIF Master",
751
+ "Tempo 100 Sp Ord",
752
+ "Deleted",
753
+ "PSV N/ALT",
754
+ "XPT - Tr Plating Cert paid",
755
+ "FFV - HGV First Test",
756
+ "Repl Vitesse 100",
757
+ "TCV - HGV Test Cert",
758
+ "ZZZ - Miscellaneous",
759
+ "Test Certificate",
760
+ "XCT - Trailer Test Cert free",
761
+ "C52 - COC and VTG52A",
762
+ "Tempo 100 Report",
763
+ "Main File Amendment",
764
+ "PSV Doc",
765
+ "PSV COC",
766
+ "PSV Repl COC",
767
+ "TAV - COC",
768
+ "NPT - Trailer Alteration",
769
+ "OMO Certificate",
770
+ "PSV Repl COIF",
771
+ "PSV Repl COF",
772
+ "COIF Application",
773
+ "XPV - HGV Plating Cert Free",
774
+ "TCT - Trailer Test Cert",
775
+ "Tempo 100 App",
776
+ "PSV Decision on N/ALT",
777
+ "Special Order PSV",
778
+ "NPV - HGV Alteration",
779
+ "No Description Found",
780
+ "Vitesse 100 Sp Ord",
781
+ "Brake Test Details",
782
+ "COIF Productional",
783
+ "RDT - Test Disc Paid",
784
+ "RCV - HGV Test Cert",
785
+ "FFT - Trailer First Test",
786
+ "IPT - Trailer EEC Plate/Cert",
787
+ "XDT - Test Disc Free",
788
+ "PRV - HGV Plating Cert paid",
789
+ "COF Cert",
790
+ "PRT - Tr Plating Cert paid",
791
+ "Tempo 100 Permit"
792
+ ]
793
+ }
794
+ ]
795
+ },
796
+ "techRecord_microfilm_microfilmRollNumber": {
797
+ "type": [
798
+ "string",
799
+ "null"
800
+ ],
801
+ "maxLength": 5
802
+ },
803
+ "techRecord_microfilm_microfilmSerialNumber": {
804
+ "type": [
805
+ "string",
806
+ "null"
807
+ ],
808
+ "maxLength": 4
809
+ },
810
+ "techRecord_model": {
811
+ "type": [
812
+ "string",
813
+ "null"
814
+ ],
815
+ "maxLength": 30
816
+ },
817
+ "techRecord_numberOfWheelsDriven": {
818
+ "type": [
819
+ "integer",
820
+ "null"
821
+ ]
822
+ },
823
+ "techRecord_noOfAxles": {
824
+ "anyOf": [
825
+ {
826
+ "type": "integer",
827
+ "minimum": 0,
828
+ "maximum": 99
829
+ },
830
+ {
831
+ "type": "null"
832
+ }
833
+ ]
834
+ },
835
+ "techRecord_notes": {
836
+ "type": [
837
+ "string",
838
+ "null"
839
+ ]
840
+ },
841
+ "techRecord_offRoad": {
842
+ "type": [
843
+ "boolean",
844
+ "null"
845
+ ]
846
+ },
847
+ "plates": {
848
+ "type": "array",
849
+ "items": {
850
+ "type": "object",
851
+ "title": "HGV Plates",
852
+ "additionalProperties": false,
853
+ "properties": {
854
+ "techRecord_plateSerialNumber": {
855
+ "type": [
856
+ "string",
857
+ "null"
858
+ ],
859
+ "maxLength": 12
860
+ },
861
+ "techRecord_plateIssueDate": {
862
+ "type": [
863
+ "string",
864
+ "null"
865
+ ]
866
+ },
867
+ "techRecord_reasonForIssue": {
868
+ "anyOf": [
869
+ {
870
+ "type": "null"
871
+ },
872
+ {
873
+ "title": "Plate Reason For Issue",
874
+ "type": "string",
875
+ "enum": [
876
+ "Free replacement",
877
+ "Replacement",
878
+ "Destroyed",
879
+ "Provisional",
880
+ "Original",
881
+ "Manual"
882
+ ]
883
+ }
884
+ ]
885
+ },
886
+ "techRecord_plateIssuer": {
887
+ "type": [
888
+ "string",
889
+ "null"
890
+ ],
891
+ "maxLength": 150
892
+ }
893
+ }
894
+ }
895
+ },
896
+ "techRecord_reasonForCreation": {
897
+ "type": "string"
898
+ },
899
+ "techRecord_regnDate": {
900
+ "anyOf": [
901
+ {
902
+ "type": "string",
903
+ "pattern": "^$"
904
+ },
905
+ {
906
+ "type": "string",
907
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
908
+ },
909
+ {
910
+ "type": "null"
911
+ }
912
+ ]
913
+ },
914
+ "techRecord_roadFriendly": {
915
+ "type": [
916
+ "boolean",
917
+ "null"
918
+ ]
919
+ },
920
+ "techRecord_statusCode": {
921
+ "title": "Status Code",
922
+ "type": "string",
923
+ "enum": [
924
+ "provisional",
925
+ "current",
926
+ "archived"
927
+ ]
928
+ },
929
+ "techRecord_speedLimiterMrk": {
930
+ "type": [
931
+ "boolean",
932
+ "null"
933
+ ]
934
+ },
935
+ "techRecord_tachoExemptMrk": {
936
+ "type": [
937
+ "boolean",
938
+ "null"
939
+ ]
940
+ },
941
+ "techRecord_trainDesignWeight": {
942
+ "type": [
943
+ "integer",
944
+ "null"
945
+ ],
946
+ "minimum": 0,
947
+ "maximum": 99999
948
+ },
949
+ "techRecord_trainEecWeight": {
950
+ "type": [
951
+ "number",
952
+ "null"
953
+ ],
954
+ "maximum": 99999,
955
+ "minimum": 0
956
+ },
957
+ "techRecord_trainGbWeight": {
958
+ "type": [
959
+ "number",
960
+ "null"
961
+ ],
962
+ "maximum": 99999,
963
+ "minimum": 0
964
+ },
965
+ "techRecord_tyreUseCode": {
966
+ "type": [
967
+ "string",
968
+ "null"
969
+ ],
970
+ "maxLength": 2
971
+ },
972
+ "techRecord_vehicleClass_code": {
973
+ "type": "string"
974
+ },
975
+ "techRecord_vehicleClass_description": {
976
+ "title": "Vehicle Class Description",
977
+ "type": "string",
978
+ "enum": [
979
+ "motorbikes over 200cc or with a sidecar",
980
+ "not applicable",
981
+ "small psv (ie: less than or equal to 22 seats)",
982
+ "motorbikes up to 200cc",
983
+ "trailer",
984
+ "large psv(ie: greater than 23 seats)",
985
+ "3 wheelers",
986
+ "heavy goods vehicle",
987
+ "MOT class 4",
988
+ "MOT class 7",
989
+ "MOT class 5"
990
+ ]
991
+ },
992
+ "techRecord_vehicleConfiguration": {
993
+ "anyOf": [
994
+ {
995
+ "title": "Vehicle Configuration",
996
+ "type": "string",
997
+ "enum": [
998
+ "rigid",
999
+ "articulated",
1000
+ "centre axle drawbar",
1001
+ "semi-car transporter",
1002
+ "semi-trailer",
1003
+ "long semi-trailer",
1004
+ "low loader",
1005
+ "other",
1006
+ "drawbar",
1007
+ "four-in-line",
1008
+ "dolly",
1009
+ "full drawbar"
1010
+ ]
1011
+ },
1012
+ {
1013
+ "type": "null"
1014
+ }
1015
+ ]
1016
+ },
1017
+ "techRecord_approvalType": {
1018
+ "anyOf": [
1019
+ {
1020
+ "title": "Approval Type",
1021
+ "type": "string",
1022
+ "enum": [
1023
+ "NTA",
1024
+ "ECTA",
1025
+ "IVA",
1026
+ "NSSTA",
1027
+ "ECSSTA",
1028
+ "GB WVTA",
1029
+ "UKNI WVTA",
1030
+ "EU WVTA Pre 23",
1031
+ "EU WVTA 23 on",
1032
+ "QNIG",
1033
+ "Prov.GB WVTA",
1034
+ "Small series",
1035
+ "IVA - VCA",
1036
+ "IVA - DVSA/NI"
1037
+ ]
1038
+ },
1039
+ {
1040
+ "type": "null"
1041
+ }
1042
+ ]
1043
+ },
1044
+ "techRecord_approvalTypeNumber": {
1045
+ "type": [
1046
+ "string",
1047
+ "null"
1048
+ ],
1049
+ "maxLength": 25
1050
+ },
1051
+ "techRecord_ntaNumber": {
1052
+ "type": [
1053
+ "string",
1054
+ "null"
1055
+ ],
1056
+ "maxLength": 40
1057
+ },
1058
+ "techRecord_variantNumber": {
1059
+ "type": [
1060
+ "string",
1061
+ "null"
1062
+ ],
1063
+ "maxLength": 25
1064
+ },
1065
+ "techRecord_variantVersionNumber": {
1066
+ "type": [
1067
+ "string",
1068
+ "null"
1069
+ ],
1070
+ "maxLength": 35
1071
+ },
1072
+ "techRecord_vehicleType": {
1073
+ "const": "hgv"
1074
+ },
1075
+ "primaryVrm": {
1076
+ "type": "string"
1077
+ },
1078
+ "vin": {
1079
+ "type": "string"
1080
+ }
1081
+ }
1082
+ }