UNPKG

@dvsa/mes-test-schema

Version:

Domain model for data associated with tests administered by the Driving Examiner Services project

266 lines (265 loc) 7.58 kB
{ "title": "Partial Test Result Cat D1E Schema", "type": "object", "definitions": { "uncoupleRecouple": { "additionalProperties": false, "properties": { "fault": { "$ref": "#/definitions/manoeuvreOutcome" }, "faultComments": { "$ref": "#/definitions/faultComments" }, "selected": { "$ref": "#/definitions/manoeuvreIndicator" } }, "type": "object" }, "passCompletion": { "properties": { "code78Present": { "$ref": "#/definitions/code78Present" } }, "additionalProperties": false }, "pcvDoorExercise": { "additionalProperties": false, "properties": { "drivingFault": { "description": "Whether a driving fault was marked on the PCV Door Exercise", "type": "boolean" }, "seriousFault": { "description": "Whether a serious fault was marked on the PCV Door Exercise", "type": "boolean" }, "dangerousFault": { "description": "Whether a dangerous fault was marked on the PCV Door Exercise", "type": "boolean" }, "drivingFaultComments": { "$ref": "#/definitions/faultComments" }, "seriousFaultComments": { "$ref": "#/definitions/faultComments" }, "dangerousFaultComments": { "$ref": "#/definitions/faultComments" } }, "type": "object" }, "code78Present": { "$ref": "../common/index.json#/definitions/code78Present" }, "faultComments": { "$ref": "../common/index.json#/definitions/faultComments" }, "preTestDeclarations": { "type": "object", "additionalProperties": false, "properties": { "manoeuvrePassCertificateNumber": { "description": "Pass certificate number from the `a` part of the vocational test", "type": "string", "minLength": 8, "maxLength": 8 } } }, "manoeuvre": { "$ref": "../common/index.json#/definitions/manoeuvre" }, "manoeuvreOutcome": { "$ref": "../common/index.json#/definitions/manoeuvreOutcome" }, "manoeuvreIndicator": { "$ref": "../common/index.json#/definitions/manoeuvreIndicator" }, "manoeuvres": { "additionalProperties": false, "description": "The manoeuvres that were carried out during the test and any faults recorded against them", "type": "object", "properties": { "reverseLeft": { "$ref": "#/definitions/manoeuvre" } } }, "questionResult": { "$ref": "../common/index.json#/definitions/questionResult" }, "safetyQuestionResult": { "$ref": "../common/index.json#/definitions/safetyQuestionResult" }, "vehicleChecks": { "additionalProperties": false, "description": "Details of the Show Me and Tell Me questions asked during the test", "properties": { "showMeQuestions": { "items": { "$ref": "#/definitions/questionResult" }, "type": "array" }, "showMeTellMeComments": { "$ref": "#/definitions/faultComments" }, "tellMeQuestions": { "items": { "$ref": "#/definitions/questionResult" }, "type": "array" }, "vehicleChecksCompleted": { "description" : "Indicates whether the vehicle checks has been completed", "type": "boolean" }, "fullLicenceHeld": { "description" : "Indicates whether the candidate has a full licence", "type": "boolean" } }, "type": "object" }, "safetyQuestions": { "additionalProperties": false, "description": "Details of the safety questions asked during the test", "properties": { "questions": { "items": { "$ref": "#/definitions/safetyQuestionResult" }, "type": "array" }, "faultComments": { "$ref": "#/definitions/faultComments" } }, "type": "object" }, "vehicleDetails": { "additionalProperties": false, "type": "object", "properties": { "vehicleLength": { "description": "Indicates the length of the vehicle", "type": "number" }, "vehicleWidth": { "description": "Indicates the width of the vehicle", "type": "number" } } }, "journalData": { "properties": { "candidate": { "$ref": "#/definitions/candidate" } }, "additionalProperties": false, "required": [ "candidate" ] }, "address": { "$ref": "../common/index.json#/definitions/address" }, "businessName": { "description": "Name of the business the candidate relates to", "type": "string", "maxLength": 100 }, "businessTelephone": { "description": "Telephone number of the business the candidate relates to", "type": "string", "maxLength": 20 }, "candidate": { "properties": { "businessAddress": { "$ref": "#/definitions/address" }, "businessName": { "$ref": "#/definitions/businessName" }, "businessTelephone": { "$ref": "#/definitions/businessTelephone" } }, "type": "object", "additionalProperties": false }, "testData": { "description": "Data associated with the test", "type": "object", "properties": { "testRequirements": { "$ref": "#/definitions/testRequirements" }, "manoeuvres": { "$ref": "#/definitions/manoeuvres" }, "vehicleChecks": { "$ref": "#/definitions/vehicleChecks" }, "pcvDoorExercise": { "$ref": "#/definitions/pcvDoorExercise" }, "safetyQuestions": { "$ref": "#/definitions/safetyQuestions" }, "uncoupleRecouple": { "$ref": "#/definitions/uncoupleRecouple" } }, "additionalProperties": false }, "testRequirements": { "additionalProperties": false, "description": "The test requirements that must be carried out during a test", "properties": { "angledStartControlledStop": { "description": "Indicates whether or not this test requirement was carried out", "type": "boolean" }, "downhillStart": { "description": "Indicates whether or not this test requirement was carried out", "type": "boolean" }, "uphillStart": { "description": "Indicates whether or not this test requirement was carried out", "type": "boolean" }, "busStop1": { "description": "Indicates whether or not this test requirement was carried out", "type": "boolean" }, "busStop2": { "description": "Indicates whether or not this test requirement was carried out", "type": "boolean" } }, "type": "object" } }, "properties": { "testData": { "$ref": "#/definitions/testData" }, "journalData": { "$ref": "#/definitions/journalData" }, "vehicleDetails": { "$ref": "#/definitions/vehicleDetails" } }, "additionalProperties": false, "required": [ "journalData" ] }