definition of self.metadata.language throws MnamerException if path_data.get("language") is not a valid language (in my case it was the German word "und", which means "and" and is not a language reference at all)
later if condition isn't necessary because self.metadata.language will never be set before
try-except block used makes sure that path_data.get("language") can be converted to a Language, otherwise the metadata language will not be set
Fixes: #289
Changes explaination: