I'm working on a site that has a workflow in which you might approach the system with one thing (say: an article) or another (say: a person). Articles can have relationships with people, and vice versa.
Normally I would say "make one content type the parent and be done with it," but the required workflow demands that users be able to create the relationship from either direction — a user may want to add a person to the system and relate that person with an existing article, and I don't want them to have to edit every relevant article to create that relationship.
So, you might say, ok: allow either to be the parent — have two relationship fields, and whenever you have to display those relationships, use PHP to filter out any duplicates that might exist.
BUT: what happens when I want to destroy that relationship — not the entries, just the relationship(s)?
I now have to track down every article/person manually, and remove those relationships from each.
It feels like I'm over-thinking this, but I thought I'd ask: Is there a way to create "peer" relationships, one that can be created only once from either peer?
Would this be better handled by something else, like say Categories?
(Now that I'm thinking about it, no categories won't work, because I'd have to go back and add that category to every relevant sibling entry.)