Contextual validations with form objects

When you deal with complex forms The Rails Way is not enough. You have to introduce another abstraction for handling more sophisticated validations.