An illegal name would throw an IllegalArgumentException here which would break the de-serialization.
Can we catch IllegalArgumentException (illegal name) and default to Name.MyOwn just to be more tolerable to name issues?