System for creating, editing, displaying, and executing rules-based programming language rules having action part subsets for both true and false evaluation of the conditional part
First Claim
1. A programmable computer for use in creating, editing, displaying and executing programs in a rules-based programming language, said computer comprising:
- means for displaying;
means for storing a set of actions in the form of executable statements and a plurality of rule means each of said rule means comprising;
i) a rule name,ii) a set of parameters through which the computer provides input data to said rule means,iii) a set of conditions in the form of logical expressions, each evaluating to a boolean result, said boolean result comprising one of a true state and a false state,iv) a first ordered subset of actions from said set of actions to be executed when said result of said condition is evaluated as said true state, andv) a second ordered subset of actions from said set of action to be executed when said result of said condition is evaluated as said false state;
wherein each action in said first and second subsets of actions has a sequence number indicating the order in which said actions in each said first and second subset of actions are to be executed; and
rule execution means for executing a rule means comprising;
means, coupled to said means for storing, for sequentially evaluating said condition of said set of conditions for a rule means being executed by said rule execution means and for generating an evaluation signal representing a first boolean value when said condition is in said true state and a second boolean value when said condition is in said false state; and
means, responsively coupled to said means for evaluating, for executing, in response to said evaluation signal for said condition presently being evaluated by said evaluation means for said rule means presently being executed by said execution means in order, said first subset of actions in response to said evaluation signal representing said first boolean value and in order said second subset of actions in response to said evaluation signal representing said second boolean value.
2 Assignments
0 Petitions
Accused Products
Abstract
A programmable computer which operates by executing rules, each including a rule name, and optionally: input parameters, a set of conditions, a set of actions associated with each condition, and a set of exception handlers. A condition is a logical expression which evaluates to a true or false boolean value, while an action is an executable statement. An exception handler contains executable statements.
The computer includes text entry and display means for programming of rules. A rule is displayed with each condition and each action having a row of text. The computer generates a yes/no quadrant into which a programmer may enter sequence numbers, to associate ordered sets of actions with individual conditions. Sequence numbers may be entered not associated with any condition, to define a set of default actions.
Upon entering a rule, the computer sequentially evaluates the rule'"'"'s conditions. Upon a condition evaluating to true, the computer executes the set of actions associated with that condition, then exits the rule. If the rule contains no conditions or none evaluates to true, the set of default actions will be executed, and the rule exited.
If, during execution of the rule, the computer detects an exception event, such as a missing datum or other execution error, the computer passes to the rule the name of the detected exception event. If the rule contains an exception handler bearing the same name, the computer will execute the statements within that exception handler.
223 Citations
11 Claims
-
1. A programmable computer for use in creating, editing, displaying and executing programs in a rules-based programming language, said computer comprising:
-
means for displaying; means for storing a set of actions in the form of executable statements and a plurality of rule means each of said rule means comprising; i) a rule name, ii) a set of parameters through which the computer provides input data to said rule means, iii) a set of conditions in the form of logical expressions, each evaluating to a boolean result, said boolean result comprising one of a true state and a false state, iv) a first ordered subset of actions from said set of actions to be executed when said result of said condition is evaluated as said true state, and v) a second ordered subset of actions from said set of action to be executed when said result of said condition is evaluated as said false state; wherein each action in said first and second subsets of actions has a sequence number indicating the order in which said actions in each said first and second subset of actions are to be executed; and rule execution means for executing a rule means comprising; means, coupled to said means for storing, for sequentially evaluating said condition of said set of conditions for a rule means being executed by said rule execution means and for generating an evaluation signal representing a first boolean value when said condition is in said true state and a second boolean value when said condition is in said false state; and means, responsively coupled to said means for evaluating, for executing, in response to said evaluation signal for said condition presently being evaluated by said evaluation means for said rule means presently being executed by said execution means in order, said first subset of actions in response to said evaluation signal representing said first boolean value and in order said second subset of actions in response to said evaluation signal representing said second boolean value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
Specification