>>FWIW my vote would be against throwing exceptions for invalid or missing data.....
>
>Why not? Inquring minds wanna know....Exceptions are expensive. By that I mean that it takes a lot of time to throw/catch them. They probably should not be used for something like validating data. If you can determine that there's a problem by checking stuff, then you should do it. Exceptions are more for errors that are not "checkable" easily any other way. That's a rather simplistic way of looking at it, but I think it's a good rule of thumb.
~~Bonnie