DevForce uses a Reverse Topological sort to calculate a default Persistence Order. Occasionally, we hear complaints that the order is not always correct. After an in-depth analysis of these cases, we have found a couple of contributing causes:
(1) There are too many relationships and/or some contradictory relationships and the problem cannot really be solved. Simplifying the relationships and reducing the number of relationships can sometimes help.
(2) There are too few and/or missing relationships. A good example occurs with grandparent-parent-child relationships. Sometimes the relationship between grandparent and child is not declared and the missing relationship shows up as an apparent persistence order problem.
In most cases, we find that subtracting relationships or adding missing relationships can solve the problem. .
I am not saying that there is a better solution to your problem, but we might be able to help you if you could give us a specific example.