confusing part and complete combo result+discussion
Good catch. There was a bug in "part" -- it was basically applying the constraint to the left but not the right. I just pushed a patch to fix that bug.
Some comments on other WQL in that card:
- {"not": {"left": {"type": "User"} } } will give you all the cards that do not have a left card that is a User card. If you want it only to return plus cards where the left isn't user, you need to do left: { not: {type: User . This means it has a left (therefore is a plus card) which is not a user card.
- Similarly {"not": {"part": {"found_by": "all star cards"} } } will give you all the cards that do not have a part that is found by the all star cards search. Unfortunately this one is a little harder to switch around, because part: not: star would give you all the cards that have a part that is not a star card (even if the *other* part were one!). There are lots of ways to achieve what you're going for:
- part:{}, not: {part: {foundby: all star cards}} (just constrains original search to plus cards.
- same, but substitute left or right for that first "part".
- left: {not : {part: {foundby: all star cards}}}, right: {not: {part: {foundby: all star cards}}}. Longer but easy to read
- left/right/part:{}, not: {foundby: "part is star card"}
Awesome!
Thx for your WQL help. What i wanted was to get all cards (including simple cards) that aren't star cards, don't have a star card as a left or right, and don't have User or some other types as a left. And i worked around our bug, see http://grouppatternlanguage.org/wagn/Unassociated_Basic_cards
Actually, ideally that last bit would only avoid cards with User on the left, and one of the relative inclusions in User+*type+*content on the right (and similarly for the other cardtypes to be excluded), but WQL probably won't be up for that for a while.
--John Abbe.....Thu Apr 29 13:12:54 -0700 2010
{"not":{"included_by":{"type":"User"}}} ?
--Ethan McCutchen.....Thu Apr 29 13:42:13 -0700 2010