OK, I've continued tinkering for a while now. I'm learning a lot!
And making progress...
But right now I can't figure out from the available reference material if I'm using terms correctly or not, or if it's something else that's stopping me. So it seems like a good time to post.
Here's the idea:
(1) Sequential Tasks are connected, in their required order of doing, by links of a type called "antecedent".
(I.e. each task has a link that points to the task that comes after it, if there is one.)
(2) Through rules, task-notes will know if there is an undone task "upstream" from them. I'm calling an undone upstream task an "open precedent."
(3) Tasks-notes automatically set their Action attribute to false when they have an open precedent, so they won't get swept up by Context agents. Thus, the GTD maxim to focus only on the very next action is achieved. Or at least supported...
Here is the chunk of rules that I'm using, with **annotations**.
Code:PrecedentValues= links.inbound.antecedent.Action;
**This populates a set attribute with the Action status of any preceding tasks**
if(PrecedentValues(true)){OpenPrecedent=true};
**This is meant to translate the set to a Boolean attribute - it doesn't seem to work.**
PrePrecedentValues=links.inbound.antecedent.OpenPrecedent;
If(PrePrecedentValues(true)){OpenPrecedent=true};
**These two lines are meant to ensure that the existence of an OpenPrecedent in the task sequence cascades downstream.**
if((PrePrecedentValues!(true)&PrecedentValues!(true))){OpenPrecedent=false};
**This last line is meant to reset OpenPrecedent to false when upstream tasks are completed.**
MyPrecedents= links.inbound.antecedent.Name;
**And this rule, which works great, fills a set attribute with the names of the immediate upstream tasks.**
Here is a copy of the little tester TBX I've been tinkering on:
Sequence]Working.tbx (39.14 KB)If anyone is able to help, I'll be eternally grateful.
I think this sequential task stuff is important for the TBX/GTD community, as well.
Thanks!