ensuring validation for each model and proper error output