[EMAIL PROTECTED] (Josh Harding) writes:
> Paul Sandoz wrote:
> > It is possible to extend expression types to include
> > an N peer boolean expression that contains a list of
> > expressions and applies the same operator to each.
> >
> > Like a 'flatened' part of a binary tree:
> > 'if (a | b | c | d)' instead of 'if (a | (b | (c | d)))'
> >
> > (There are probably logical precedence rules to automatically
> > work out this sort of thing from a binary tree and group
> > leaf nodes. I bet its a one liner is lisp!).
> >
> > Attached is some idl, does this 'express' a boolean
> > expression model for the GUI use cases you and
> > Matthew have 'expressed'?
>
> That looks good to me. Just to see if I understand... would the unary
> node type be used for the leaf nodes in the tree? where you'd have a
> field name, a condition and a value? e.g.("Sender", "contains",
> "spambot") Since you have an NPeer node, isn't the Binary node just a
> special case of that? Would it make things simpler to not have a Binary
> node type and just use Unary and NPeer? Or maybe I'm overlooking
> something.
No, unary is for operators that only take one operand (eg NOT). In fact,
not only is Binary not strictly necessary because it's a special case
of NPeer, Unary isn't really necessary either, for the same reason.
Dan
--