If I have objects that represent a hierarchy of relationships. For example:
Each of the items listed has a database table related to an object. Each object/table has an ID, Parent ID (Spouse ID for Spouse Address records) and Base ID (Person in the example). Given that hierarchies can be arbitrarily deep and wide, how would you design the objects and data access layer?