Items like this don't, in my experience, create major design issues. Larger business rules such as (and I'm making this up) "Child record can only be entered if Parent record field 'hasChild' is checked" tend to be what cause more problems from a design perspective if you hard code them. You might later decide you want to determine whether a parent has a child based on whether or not there are actually any child records related to a parent record, so such a validation would be done more at the database level (I hope I'm not being to obscure here). Simple "sanity checking", so to speak, won't create major design flaws that will cause you to have to start over. You might have to tweak the patterns you are using, but there is not a lot of danger in doing so and will in all liklihood be necessary. In practice I almost always just add the basic validation to both the client and server (or just the form in winforms) without providing some larger design structure for it. That's me though. I'm sure there are other opinions. ;-) -Matt ------------------------------------------ The 3 great virtues of a programmer: Laziness, Impatience, and Hubris. --Larry Wall