Is there a unique identifier for trains; if a headcode isn't always unique, should there be some other way of uniquely identifying a train? Moreso perhaps now with computers than in the past given that an entry in a database should always have one unique reference - although it is possible for a database to have a composite unique reference (in the case of trains, this could likely be the headcode/time/origin composite), when doing database programming at college a few years back we were told that this should never be done.
Taking the Warrington Bank Quay - Liverpool Lime Street for instance, should one of them be running late, you may end up with two of them running much closer together than they should, so although a headcode is a good quick way of identifying it, is there some other deeper way? (Having said that, could it also be the case that these three duplicate headcodes are actually the same train, running - effectively - from Warrington Bank Quay to Liverpool Lime Street via Liverpool Lime Street, Warrington Bank Quay, Liverpool Lime Street, and Warrington Bank Quay?)