replaced validation system by dispatched events with ViolationList