Ohhh… Now I am following you. Yeah, you are looking at the searches from the search file itself and then you are trying to figure how it works by reading them the searches. Honestly, I think it is going to be a little bit hard to do it unless you have a populated documents with lots of data because there is a lot of logical into this workflow. It is a lot easier if you have some documents with info that you can use to play around and try things to figure out things.
Let me unpack the first search you asked for,
//@type = project and (@status = active or @status = ongoing or @status = hold)//* and not @done
First, notice that I eliminated the escapes, because that is just for the parser. Like I said before, I usually just look at the sidebar and do the creations of searches or the modification of them from there. Now, let’s split this in concise chunks.
//@type = project
(@status = active or @status = ongoing or @status = hold)//*
I don’t understand the philosophy behind this particular workflow, but this one is only looking at children of projects that are tagged with a particular value. Those tags are,
@status(active), @status(ongoing), and @status(hold). I know that is looking for the children of those projects because it enclosed the second in a parenthesis and then it has the
//* path that is telling TaskPaper to include all of the children of those tags that are also projects (that is step 1 & 2). Finally, it also wants to make sure that it ignores those that are
I honestly don’t understand the title of that query,
All Metadata & Tasks, because I don’t understand the idea behind the system. Since it is not looking at all the Metadata and Tasks, but just the metadata and tasks of the projects that are tagged as I mentioned above; I think that if you want to use this, you need to tag all of your projects with one of the three tags there. Again, this is just an inference!
Now, unto the next one,
//@type = project and (@status = active or @status = ongoing or @status = hold)//@type = task and not @done union //@type = task and not @done/*
I think that that particular query needs more parenthesis. Hahaha. I honestly think that there is some redundancy in the query, but I need to spend some time trying to figure out why it was constructed that way. Let me get back to you on Monday.