UNPKG

@dvsa/mes-test-schema

Version:

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

1,811 lines 81.5 kB
{ "title": "Test Result Cat AM1 Schema", "type": "object", "definitions": { "singleFaultCompetencies": { "additionalProperties": false, "description": "Single fault competencies associated with the test", "properties": { "useOfStand": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "useOfStandComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "manualHandling": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "manualHandlingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "slalom": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "slalomComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "slowControl": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "slowControlComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "uTurn": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "uTurnComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlledStop": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "controlledStopComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "emergencyStop": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "emergencyStopComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "avoidance": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "avoidanceComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } } }, "circuit": { "description": "Circuit completed (left or right)", "type": "string", "enum": [ "Left", "Right" ] }, "testData": { "additionalProperties": false, "description": "Data associated with the test", "properties": { "singleFaultCompetencies": { "additionalProperties": false, "description": "Single fault competencies associated with the test", "properties": { "useOfStand": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "useOfStandComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "manualHandling": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "manualHandlingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "slalom": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "slalomComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "slowControl": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "slowControlComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "uTurn": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "uTurnComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlledStop": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "controlledStopComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "emergencyStop": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "emergencyStopComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "avoidance": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "avoidanceComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } } }, "emergencyStop": { "description": "The outcome of emergency stop tests", "type": "object", "additionalProperties": false, "properties": { "firstAttempt": { "description": "The speed of the first attempt", "type": "integer" }, "secondAttempt": { "description": "The speed of the second attempt", "type": "integer" }, "outcome": { "description": "The possible outcomes of speed requirment fault competency", "enum": [ "S" ], "type": "string" }, "comments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } } }, "avoidance": { "description": "The outcome of avoidance tests", "type": "object", "additionalProperties": false, "properties": { "firstAttempt": { "description": "The speed of the first attempt", "type": "integer" }, "secondAttempt": { "description": "The speed of the second attempt", "type": "integer" }, "outcome": { "description": "The possible outcomes of speed requirment fault competency", "enum": [ "S" ], "type": "string" }, "comments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } } }, "drivingFaults": { "description": "The driving faults accumulated during the test", "type": "object", "properties": { "precautions": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "precautionsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffSafety": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "moveOffSafetyComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffControl": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "moveOffControlComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } }, "additionalProperties": false }, "seriousFaults": { "description": "The serious faults accumulated during the test", "type": "object", "properties": { "precautions": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "precautionsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffSafety": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "moveOffSafetyComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffControl": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "moveOffControlComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } }, "additionalProperties": false }, "dangerousFaults": { "description": "The dangerous faults accumulated during the test", "type": "object", "properties": { "precautions": { "description": "Indicator for a dangerous fault being recorded against a test element", "type": "boolean" }, "precautionsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffSafety": { "description": "Indicator for a dangerous fault being recorded against a test element", "type": "boolean" }, "moveOffSafetyComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffControl": { "description": "Indicator for a dangerous fault being recorded against a test element", "type": "boolean" }, "moveOffControlComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } }, "additionalProperties": false }, "ETA": { "description": "Indicates whether the examiner had to take physical or verbal action during the test", "type": "object", "properties": { "physical": { "description": "Indicates that the examiner had to take physical action", "type": "boolean" }, "verbal": { "description": "Indicates that the examiner had to take verbal action", "type": "boolean" } }, "additionalProperties": false } }, "type": "object" }, "singleFaultCompetencyOutcome": { "description": "The possible outcomes of any single fault competency", "enum": [ "DF", "S", "D" ], "type": "string" }, "SpeedRequirementCompetencyOutcome": { "description": "The possible outcomes of speed requirment fault competency", "enum": [ "S" ], "type": "string" }, "examiner": { "description": "The examiner details", "type": "object", "properties": { "staffNumber": { "description": "The examiner's DSA staff number", "type": "string", "maxLength": 10 }, "individualId": { "description": "The individual ID of the examiner", "type": "number" } }, "additionalProperties": false, "required": [ "staffNumber" ] }, "testCentre": { "description": "Details of the test centre", "type": "object", "properties": { "centreId": { "description": "Identifer for the test centre", "type": "integer" }, "costCode": { "description": "Cost centre code for the test centre", "type": "string", "maxLength": 6 }, "centreName": { "description": "Name of the test centre", "type": "string", "maxLength": 50 } }, "additionalProperties": false, "required": [ "centreId", "costCode" ] }, "name": { "description": "Details of the individual's name", "type": "object", "properties": { "title": { "description": "The individual's title", "type": "string", "maxLength": 7 }, "firstName": { "description": "The individual's forename", "type": "string", "maxLength": 50 }, "secondName": { "description": "The individual's second name", "type": "string", "maxLength": 50 }, "thirdName": { "description": "The individual's third name", "type": "string", "maxLength": 50 }, "lastName": { "description": "The individual's surname", "type": "string", "maxLength": 50 } }, "additionalProperties": false }, "address": { "description": "Details of the address", "type": "object", "properties": { "addressLine1": { "description": "First line of address", "type": "string", "maxLength": 255 }, "addressLine2": { "description": "Second line of address", "type": "string", "maxLength": 100 }, "addressLine3": { "description": "Third line of address", "type": "string", "maxLength": 100 }, "addressLine4": { "description": "Fourth line of address", "type": "string", "maxLength": 100 }, "addressLine5": { "description": "Fifth line of address", "type": "string", "maxLength": 255 }, "postcode": { "description": "The address postcode", "type": "string", "maxLength": 255 } }, "additionalProperties": false }, "candidate": { "description": "Details of the candidate booked into the test slot", "type": "object", "properties": { "candidateId": { "description": "The id of the test candidate", "type": "integer" }, "candidateName": { "description": "Details of the individual's name", "type": "object", "properties": { "title": { "description": "The individual's title", "type": "string", "maxLength": 7 }, "firstName": { "description": "The individual's forename", "type": "string", "maxLength": 50 }, "secondName": { "description": "The individual's second name", "type": "string", "maxLength": 50 }, "thirdName": { "description": "The individual's third name", "type": "string", "maxLength": 50 }, "lastName": { "description": "The individual's surname", "type": "string", "maxLength": 50 } }, "additionalProperties": false }, "driverNumber": { "description": "The candidate's driver number, typically (though not always) 16 characters if UK, or 8 digits if NI", "type": "string", "maxLength": 24 }, "dateOfBirth": { "description": "The candidate's date of birth, formatted as an ISO 8601 date (YYYY-MM-DD)", "type": "string", "minLength": 10, "maxLength": 10 }, "gender": { "description": "The gender of an individual, limited to 'M' or 'F' as per TARS master data", "type": "string", "enum": [ "M", "F" ] }, "candidateAddress": { "description": "Details of the address", "type": "object", "properties": { "addressLine1": { "description": "First line of address", "type": "string", "maxLength": 255 }, "addressLine2": { "description": "Second line of address", "type": "string", "maxLength": 100 }, "addressLine3": { "description": "Third line of address", "type": "string", "maxLength": 100 }, "addressLine4": { "description": "Fourth line of address", "type": "string", "maxLength": 100 }, "addressLine5": { "description": "Fifth line of address", "type": "string", "maxLength": 255 }, "postcode": { "description": "The address postcode", "type": "string", "maxLength": 255 } }, "additionalProperties": false }, "primaryTelephone": { "description": "The candidate's primary telephone number, if any (and consent to leave voicemail has been given)", "type": "string", "maxLength": 20 }, "secondaryTelephone": { "description": "The candidate's secondary telephone number, if any (and consent to leave voicemail has been given)", "type": "string", "maxLength": 20 }, "mobileTelephone": { "description": "The candidate's mobile telephone number, if any (and consent to leave voicemail has been given)", "type": "string", "maxLength": 30 }, "emailAddress": { "description": "The candidate's email address, if any", "type": "string", "maxLength": 100 }, "prn": { "description": "The candidate's ADI PRN (potential register number), if an ADI test", "type": "integer" }, "previousADITests": { "description": "The number of previous test attempts, if an ADI test", "type": "integer" }, "ethnicityCode": { "description": "A character between A and G representing different categories of ethnicity", "type": "string", "minLength": 1, "maxLength": 1 } }, "additionalProperties": false }, "applicationReference": { "description": "The full application identifier, including applicationId, bookingSequence and checkDigit", "type": "object", "properties": { "applicationId": { "description": "Unique identifier for each test application", "type": "integer" }, "bookingSequence": { "description": "Booking sequence number of the test application", "type": "integer" }, "checkDigit": { "description": "Reference checksum for the test application", "type": "integer" } }, "additionalProperties": false, "required": [ "applicationId", "bookingSequence", "checkDigit" ] }, "initiator": { "description": "The reason for the previous test cancellation", "type": "string", "enum": [ "Act of nature", "DSA" ], "maxLength": 15 }, "testSlotAttributes": { "description": "The additional attributes of the test slot such as Slot Id, Category, Start Time, etc.", "type": "object", "properties": { "slotId": { "description": "Unique identifier for the journal test slot", "type": "integer" }, "start": { "description": "Start time of the test slot", "type": "string", "minLength": 19, "maxLength": 19 }, "vehicleTypeCode": { "description": "A short alpha (and sometimes numeric) code describing the vehicle type in vehicle slot type", "type": "string", "minLength": 1, "maxLength": 2 }, "welshTest": { "description": "Whether the test is to be conducted using the welsh language", "type": "boolean" }, "specialNeedsCode": { "description": "Special needs code", "type": "string", "enum": [ "NONE", "YES", "EXTRA" ] }, "specialNeeds": { "description": "Whether the candidate has any special needs that require the D255 form to be completed", "type": "boolean" }, "specialNeedsArray": { "description": "The special needs", "type": "array", "items": { "type": "string" } }, "specialNeedsExtendedTest": { "description": "Whether the candidate requires an extended test due to special needs", "type": "boolean" }, "extendedTest": { "description": "Whether this is an extended test", "type": "boolean" }, "examinerVisiting": { "description": "Whether the examiner conducting the test slot is visiting a test centre that's not their home test centre", "type": "boolean" }, "entitlementCheck": { "description": "Indicates whether the examiner needs to check the candidates entitlement evidence(e.g. test application has not been checked with DVLA)", "type": "boolean" }, "fitMarker": { "description": "Indicates whether the candidate has previously had a fraud marker set against them", "type": "boolean" }, "fitCaseNumber": { "description": "The integrity case number associated to the candidate", "type": "string" }, "categoryEntitlementCheck": { "description": "Indicates whether the examiner needs to check the candidates entitlement based on new legislation around booking vocational categories", "type": "boolean" }, "previousCancellation": { "description": "The details of any previous test cancellations", "type": "array", "items": { "description": "The reason for the previous test cancellation", "type": "string", "enum": [ "Act of nature", "DSA" ], "maxLength": 15 } }, "slotType": { "description": "A description of the types of test intended to be conducted in this slot (e.g. Standard Test / Extended Special Needs Test)", "type": "string" } }, "additionalProperties": false, "required": [ "slotId", "start", "vehicleTypeCode", "welshTest", "specialNeeds", "extendedTest" ] }, "journalData": { "description": "Data brought through from the journal", "type": "object", "properties": { "examiner": { "description": "The examiner details", "type": "object", "properties": { "staffNumber": { "description": "The examiner's DSA staff number", "type": "string", "maxLength": 10 }, "individualId": { "description": "The individual ID of the examiner", "type": "number" } }, "additionalProperties": false, "required": [ "staffNumber" ] }, "testCentre": { "description": "Details of the test centre", "type": "object", "properties": { "centreId": { "description": "Identifer for the test centre", "type": "integer" }, "costCode": { "description": "Cost centre code for the test centre", "type": "string", "maxLength": 6 }, "centreName": { "description": "Name of the test centre", "type": "string", "maxLength": 50 } }, "additionalProperties": false, "required": [ "centreId", "costCode" ] }, "testSlotAttributes": { "description": "The additional attributes of the test slot such as Slot Id, Category, Start Time, etc.", "type": "object", "properties": { "slotId": { "description": "Unique identifier for the journal test slot", "type": "integer" }, "start": { "description": "Start time of the test slot", "type": "string", "minLength": 19, "maxLength": 19 }, "vehicleTypeCode": { "description": "A short alpha (and sometimes numeric) code describing the vehicle type in vehicle slot type", "type": "string", "minLength": 1, "maxLength": 2 }, "welshTest": { "description": "Whether the test is to be conducted using the welsh language", "type": "boolean" }, "specialNeedsCode": { "description": "Special needs code", "type": "string", "enum": [ "NONE", "YES", "EXTRA" ] }, "specialNeeds": { "description": "Whether the candidate has any special needs that require the D255 form to be completed", "type": "boolean" }, "specialNeedsArray": { "description": "The special needs", "type": "array", "items": { "type": "string" } }, "specialNeedsExtendedTest": { "description": "Whether the candidate requires an extended test due to special needs", "type": "boolean" }, "extendedTest": { "description": "Whether this is an extended test", "type": "boolean" }, "examinerVisiting": { "description": "Whether the examiner conducting the test slot is visiting a test centre that's not their home test centre", "type": "boolean" }, "entitlementCheck": { "description": "Indicates whether the examiner needs to check the candidates entitlement evidence(e.g. test application has not been checked with DVLA)", "type": "boolean" }, "fitMarker": { "description": "Indicates whether the candidate has previously had a fraud marker set against them", "type": "boolean" }, "fitCaseNumber": { "description": "The integrity case number associated to the candidate", "type": "string" }, "categoryEntitlementCheck": { "description": "Indicates whether the examiner needs to check the candidates entitlement based on new legislation around booking vocational categories", "type": "boolean" }, "previousCancellation": { "description": "The details of any previous test cancellations", "type": "array", "items": { "description": "The reason for the previous test cancellation", "type": "string", "enum": [ "Act of nature", "DSA" ], "maxLength": 15 } }, "slotType": { "description": "A description of the types of test intended to be conducted in this slot (e.g. Standard Test / Extended Special Needs Test)", "type": "string" } }, "additionalProperties": false, "required": [ "slotId", "start", "vehicleTypeCode", "welshTest", "specialNeeds", "extendedTest" ] }, "candidate": { "description": "Details of the candidate booked into the test slot", "type": "object", "properties": { "candidateId": { "description": "The id of the test candidate", "type": "integer" }, "candidateName": { "description": "Details of the individual's name", "type": "object", "properties": { "title": { "description": "The individual's title", "type": "string", "maxLength": 7 }, "firstName": { "description": "The individual's forename", "type": "string", "maxLength": 50 }, "secondName": { "description": "The individual's second name", "type": "string", "maxLength": 50 }, "thirdName": { "description": "The individual's third name", "type": "string", "maxLength": 50 }, "lastName": { "description": "The individual's surname", "type": "string", "maxLength": 50 } }, "additionalProperties": false }, "driverNumber": { "description": "The candidate's driver number, typically (though not always) 16 characters if UK, or 8 digits if NI", "type": "string", "maxLength": 24 }, "dateOfBirth": { "description": "The candidate's date of birth, formatted as an ISO 8601 date (YYYY-MM-DD)", "type": "string", "minLength": 10, "maxLength": 10 }, "gender": { "description": "The gender of an individual, limited to 'M' or 'F' as per TARS master data", "type": "string", "enum": [ "M", "F" ] }, "candidateAddress": { "description": "Details of the address", "type": "object", "properties": { "addressLine1": { "description": "First line of address", "type": "string", "maxLength": 255 }, "addressLine2": { "description": "Second line of address", "type": "string", "maxLength": 100 }, "addressLine3": { "description": "Third line of address", "type": "string", "maxLength": 100 }, "addressLine4": { "description": "Fourth line of address", "type": "string", "maxLength": 100 }, "addressLine5": { "description": "Fifth line of address", "type": "string", "maxLength": 255 }, "postcode": { "description": "The address postcode", "type": "string", "maxLength": 255 } }, "additionalProperties": false }, "primaryTelephone": { "description": "The candidate's primary telephone number, if any (and consent to leave voicemail has been given)", "type": "string", "maxLength": 20 }, "secondaryTelephone": { "description": "The candidate's secondary telephone number, if any (and consent to leave voicemail has been given)", "type": "string", "maxLength": 20 }, "mobileTelephone": { "description": "The candidate's mobile telephone number, if any (and consent to leave voicemail has been given)", "type": "string", "maxLength": 30 }, "emailAddress": { "description": "The candidate's email address, if any", "type": "string", "maxLength": 100 }, "prn": { "description": "The candidate's ADI PRN (potential register number), if an ADI test", "type": "integer" }, "previousADITests": { "description": "The number of previous test attempts, if an ADI test", "type": "integer" }, "ethnicityCode": { "description": "A character between A and G representing different categories of ethnicity", "type": "string", "minLength": 1, "maxLength": 1 } }, "additionalProperties": false }, "applicationReference": { "description": "The full application identifier, including applicationId, bookingSequence and checkDigit", "type": "object", "properties": { "applicationId": { "description": "Unique identifier for each test application", "type": "integer" }, "bookingSequence": { "description": "Booking sequence number of the test application", "type": "integer" }, "checkDigit": { "description": "Reference checksum for the test application", "type": "integer" } }, "additionalProperties": false, "required": [ "applicationId", "bookingSequence", "checkDigit" ] } }, "additionalProperties": false, "required": [ "examiner", "testCentre", "testSlotAttributes", "candidate", "applicationReference" ] }, "signature": { "description": "Base 64 encoded binary data representing a PNG image of the candidates signature", "type": "string" }, "communicationMethod": { "description": "The method of communication by which the candidate agrees to receive their results", "type": "string", "enum": [ "Email", "Post", "Support Centre", "Not provided" ] }, "conductedLanguage": { "description": "The language in which a candidate agrees to perform a test", "type": "string", "enum": [ "English", "Cymraeg", "Not provided" ] }, "communicationPreferences": { "type": "object", "additionalProperties": false, "properties": { "updatedEmail": { "description": "The email address that the candidate agrees their results can be sent to", "type": "string", "maxLength": 100 }, "communicationMethod": { "description": "The method of communication by which the candidate agrees to receive their results", "type": "string", "enum": [ "Email", "Post", "Support Centre", "Not provided" ] }, "conductedLanguage": { "description": "The language in which a candidate agrees to perform a test", "type": "string", "enum": [ "English", "Cymraeg", "Not provided" ] } }, "required": [ "conductedLanguage" ] }, "preTestDeclarations": { "type": "object", "additionalProperties": false, "properties": { "insuranceDeclarationAccepted": { "description": "Whether or not the candidate has declared that their test vehicle has a valid insurance policy", "type": "boolean" }, "residencyDeclarationAccepted": { "description": "Whether or not the candidate has declared that they have lived in the UK for a period acceptable for taking the test", "type": "boolean" }, "preTestSignature": { "description": "Base 64 encoded binary data representing a PNG image of the candidates signature", "type": "string" }, "DL196CBTCertNumber": { "description": "The number of the DL196 CBT certificate presented by the candidate", "type": "string" } }, "required": [ "insuranceDeclarationAccepted", "residencyDeclarationAccepted", "preTestSignature" ] }, "accompaniment": { "description": "Indicators for anybody else overseeing the test", "type": "object", "properties": { "ADI": { "description": "Indicates whether the ADI was present during the test", "type": "boolean" }, "supervisor": { "description": "Indicates whether a DVSA supervisor was present during the test", "type": "boolean" }, "interpreter": { "description": "Indicates whether an interpreter was present during the test", "type": "boolean" }, "other": { "description": "Indicates whether another individual was present during the test", "type": "boolean" } }, "additionalProperties": false }, "gearboxCategory": { "description": "The type of gearbox", "type": "string", "enum": [ "Manual", "Automatic" ] }, "drivingFaultCount": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "faultComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "drivingFaults": { "description": "The driving faults accumulated during the test", "type": "object", "properties": { "precautions": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "precautionsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffSafety": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "moveOffSafetyComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffControl": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "moveOffControlComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } }, "additionalProperties": false }, "seriousFaultIndicator": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "seriousFaults": { "description": "The serious faults accumulated during the test", "type": "object", "properties": { "precautions": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "precautionsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffSafety": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "moveOffSafetyComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffControl": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "moveOffControlComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } }, "additionalProperties": false }, "dangerousFaultIndicator": { "description": "Indicator for a dangerous fault being recorded against a test element", "type": "boolean" }, "dangerousFaults": { "description": "The dangerous faults accumulated during the test", "type": "object", "properties": { "precautions": { "description": "Indicator for a dangerous fault being recorded against a test element", "type": "boolean" }, "precautionsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffSafety": { "description": "Indicator for a dangerous fault being recorded against a test element", "type": "boolean" }, "moveOffSafetyComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "moveOffControl": { "description": "Indicator for a dangerous fault being recorded against a test element", "type": "boolean" }, "moveOffControlComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } }, "additionalProperties": false }, "postTestDeclarations": { "type": "object", "properties": { "healthDeclarationAccepted": { "description": "Whether or not the candidate has declared that their health status hasn't changed since their last application", "type": "boolean" }, "passCertificateNumberReceived": { "description": "Indicates whether the candidate acknowledges receipt of the PCN", "type": "boolean" }, "postTestSignature": { "description": "Base 64 encoded binary data representing a PNG image of the candidates signature", "type": "string" } }, "additionalProperties": false }, "weatherConditions": { "description": "Predefined values for the type of weather encountered during the test", "type": "string", "enum": [ "Bright / dry roads", "Bright / wet roads", "Raining through test", "Showers", "Foggy / misty", "Dull / wet roads", "Dull / dry roads", "Snowing", "Icy", "Windy" ] }, "identification": { "description": "Indicates which form of ID was provided by the candidate", "type": "string", "enum": [ "Licence", "Passport" ] }, "testSummary": { "description": "Recording of other characteristics of the test", "type": "object", "properties": { "routeNumber": { "description": "Number of the route that was taken during the test", "type": "integer", "const": 88 }, "trueLikenessToPhoto": { "description": "Physical appearance resembles a true likeness to provided ID", "type": "boolean" }, "candidateDescription": { "description": "Physical description of the candidate", "type": "string", "maxLength": 1000 }, "debriefWitnessed": { "description": "Indicates whether anybody else (e.g. ADI) was present for the debrief", "type": "boolean" }, "identification": { "description": "Indicates which form of ID was provided by the candidate", "type": "string", "enum": [ "Licence", "Passport" ] }, "weatherConditions": { "description": "Description of the type of weather encountered during the test", "type": "array", "items": { "description": "Predefined values for the type of weather encountered during the test", "type": "string", "enum": [ "Bright / dry roads", "Bright / wet roads", "Raining through test", "Showers", "Foggy / misty", "Dull / wet roads", "Dull / dry roads", "Snowing", "Icy", "Windy" ] } }, "D255": { "description": "Indicates whether a D255 form needs to be completed", "type": "boolean" }, "additionalInformation": { "description": "Any comments that the DE wants to record about the test", "type": "string" }, "circuit": { "description": "Circuit completed (left or right)", "type": "string", "enum": [ "Left", "Right" ] } }, "additionalProperties": false }, "categoryCode": { "description": "Category code for the test report", "type": "string", "enum": [ "A", "A1", "A2", "ADI2", "ADI3", "AM", "B", "B1", "B+E", "C", "C1", "C1+E", "C1+EM", "C1M", "CCPC", "C+E", "C+EM", "CM", "D", "D1", "D1+E", "D1+EM", "D1M", "DCPC", "D+E", "D+EM", "DM", "EUA1M1", "EUA1M2", "EUA2M1", "EUA2M2", "EUAM1", "EUAM2", "EUAMM1", "EUAMM2", "F", "G", "H", "K", "SC" ] }, "activityCode": { "description": "Code representing the result of the test", "type": "string", "enum": [ "1", "2", "3", "4", "5", "6", "11", "20", "21", "22", "23", "24", "25", "26", "27", "28", "32", "33", "34", "35", "36", "37", "38", "40", "41", "51", "52", "55", "58", "59", "60", "61", "62", "63", "64", "66", "67", "68", "69", "70", "71", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "88", "89" ] }, "gender": { "description": "The gender of an individual, limited to 'M' or 'F' as per TARS master data", "type": "string", "enum": [ "M", "F" ] }, "rekeyReason": { "description": "Recording of the rekey reason", "type": "object", "properties": { "transfer": { "description": "Recording of if a rekey was due to a transfer", "type": "object", "properties": { "selected": { "description": "If this option was selected", "type": "boolean" } }, "additionalProperties": false }, "ipadIssue": { "description": "Recording of if a rekey was due to a iPad issue", "type": "object", "properties": { "selected": { "description": "If this option was selected", "type": "boolean" }, "technicalFault": { "description": "If the iPad was not used due to a technical fault", "type": "boolean" }, "lost": { "description": "If the iPad was not used as it has been lost", "type": "boolean" }, "stolen": { "description": "If the iPad was not used as it has been stolen", "type": "boolean" }, "broken": { "description": "If the iPad was not used as it is broken", "type": "boolean" } }, "additionalProperties": false }, "other": { "description": "Recording of if a rekey was due to a different reason", "type": "object", "properties": { "selected": { "description": "If this option was selected", "type": "boolean" }, "reason": { "description": "The reason this option was selected", "type": "string" } }, "additionalProperties": false } }, "additionalProperties": false }, "transfer": { "description": "Recording of if a rekey was due to a transfer", "type": "object", "properties": { "selected": { "description": "If this option was selected", "type": "boolean" } }, "additionalProperties": false }, "ipadIssue": { "description": "Recording of if a rekey was due to a iPad issue", "type": "object", "properties": { "selected": { "description": "If this option was selected", "type": "boolean" }, "technicalFault": { "description": "If the iPad was not used due to a technical fault", "type": "boolean" }, "lost": { "description": "If the iPad was not used as it has been lost", "type": "boolean" }, "stolen": { "description": "If the iPad was not used as it has been stolen", "type": "boolean" }, "broken": { "description": "If the iPad was not used as it is broken", "type": "boolean" } }, "additionalProperties": false }, "other": { "description": "Recording of if a rekey was due to a different reason", "type": "object", "properties": { "selected": { "description": "If this option was selected", "type": "boolean" }, "reason": { "description": "The reason this option was selected", "type": "string" } }, "additionalProperties": false }, "vehicleDetails": { "description": "Details about the vehicle to be used for the test", "type": "object", "properties": { "registrationNumber": { "description": "The vehicle registration number", "type": "string", "maxLength": 7 }, "motStatus": { "description": "The mot status of the vehicle", "type": "string" }, "motEvidenceProvided": { "description": "Marker stating if alternative MOT evidence was provided", "type": "boolean" }, "motEvidence": { "description": "Alternative MOT evidence", "type": "string" }, "make": { "description": "The make of the vehicle", "type": "string" }, "model": { "description": "The model of the vehicle", "type": "string" }, "testExpiryDate": { "description": "The test expiry date of the vehicle", "type": "string" }, "previouslySearchedRegNumbers": { "description": "Previously searched for registration numbers", "type": "array", "items": { "type": "string" } }, "gearboxCategory": { "description": "The type of gearbox", "type": "string", "enum": [ "Manual", "Automatic" ] }, "schoolBike": { "description": "Indicates whether the bike belongs to a driving school", "type": "boolean" } }, "additionalProperties": false }, "passCompletion": { "description": "Finalisation of a successful test outcome", "type": "object", "properties": { "passCertificateNumber": { "description": "The PCN issued to the candidate", "type": "string", "maxLength": 7, "minLength": 7 } }, "additionalProperties": false, "required": [ "passCertificateNumber" ] }, "DL196CBTCertNumber": { "description": "The number of the DL196 CBT certificate presented by the candidate", "type": "string" }, "avoidance": { "description": "The outcome of avoidance tests", "type": "object", "additionalProperties": false, "properties": { "firstAttempt": { "description": "The speed of the first attempt", "type": "integer" }, "secondAttempt": { "description": "The speed of the second attempt", "type": "integer" }, "outcome": { "description": "The possible outcomes of speed requirment fault competency", "enum": [ "S" ], "type": "string" }, "comments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } } }, "emergencyStop": { "des