I figured Iād bump the thread since it looks like itās been inactive for a few months, and I find myself wishing I had this feature all the time. Iāll try to summarize what Iāve seen skimming this, although Iām sure I missed a lot so if anyone can complete this summary Iād be grateful.
I explained in my original reply why imho items should just be allowed to have multiple parents rather than implementing this feature in the form of āclones/symbolic linksā. From skimming these responses it seems people generally agree, but in slightly different ways.
1. What to do when the original item gets deleted? Do the clones get deleted or not?
I originally said yes all items should be deleted, but @Craig_Oliver and others said no. I see their point (the screenwriting example was good), and I change my mind about removing an instance from individual lists. I actually agree with them now that ādeletingā a node which has multiple parents should in effect delete the link between the currently viewed parent and the selected node, while preserving the node and all of its other connections. Whatās most important I think is that the user knows whatās happening. So if an item has multiple parents, it should be marked clearly.
The current root node is a special case. The current root should have all parents displayed at the top as separate breadcrumbs (as @Viktor_Papara has nicely shown). The only thing Iād have to change, since the breadcrumbs could cause an infinite recursion, is that there should be a limit in how many levels of parents you can see at the top. Also, if the current root node is deleted, I think it should actually be deleted (not have a single link to the current parent removed as in other cases), since the user can see all of its parents at the top and knows that it is being deleted from each list.
2. Should we allow āclone chainingā? That is, if you inserted B as a clone of A, would you be able to make a clone of B?
As I think others have said, the way nodes are linked should be only limited in that if A is the parent of B, B cannot also be the parent of A. Every other situation should be fine.
Anyone who uses the multi-parent feature must have a limit in the number of layers of children they can render at once. For example, I believe that limit is 2 in TheBrain. Otherwise there would be infinite recursion. Perhaps users who donāt use this feature can preserve the ability to render an unlimited amount of levels.
3. Does clones show up as single result or multiple results when inserting internal link?
Single, as I think we all agree?
In short, I believe nodes should be able to have multiple parents, and thus should be able to be rendered in multiple places at once. imho the ācloneā terminology is confusing because although it can be rendered multiple times, it is still only one node just with multiple parents. This is functionally the same as TheBrain, which has a cool visualization algorithm that allows nodes to only be rendered once no matter how everything is linked, but due to the linear way that Dynalist is rendered it should be programmed more like transclusion in TiddlyWiki (so happy to see TiddlyWiki referenced ).
Have I missed anything? Is anything still up for debate?