What I have:
• A collection of notes with the prototype “Sequential” with key attributes “IsSequential”(boolean), “Prerequisites”(list), and “Xmin”(number).
• Within their container, the Sequential notes are all linked with links of type “requires”.
• An agent guaranteeing that every Sequential note has a unique name.
• An agent guaranteeing that (un)linking two Sequential notes is mirrored in the Prerequisites list.
• An agent guaranteeing that subsequent notes are always to the right of their prerequisites.
• An agent “Sequence” that finds all notes with prototype “Sequential”
The result is easy to read, easy to use, self-maintaining, and resembles a timeline.
But, now I have to specify other relationships between notes, and the beautiful sequential flow is an obstacle.
I could just turn of the positioning agents, and only activate them when needed, and that might be easiest.
But I think I want that sequential, positioned view in an agent, viewed as a map. Ideally, I’d even like to be able to add new links in the agent map view, and have those update the list property of the original note.
This seems overly complicated, so I thought I should ask for alternatives, or approach nuggets.