UNPKG

@dvsa/mes-test-schema

Version:

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

1,614 lines 194 kB
{ "title": "Test Result Cat AM2 Schema", "type": "object", "definitions": { "gearboxCategory": { "description": "The type of gearbox", "type": "string", "enum": [ "Manual", "Automatic" ] }, "eyesightTest": { "type": "object", "properties": { "complete": { "type": "boolean" }, "seriousFault": { "description": "Whether the candidate has failed the eyesight test", "type": "boolean" }, "faultComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 } }, "additionalProperties": false }, "independentDriving": { "description": "Method chosen to conduct the independent driving section of the test", "type": "string", "enum": [ "Sat nav", "Diagram", "Traffic signs", "N/A" ] }, "modeOfTransport": { "description": "Method of transportation the driving examiner conducted the test on", "type": "string", "enum": [ "Bike to bike", "Car to bike", "N/A" ] }, "identification": { "description": "Indicates which form of ID was provided by the candidate", "type": "string", "enum": [ "Licence", "Passport" ] }, "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" ] }, "signature": { "description": "Base 64 encoded binary data representing a PNG image of the candidates signature", "type": "string" }, "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" ] }, "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" ] }, "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", "mod1CertificateNumber" ] }, "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 }, "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": { "routeNumber": { "description": "Number of the route that was taken during the test", "type": "integer", "const": 88 }, "independentDriving": { "description": "Method chosen to conduct the independent driving section of the test", "type": "string", "enum": [ "Sat nav", "Diagram", "Traffic signs", "N/A" ] }, "modeOfTransport": { "description": "Method of transportation the driving examiner conducted the test on", "type": "string", "enum": [ "Bike to bike", "Car to bike", "N/A" ] }, "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" } }, "additionalProperties": false }, "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 }, "passCompletion": { "description": "Finalisation of a successful test outcome", "type": "object", "properties": { "provisionalLicenceProvided": { "description": "Indicates whether the candidate submitted their provisional driving licence", "type": "boolean" }, "passCertificateNumber": { "description": "The PCN issued to the candidate", "type": "string", "maxLength": 8, "minLength": 8 } }, "additionalProperties": false, "required": [ "provisionalLicenceProvided", "passCertificateNumber" ] }, "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" ] }, "faultComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "drivingFaultCount": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "ETA": { "description": "Indicates whether the examiner had to take verbal action during the test", "type": "object", "properties": { "verbal": { "description": "Indicates that the examiner had to take verbal action", "type": "boolean" } }, "additionalProperties": false }, "eco": { "description": "Assessment of the eco friendly manner of driving", "type": "object", "properties": { "completed": { "description": "Indicates that the eco friendly manner of driving has been assessed", "type": "boolean" }, "adviceGivenControl": { "description": "Indicates that advice was given on the Control aspect of eco driving", "type": "boolean" }, "adviceGivenPlanning": { "description": "Indicates that advice was given on the Planning aspect of eco driving", "type": "boolean" }, "ecoRelatedFault": { "description": "Fault that relates to the Eco selection", "type": "string" }, "ecoCaptureReason": { "description": "Reason for Eco capture", "type": "string" }, "fuelEfficientDriving": { "description": "Whether the candidate exemplified efficient driving", "type": "boolean" } }, "additionalProperties": false }, "drivingFaults": { "description": "The driving faults accumulated during the test", "type": "object", "properties": { "controlsThrottle": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "controlsThrottleComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsClutch": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "controlsClutchComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsGears": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "controlsGearsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsFrontBrake": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "controlsFrontBrakeComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsRearBrake": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "controlsRearBrakeComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsSteering": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "controlsSteeringComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsBalanceSlowControl": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "controlsBalanceSlowControlComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "ancillaryControls": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "ancillaryControlsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "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 }, "useOfMirrorsSignalling": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "useOfMirrorsSignallingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "useOfMirrorsChangeDirection": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "useOfMirrorsChangeDirectionComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "useOfMirrorsChangeSpeed": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "useOfMirrorsChangeSpeedComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "signalsNecessary": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "signalsNecessaryComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "signalsCorrectly": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "signalsCorrectlyComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "signalsTimed": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "signalsTimedComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "junctionsApproachSpeed": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "junctionsApproachSpeedComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "junctionsObservation": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "junctionsObservationComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "junctionsTurningRight": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "junctionsTurningRightComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "junctionsTurningLeft": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "junctionsTurningLeftComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "junctionsCuttingCorners": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "junctionsCuttingCornersComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "judgementOvertaking": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "judgementOvertakingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "judgementMeeting": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "judgementMeetingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "judgementCrossing": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "judgementCrossingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "positioningNormalDriving": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "positioningNormalDrivingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "positioningLaneDiscipline": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "positioningLaneDisciplineComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "clearanceOrObstructions": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "clearanceOrObstructionsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "followingDistance": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "followingDistanceComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "useOfSpeed": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "useOfSpeedComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "progressAppropriateSpeed": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "progressAppropriateSpeedComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "progressUndueHesitation": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "progressUndueHesitationComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "responseToSignsTrafficSigns": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "responseToSignsTrafficSignsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "responseToSignsRoadMarkings": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "responseToSignsRoadMarkingsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "responseToSignsTrafficLights": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "responseToSignsTrafficLightsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "responseToSignsTrafficControllers": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "responseToSignsTrafficControllersComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "responseToSignsOtherRoadUsers": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "responseToSignsOtherRoadUsersComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "pedestrianCrossings": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "pedestrianCrossingsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "positionNormalStops": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "positionNormalStopsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "awarenessPlanning": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "awarenessPlanningComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "bends": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "bendsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "rearObservationSignalling": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "rearObservationSignallingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "rearObservationChangeDirection": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "rearObservationChangeDirectionComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "rearObservationChangeSpeed": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "rearObservationChangeSpeedComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "positionNormalRiding": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "positionNormalRidingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "judgementOvertakingFiltering": { "description": "The count of the number of driving faults recorded against a test element", "type": "integer" }, "judgementOvertakingFilteringComments": { "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": { "controlsThrottle": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "controlsThrottleComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsClutch": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "controlsClutchComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsGears": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "controlsGearsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsFrontBrake": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "controlsFrontBrakeComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsRearBrake": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "controlsRearBrakeComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsSteering": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "controlsSteeringComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "controlsBalanceSlowControl": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "controlsBalanceSlowControlComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "ancillaryControls": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "ancillaryControlsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "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 }, "useOfMirrorsSignalling": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "useOfMirrorsSignallingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "useOfMirrorsChangeDirection": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "useOfMirrorsChangeDirectionComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "useOfMirrorsChangeSpeed": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "useOfMirrorsChangeSpeedComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "signalsNecessary": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "signalsNecessaryComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "signalsCorrectly": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "signalsCorrectlyComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "signalsTimed": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "signalsTimedComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "junctionsApproachSpeed": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "junctionsApproachSpeedComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "junctionsObservation": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "junctionsObservationComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "junctionsTurningRight": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "junctionsTurningRightComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "junctionsTurningLeft": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "junctionsTurningLeftComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "junctionsCuttingCorners": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "junctionsCuttingCornersComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "judgementOvertaking": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "judgementOvertakingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "judgementMeeting": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "judgementMeetingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "judgementCrossing": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "judgementCrossingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "positioningNormalDriving": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "positioningNormalDrivingComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "positioningLaneDiscipline": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "positioningLaneDisciplineComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "clearanceOrObstructions": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "clearanceOrObstructionsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "followingDistance": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "followingDistanceComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "useOfSpeed": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "useOfSpeedComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "progressAppropriateSpeed": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "progressAppropriateSpeedComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "progressUndueHesitation": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "progressUndueHesitationComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "responseToSignsTrafficSigns": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "responseToSignsTrafficSignsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "responseToSignsRoadMarkings": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "responseToSignsRoadMarkingsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "responseToSignsTrafficLights": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "responseToSignsTrafficLightsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "responseToSignsTrafficControllers": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "responseToSignsTrafficControllersComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "responseToSignsOtherRoadUsers": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "responseToSignsOtherRoadUsersComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "pedestrianCrossings": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "pedestrianCrossingsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "positionNormalStops": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "positionNormalStopsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "awarenessPlanning": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "awarenessPlanningComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "bends": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "bendsComments": { "description": "Comments recorded against a fault", "type": "string", "maxLength": 1000 }, "rearObservationSignalling": { "description": "Indicator for a serious fault being recorded against a test element", "type": "boolean" }, "rearObservationSignallingComments": { "description": "Comments recorded against a fault", "type": "string