Looking through the into_problem function it feels like that needs to be dried up with a declarative macro that iterates all variants of the enum and uses an attribute on the enum variant to set the message string. But that will be an issue for another PR
From OpenLEADR/openleadr-rs#50: