Perspective filtering rules

Is there a list of rules that clearly explain how the filtering rules work in custom perspectives? There are so many combinations, it’s basically impossible to determine by trial and error what each set of rules does. Every time I think I have a combo figured out, there seems to be a “gotcha”.

I’ll offer an example. This is a test perspective:

  • Don’t use project hierarchy
  • Group actions by – Ungrouped
  • Sort actions by – Due
  • Filter by status – Any Status
  • Filter by availability – All
  • Filter by duration – Any Duration
  • Filter contexts – On Hold

In my database, I have a top-level project folder that is Active, containing a parallel project that is Active, containing a single action that belongs to a context that is Dropped. The action has neither a defer nor a due date. In the perspective defined above, the project shows up as an entry. This raises a couple of questions for me:

  • Why does a project show up in an action-based perspective at all?
  • Why does this project appear in an “on hold” list when it is at worst stalled?

I’ve pored over all the OF manuals, but they skip over most of the filtering options. (In fact, the term “pending” doesn’t appear in the manual at all.) Any suggestions on a good reference? Thanks!

In answer to the first question, a project will appear as an action if it contains no “remaining” items.

I remember that OmniFocus changed their approach to parent projects in this regard a couple of years ago, and after much debate in the old forums, we pretty much came to live with the idea that a project itself has a status that needs to represent “completion” and should therefore show up in an assigned perspective or context.

The idea is basically that when the project has no sub-actions within it, the project itself is the action – you either need to “complete” it, or add more tasks to it.

In this case, the “Dropped” action has essentially disappeared from the project – it’s no longer actionable, nor or in the future, so it’s kind of the same case as if you had deleted the action entirely. It doesn’t appear because you’re not including “Dropped” contexts.

So the answer to your first question is that it’s expected and known behaviour, although it may not be as well-documented as it should be.

As to your second point – why the project appears when you only have “On Hold” selected – you may have uncovered a bug, or at least some not-entirely-expected and undocumented behaviour… I’m guessing the project isn’t assigned to any context at all, which, for whatever reason, OmniFocus seems to treat as an “On Hold” context. I’ve reproduced this both on my Mac and iPad version of OmniFocus, and I’m seeing the exact same behaviour, but only when no context is assigned to the project. In fact, the same thing happens for tasks when no context is assigned.

Essentially, it would seem that a blank context is equivalent to a task being “on hold”, which has a certain logic to it, since I guess if you haven’t assigned a context the item is “on hold” until you do. Granted, not everybody may agree with that logic, but I can sort of see the point. I’d suggest sending an e-mail to to report this and ask if it’s intentional behaviour or not – in the very least it should be better-documented.

Thanks for the insight. I get the idea of an empty project becoming an action, as this essentially defines “stalled” projects. One thing I like about OF is the ability to easily pause and resume projects to keep things tidy.

I appreciate you taking the time to replicate the issue. I’ve emailed Omni support about it, so I’m hoping for some additional feedback there. I hope the “context free task as on hold” isn’t by design. There are plenty of tasks that don’t have useful contexts, especially since OF limits a task to a single context.

Something is not right when creating custom perspectives in OF2 for iPad. When I open Filter by Status I’m expecting to see four choices: Active, On Hold, Completed, and Dropped. When I open Filter Context I’m expecting to see my contexts. The current choices in Filter By Status and Filter Context have no meaning in OF2. I’m assuming others have noted this and made enhancement requestes via email. I’ll be doing the same.

I also just noticed that when I create a context and give it a Dropped status it’s no longer visible nor pickable for assigning that context to tasks. I thought, “What a great way to archive dropped tasks without deleting them.” After all, what other purpose (not the aquatic mammal) would there be? Another bug I suppose.

I am also perplexed as why the project itself shows up nested under itself in perspectives. I would rather this not be happening.

Have you tried switching the availability filter to “Available”?

That works (but also has the affect of not displaying deferred actions, which I suppose is usually okay with me).

I forget, but I think that the setting in preferences “In perspectives without project hierarchy…” might also change this behavior.