Контроллер отвечает за «логику» в триаде MVC, и решение о том, являются ли данные действительными, определенно «логично», поэтому именно контроллер должен нести ответственность за принятие решения о том, являются ли данные действительными.Тем не менее, модель нередко участвует в этом решении (например, через атрибуты проверки ее членов или реализацию вспомогательного интерфейса проверки).
Представление вообще не должно участвовать в решениидействительны ли данные, поскольку представление не должно содержать какой-либо существенной логики.Представление может отображать информацию, касающуюся достоверности модели и / или ее частей (например, индикатор «плохое значение» рядом с текстовым полем), но решение об отображении этой информации должно в конечном итоге принять контроллер.