Separate implementation of ModelValidation