Version 4

    At the moment, as you know, its pretty simple templating, with pretty much no built in grammar, all user defined.


    Some options to enhance:


    1) Have a "hierarchy" of options on the LHS


    WhenThe Driver  = ..

    Constraint- age less then =...

    So when you pick "The Driver" you then only see suggestions relevant to the Driver fact


    2) For values, be able to specify a list/range:


      Constraintage less then {}=...

      Constraintclassification is { means only a number can be entered.


    3) Be able to define field, operator, value seperately (rather then all combinations)


    At the moment we have to define:

    When- age is less than

    When- age is greater than etc etc....


    But instead, we could provide a list of fields (and know their types) - and it will generate all valid "combinations" of field - operator - value.


    (as an alternative, probably easier/friendlier to use, is to have a wizard that generated all "verbalisations" of field constraints, which can then be edited.


    4) Have a special construct for "bound variables" - so if a variable is bound on the LHS, it will make other constructs available on the RHS etc (I am conflicted as to the role of bound variables in business rules).