Assuming a male/female table is really mislabelling things, these are both 'people', and a marriage can then be simply construed as a relationship between two (or more!) people.
Their other labels are just attributes stored in fields in the people table.
The simplest solution is actually the most robust. Any specialization adds complexity and rigidity.
Their other labels are just attributes stored in fields in the people table.
The simplest solution is actually the most robust. Any specialization adds complexity and rigidity.