
Hi Marko
a~b& (c=d|e=f)
OK cool, that is an example where it would be useful.
I see, there can be at most one search key per rule? So, it would seem to make sense to put the most selective condition first. And I guess then it would not make sense to move the isType(OR) checks before EQUALS or EXISTS.
Yes currently each rule is indexed by one search key. Indexing on further terms might help in the case where the key tag is changed by a 'set', so it is something I've thought about.
Does my above example convince you that the symmetry might be useful? Or do you think that we should throw syntax error for "stupid" style definitions?
Your example is good. I would not call it symmetrical though :) There are lots more things that do not work, here are a few that I've just tried out: 1. a~b # doesn't work 2. a~b & c=d # works 3. a~b & c~d & e=f # doesn't work. 4. (a~b | c~d) & e=f # works 5a (a~b | c~d) & e=f & g=h # doesn't work 5b ((a~b | c~d) & e=f) & g=h # works! 6a e=f & g=h & (a~b | c~'d.*') # works 6b (e=f & g=h) & (a~b | c~'d.*') # doesn't work Just looking at first and second doesn't work at all in general. Of course no-one uses anything that complex in their styles. ..Steve