{ "LONG_ROUTE_START" : ["Start of long route", "Route segments of >2km are Taxidraw artefacts"], "LONG_ROUTE_END": ["End of long route", "Route segments of >2km are Taxidraw artefacts"], "EDGE_MISSING_DIRECTION": ["Edge missing direction", "Each edge must have a direction (forward, backward, bi-directional)"], "NO_RUNWAY_ROUTE": ["No way from parking to each runway", ""], "NO_PARKING_ROUTE": ["No way from runway to each parking", ""], "NO_PARKINGS": ["No parkings", ""], "NO_RUNWAY_NODES": ["No Runwaynodes", "Fine for parking only"], "NOT_LEGIT_END": ["Node not a legimate end", "Taxiroutes must end either at a parking or on a runway"], "UNKNOWN_RADIUS" :["Unknown radius", "Radii must be one from the list"], "OVERLAPPING_PARKINGS" :["Overlapping parkings", "Parkings must not overlap"], "NAME_EMPTY" :["Name empty", "Name of parking must not be empty"], "TYPE_EMPTY" :["Parking type empty", "The parking type must not be empty"], "PARKING_TYPE_INVALID" :["Parking type not valid", "The type of parking must be one of ()"], "DUAL_PUSHBACK": ["Dual runway/ pushback node", "A runway node can not be a hold node at the same time"], "RUNWAY_NODE_NOT_ON_RUNWAY" : ["Runwaynode not on runway", ""], "NON_RUNWAYNODE_ON_RUNWAY": ["Non Runwaynode on runway", ""], "PARKINGS_VALID": ["Parkings valid", "All Ok"], "NO_OVERLAPPING_PARKINGS": ["No parkings overlapping", ""], "NO_INVALID_ENDS": ["No invalid ends", ""], "ROUTES_FROM_PARKINGS_OK": ["Routes from parkings OK", ""], "ROUTES_FROM_RUNWAYS_OK": ["Routes from runways OK", ""], "PUSHBACK_ROUTES_OK": ["Pushback routes OK", ""], "UNCONNECTED_PUSHBACK": ["Unconnected Pushbacknode", ""], "NO_WAY_TO_HOLDPOINT":["No way to pushback holdpoint", "There is no route to the pushback hold point"], "MULTIPLE_PUSHBACK": ["Multiple connected pushback points", "There are more than one possible pushback holdpoint routes."], "PUSHBACK_NOT_CONNECTED": ["Pushback Holding Point not Connected to Pushback Route", ""], "TO_MANY_PUSHBACK_TAXI_ROUTES": ["Too many Taxi routes from Pushback Holding Point", ""], "PUSHBACK_EXIT_NOT_BIDRECTIONAL": ["Pushback Holding Point Exit route is not bidirectional", ""], "NO_EDGES": ["No Edges", "No checks are run if there are no edges present"], "NO_RUNWAYS": ["No Runways", "No checks are run if there are no runways present. APT layer visible?"], "DOUBLE_EDGE": ["No Double Edges", "This edge is doubled"] }