Troubles with an attribute that depends on the value of another attribute
My first thought off the top of my head is that you could put in the relationship_type attribute and have it be "self" rather than null for the primary. Another possibility is that you could make the "type" include "primary", "dependant spouse", or "dependant child", depending on how you need to access it.

I know that's not anything clever, design-wise. I'm interested to hear what others suggest, also.