UNPKG

@dvsa/mes-test-schema

Version:

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

1,917 lines 79.1 kB
{ "title": "Test Result Cat ADI3 Schema", "type": "object", "definitions": { "testData": { "additionalProperties": false, "description": "Data associated with the test", "properties": { "lessonAndTheme": { "type": "object", "additionalProperties": false, "properties": { "studentLevel": { "description": "Question description", "type": "string", "enum": [ "beginner", "partlyTrained", "trained", "flhNew", "flhExperienced" ] }, "lessonThemes": { "type": "array", "description": "List of lesson themes", "items": { "description": "List of themes for the lesson", "type": "string", "enum": [ "junctions", "townCityDriving", "interactionWithOtherRoadUsers", "dualCarriagewayFasterRoads", "defensiveDriving", "effectiveUseOfMirrors", "independentDriving", "ruralRoads", "motorways", "ecoSafeDriving", "recapAManoeuvre", "commentary", "recapEmergencyStop", "other" ] } }, "other": { "description": "Other description", "type": "string" } } }, "lessonPlanning": { "type": "object", "additionalProperties": false, "properties": { "q1": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q2": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q3": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q4": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "score": { "description": "Overall score for questions", "type": "number" } } }, "riskManagement": { "type": "object", "additionalProperties": false, "properties": { "q1": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q2": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q3": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q4": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q5": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "score": { "description": "Overall score for questions", "type": "number" } } }, "teachingLearningStrategies": { "type": "object", "additionalProperties": false, "properties": { "q1": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q2": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q3": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q4": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q5": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q6": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q7": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q8": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "score": { "description": "Overall score for questions", "type": "number" } } }, "review": { "type": "object", "additionalProperties": false, "properties": { "immediateDanger": { "description": "Whether at any point there was an incident/behavior that put someone in potential danger", "type": "boolean" }, "seekFurtherDevelopment": { "description": "Whether advice was given to seek further development to the candidate", "type": "boolean" }, "reasonForNoAdviceGiven": { "description": "Reason for no advice given to candidate", "type": "string" }, "feedback": { "description": "Feedback offered to candidate", "type": "string" }, "grade": { "description": "ADI3 have different levels of passes represented in grade form", "type": "string" } } }, "startTime": { "description": "Start time of test", "type": "string" }, "endTime": { "description": "End time of test", "type": "string" }, "totalScore": { "description": "Overall score for questions", "type": "number" } } }, "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": [ "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": { "bookingReference": { "description": "Unique identifier for bookings from DSP", "type": "string" }, "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 }, "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": [ "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": [ "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": [ "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": { "bookingReference": { "description": "Unique identifier for bookings from DSP", "type": "string" }, "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 } }, "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" }, "validCertificate": { "description": "Whether there candidate held/presented a valid certificate", "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" }, "trainer": { "description": "Indicates whether a trainer was present during the test", "type": "boolean" }, "other": { "description": "Indicates whether another type of person was present during the test", "type": "boolean" } }, "additionalProperties": false }, "question": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "studentLevel": { "description": "Question description", "type": "string", "enum": [ "beginner", "partlyTrained", "trained", "flhNew", "flhExperienced" ] }, "lessonTheme": { "description": "List of themes for the lesson", "type": "string", "enum": [ "junctions", "townCityDriving", "interactionWithOtherRoadUsers", "dualCarriagewayFasterRoads", "defensiveDriving", "effectiveUseOfMirrors", "independentDriving", "ruralRoads", "motorways", "ecoSafeDriving", "recapAManoeuvre", "commentary", "recapEmergencyStop", "other" ] }, "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 }, "testSummary": { "description": "Recording of other characteristics of the test", "type": "object", "properties": { "debriefWitnessed": { "description": "Indicates whether anybody else (e.g. ADI) was present for the debrief", "type": "boolean" }, "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" } }, "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", "additionalProperties": false, "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" ] }, "dualControls": { "description": "Indicates whether or not the vehicle has dual controls fitted", "type": "boolean" } } }, "trainerDetails": { "additionalProperties": false, "type": "object", "properties": { "orditTrainedCandidate": { "description": "Did the candidate receive training from an ORDIT trainer", "type": "boolean" }, "pdiLogbook": { "description": "Does the PDI have a logbook", "type": "boolean" }, "traineeLicence": { "description": "Does the trainee have a licence", "type": "boolean" }, "trainerRegistrationNumber": { "description": "Trainer registration number (PRN)", "type": "number", "maxLength": 7 } } }, "passCompletion": { "description": "Finalisation of a successful test outcome", "type": "object", "properties": { "passCertificateNumber": { "description": "The PCN issued to the candidate", "type": "string", "maxLength": 8, "minLength": 8 } }, "additionalProperties": false }, "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 }, "lessonAndTheme": { "type": "object", "additionalProperties": false, "properties": { "studentLevel": { "description": "Question description", "type": "string", "enum": [ "beginner", "partlyTrained", "trained", "flhNew", "flhExperienced" ] }, "lessonThemes": { "type": "array", "description": "List of lesson themes", "items": { "description": "List of themes for the lesson", "type": "string", "enum": [ "junctions", "townCityDriving", "interactionWithOtherRoadUsers", "dualCarriagewayFasterRoads", "defensiveDriving", "effectiveUseOfMirrors", "independentDriving", "ruralRoads", "motorways", "ecoSafeDriving", "recapAManoeuvre", "commentary", "recapEmergencyStop", "other" ] } }, "other": { "description": "Other description", "type": "string" } } }, "lessonPlanning": { "type": "object", "additionalProperties": false, "properties": { "q1": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q2": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q3": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q4": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "score": { "description": "Overall score for questions", "type": "number" } } }, "riskManagement": { "type": "object", "additionalProperties": false, "properties": { "q1": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q2": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q3": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q4": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q5": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "score": { "description": "Overall score for questions", "type": "number" } } }, "teachingLearningStrategies": { "type": "object", "additionalProperties": false, "properties": { "q1": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q2": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q3": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q4": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q5": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q6": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q7": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "q8": { "type": "object", "additionalProperties": false, "properties": { "title": { "description": "Question title", "type": "string" }, "score": { "description": "Score given for the question", "type": "number" } } }, "score": { "description": "Overall score for questions", "type": "number" } } }, "review": { "type": "object", "additionalProperties": false, "properties": { "immediateDanger": { "description": "Whether at any point there was an incident/behavior that put someone in potential danger", "type": "boolean" }, "seekFurtherDevelopment": { "description": "Whether advice was given to seek further development to the candidate", "type": "boolean" }, "reasonForNoAdviceGiven": { "description": "Reason for no advice given to candidate", "type": "string" }, "feedback": { "description": "Feedback offered to candidate", "type": "string" }, "grade": { "description": "ADI3 have different levels of passes represented in grade form", "type": "string" } } } }, "properties": { "version": { "description": "Version number", "type": "string" }, "appVersion": { "description": "App version number", "type": "string" }, "category": { "description": "Category code for the test report", "type": "string", "enum": [ "A", "A1", "A2", "