Found this today while using Smart Groups on DT 2.2, confirmed on OS X Snow Leopard and Lion …
Create a smart group, then add a “Kind is Bookmarks” predicate. Should work fine. Edit the smart group and add another predicate, set it to “Kind is Feed” and make sure the search is set to “Any of the following are true”. Click OK.
Edit the smart search again … only one “Kind” predicate is saved, the other is discarded.
Why can’t I do a smart group with more than one “Kind” predicate?
You have to create a compound predicate by option-clicking on the + button. Your smart group criteria needs to look like this:
Hmm ok, thanks, I’ll try that, though it looks awfully like a “bug work around” to me
Not a bug workaround, as it allows multiple predicates to be added as conjunctive or disjunctive.
If you want the smart group to find items where both of the 'Kind" predicates are true, the initial statement should be “All of the following are true” instead of “Any of the following are true”.
With a bit of experimentation, you will find that you can formulate quite complex criteria.
Well yes I understand the whole and/or nested predicate model … but if i just have a top-level “any…” with two “kind …” predicates it SHOULD match either of them … in boolean terms …
(a) any of (X or Y) … this fails
(b) any of ((any of X) or (any of Y)) … works
Clearly (b) can be reduced to (a) since (X or 1) is logically equivalent to X. But (a) fails while (b) works which i consider a bug.
… lol meant (X AND 1) not X or 1 … but you get my point.
Think about it … how can “(kind is feed) or (kind is bookmark)” fail when kind is feed? … yet it does.
I just wanted to note that this same problem still appears, in DTPO 2.4 running on OS 10.6.8.
Thanks for the bug report! The upcoming version 2.4.1 will fix this.