UNPKG

@dvsa/mes-test-schema

Version:

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

2,015 lines 85.7 kB
{ "title": "Test Result Cat CPC Schema", "type": "object", "definitions": { "testData": { "additionalProperties": false, "description": "Data associated with the test", "properties": { "combination": { "description": "Short codes for the CPC questions", "type": "string", "enum": [ "LGV1", "LGV2", "LGV3", "LGV4", "LGV5", "LGV6", "LGV7", "LGV8", "PCV1", "PCV2", "PCV3", "PCV4", "PCV5", "PCV6", "PCV7", "PCV8" ] }, "question1": { "type": "object", "additionalProperties": false, "properties": { "questionCode": { "description": "Short code for Question", "type": "string" }, "title": { "description": "Question description", "type": "string" }, "subtitle": { "description": "Question sub-description", "type": "string" }, "additionalItems": { "description": "Additional questions that might be asked", "type": "array", "items": { "type": "string" } }, "answer1": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer2": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer3": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer4": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "score": { "description": "Score in percent", "type": "number" } } }, "question2": { "type": "object", "additionalProperties": false, "properties": { "questionCode": { "description": "Short code for Question", "type": "string" }, "title": { "description": "Question description", "type": "string" }, "subtitle": { "description": "Question sub-description", "type": "string" }, "additionalItems": { "description": "Additional questions that might be asked", "type": "array", "items": { "type": "string" } }, "answer1": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer2": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer3": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer4": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "score": { "description": "Score in percent", "type": "number" } } }, "question3": { "type": "object", "additionalProperties": false, "properties": { "questionCode": { "description": "Short code for Question", "type": "string" }, "title": { "description": "Question description", "type": "string" }, "subtitle": { "description": "Question sub-description", "type": "string" }, "additionalItems": { "description": "Additional questions that might be asked", "type": "array", "items": { "type": "string" } }, "answer1": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer2": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer3": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer4": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "score": { "description": "Score in percent", "type": "number" } } }, "question4": { "type": "object", "additionalProperties": false, "properties": { "questionCode": { "description": "Short code for Question", "type": "string" }, "title": { "description": "Question description", "type": "string" }, "subtitle": { "description": "Question sub-description", "type": "string" }, "additionalItems": { "description": "Additional questions that might be asked", "type": "array", "items": { "type": "string" } }, "answer1": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer2": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer3": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer4": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "score": { "description": "Score in percent", "type": "number" } } }, "question5": { "type": "object", "additionalProperties": false, "properties": { "questionCode": { "description": "Short code for Question", "type": "string" }, "title": { "description": "Question description", "type": "string" }, "subtitle": { "description": "Question sub-description", "type": "string" }, "additionalItems": { "description": "Additional questions that might be asked", "type": "array", "items": { "type": "string" } }, "answer1": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer2": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer3": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer4": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer5": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer6": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer7": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer8": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer9": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer10": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "score": { "description": "Score in percent", "type": "number" } } }, "totalPercent": { "description": "Overall score for questions", "type": "number" } }, "required": [ "question1", "question2", "question3", "question4", "question5", "totalPercent" ] }, "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" ] }, "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" }, "candidateDeclarationSigned": { "description": "Whether or not the candidate signature had been recorded for delegated tests", "type": "boolean" } }, "required": [ "insuranceDeclarationAccepted", "residencyDeclarationAccepted", "preTestSignature" ] }, "accompaniment": { "description": "Indicators for anybody else overseeing the test", "type": "object", "properties": { "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" } }, "additionalProperties": false }, "answer": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "question": { "type": "object", "additionalProperties": false, "properties": { "questionCode": { "description": "Short code for Question", "type": "string" }, "title": { "description": "Question description", "type": "string" }, "subtitle": { "description": "Question sub-description", "type": "string" }, "additionalItems": { "description": "Additional questions that might be asked", "type": "array", "items": { "type": "string" } }, "answer1": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer2": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer3": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer4": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "score": { "description": "Score in percent", "type": "number" } } }, "question5": { "type": "object", "additionalProperties": false, "properties": { "questionCode": { "description": "Short code for Question", "type": "string" }, "title": { "description": "Question description", "type": "string" }, "subtitle": { "description": "Question sub-description", "type": "string" }, "additionalItems": { "description": "Additional questions that might be asked", "type": "array", "items": { "type": "string" } }, "answer1": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer2": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer3": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer4": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer5": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer6": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer7": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer8": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer9": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "answer10": { "description": "Answers to the question", "additionalProperties": false, "properties": { "selected": { "type": "boolean" }, "label": { "type": "string" } }, "required": [ "label", "selected" ] }, "score": { "description": "Score in percent", "type": "number" } } }, "gearboxCategory": { "description": "The type of gearbox", "type": "string", "enum": [ "Manual", "Automatic" ] }, "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 }, "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": { "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" ] }, "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" }, "assessmentReport": { "description": "Assessment report for the test", "type": "string" } }, "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 }, "configuration": { "description": "The vehicle configuration", "type": "string", "enum": [ "Rigid", "Articulated", "Drawbar" ] }, "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