validation fails only if false is returned (void works)