In principle I agree with you 100% but this isn't something I have control over unfortunately. The data is coming from a third party source.
Some context that may or not be useful: I work on a program that aims to identify the most "at risk" families in the country so that social services can intervene early. Basically we take a load of data feeds from a load of sources (police, education, social services, NHS... about 40 different agencies in total), and try and identify the individuals across those sources - so lots of fuzzy matching around names, aliases, dates of birth, known addresses, and known ID codes (NI number, UPN, NHS number etc.) and so on.
The particular problem I'm having here is on trying to match addresses against the post office database to get UPRNs. The post office's DB is in a nice consistent state but the data I'm trying to match against it is... well... I get what I'm given and have to make the best of it