re: Keep in mind that in your case your Validator<ICustomer> won't take into consideration the validation rules defined in the ICompany interface and vice versa.
Ah, ok, so this is a design decision?
If find that a very odd decision indeed. So odd in fact, that I would venture to guess it was simply an oversight, wouldn't you agree?
If not, would could possibly be the motivation behind it?