There is a new feature in release 2.1.6 for Rule-4.0. It is now possible to edit expressions in Conditional Actions. Previously, it was only possible to 'Erase expression'. To edit an expression, one first edits the Conditional Action that contains the expression.
When Edit expression is selected, there are two options presented:
Each expression is made up of elements. Each element is one of the following:
( ) NOT AND OR XOR or a condition
In each of the pull down menus, for 'Insert before expression element' and 'Delete expression element(s)', there is a list showing each element in the expression. It is possible to delete any of the expression elements, and to insert a new element into the expression. See this example:
When 'Insert before expression element' is selected, a list of expression elements that could be inserted into the selected position is presented in the pulldown menu. Each available condition for that rule is offered along with the operators and parens. If you need a new condition, you would first create it as described below.
Note that this editing feature is for editing the structure of the expression, not the individual conditions within it. Individual conditions can be edited in the section at the bottom of the Actions page called "Manage or Create Conditions". With this new editing feature, you could delete a condition, or place it in a different location in the rule, but not edit what the condition is.
Warning: When you construct an expression in Rule Machine, RM protects you from creating a malformed expression. It only offers valid choices at each step as you construct the expression. However, when you edit an expression, these 'guard rails' are down, and you can easily mess up the expression and cause it to be malformed. Examples of this are mismatched parenthesized sub-expressions, two conditions in a row, or two operators in a row, etc. Rule 4.0 will prevent several malformation errors, including these examples, but other malformations are certainly possible. Check what you do when you edit with proper care to details. A malformed expression will cause that action and that rule to not function correctly.