Refactoring ValueObject, introducing schema method