@dvsa/cvs-type-definitions 1.0.11 → 2.0.12

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