Why oh why do people still persist in using this type of design? Seems that the majority of code I come is written this way. Totally bleedin' unreadable.

If all the objects have just a primary key and a collection why don't they just use one class, DataObject, and that can be used for every feckin persistable type.

</rantOver>