Why does it not make sense? If I was involved in a robbery at age 18, as a dumb kid, should I still be called "robber xyz" for the rest of my life? Especially if I turned my life around?
I agree that we should be forgiving, give people second chances etc, but that doesn't change the meaning of words. "Defamation" is when you damage someone's reputation by saying things about them that aren't true. If you were convicted of a crime long ago and someone draws attention to that fact, they're not defaming you. The truth isn't defamation, by definition.
Words can have multiple similar definitions with small variations. If I look up "defamation" I get:
> Defamation is a legal term that refers to any statement made by a person, whether verbal or printed, that causes harm to another person’s reputation or character. --- https://legaldictionary.net/defamation/
> Defamation is a communication that injures a third party's reputation and causes a legally redressable injury. The precise legal definition of defamation varies from country to country. It is not necessarily restricted to making assertions that are falsifiable, and can extend to concepts that are more abstract than reputation – like dignity and honour. --- https://en.wikipedia.org/wiki/Defamation
Truth (in English law) is merely a defence to an accusation of libel or slander, and it is not an absolute defence. If you say or print true things about a person, that lowers their reputation in the eyes of an ordinary person, and you are motivated by malice, then you have still committed the crime of defamation.
English libel law is an evolution of the former English law known as scandalum magnatum -- "scandalizing the mighty". Basically, if you say bad things about powerful people, those powerful people will crush you with the law.
As an example, Robert Maxwell embezzled millions from his company's pension fund, and also used that money to sue anyone who slighted him - including anyone who said he was embezzling from his company's pension fund. He was never prosecuted for embezzling millions from his company's pension fund.
Calling someone a robber means they are currently a robber. It can be inaccurate and untrue in the same way that calling someone a bartender would be inaccurate and untrue if they are a lawyer who hasn't tended a bar in 20 years.
I don't like the idea of prosecuting people for this, but I don't think it's illogical.
Honestly I don't know, I think it would depend on how long ago the crime was and if there's a credible reason to believe they won't do it again. I do think there's a meaningful difference between "they murdered someone" and "they're a murderer", and in general I do prefer to describe people's actions as opposed to using "they're a ___" labels.
Is this not the case in other countries?