Can each child only have a single parent?
If that is the case, I would suggest having a "parent" field on the child objects. This guarantees that each child only has one parent, and the non-empty parent set is implicitly created by looking finding all the parents.
You could easily maintain this parent set by doing a one-time scan through the children on startup, and then listening for change events on the child and updating the set accordingly.1111