Solving an unwieldy inheritance framework function
Take a look at the specification pattern (pdf). 

In particular, Microsoft has already implemented this kind of framework as part of one of their (old) application blocks. You can look there for many related ideas.