Automated forms publishing system and method using a rule-based expert system to dynamically generate a graphical user interface
First Claim
1. A computer-implemented method of dynamically prompting a user for information, comprising the steps of:
- (1) displaying on a computer display device a form comprising a first plurality of prompts;
(2) receiving a response corresponding to one of the first plurality of prompts from the input device;
(3) converting the response received in step (2) into a factual assertion in a rule-driven knowledge base comprising rules written in a declarative language;
(4) executing one or more rules in the rule-driven knowledge base to test for a condition satisfied by a previously asserted fact, and (5) in response to the condition being satisfied in step (4), changing the appearance of the form to display a new prompt or enable a disabled prompt, wherein the newly displayed or enabled prompt would not otherwise have been displayed or enabled absent satisfaction of the condition.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method includes a rule-based expert system that uses high-level rules for determining what graphical interface features should be displayed to a user. The rules can be written in a language such as PROLOG and used in an inference engine to drive the graphical user interface. The rules can be changed without recoding and testing of computer software, and without specialized computer software knowledge. Consequently, people other than programmers can customize and change a graphical user interface easily and without errors. Certain embodiments include a scanner and related software that captures data fields from existing paper forms; a database for storing field definitions and their relationships together with rules for determining which user interface features to display at a particular point in a data entry sequence; an inference engine for executing the rules; a graphical user interface component that provides the user with dynamically generated screen configurations based on execution of the rules (which are fired based on inferences drawn from data the user has entered); and a printing component that generates paper and/or electronic forms based on the user'"'"'s inputs and the execution of the rules. Other embodiments include a method for using a graphical user interface to dynamically represent information based on previous responses including steps of displaying a first set of information for which data selection is required; using the first set of information to fire rules in an inference engine, wherein the rules produce conclusions that are used to dynamically generate a second set of information for which data selection is required; storing the results of the first and second sets of information as predicates for further rules; and generating one or more forms using the first and second sets of information.
-
Citations
22 Claims
-
1. A computer-implemented method of dynamically prompting a user for information, comprising the steps of:
-
(1) displaying on a computer display device a form comprising a first plurality of prompts;
(2) receiving a response corresponding to one of the first plurality of prompts from the input device;
(3) converting the response received in step (2) into a factual assertion in a rule-driven knowledge base comprising rules written in a declarative language;
(4) executing one or more rules in the rule-driven knowledge base to test for a condition satisfied by a previously asserted fact, and (5) in response to the condition being satisfied in step (4), changing the appearance of the form to display a new prompt or enable a disabled prompt, wherein the newly displayed or enabled prompt would not otherwise have been displayed or enabled absent satisfaction of the condition. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
(6) populating a printable output form with responses received from the input device; and
(7) printing the printable output form.
-
-
10. The method of claim 1, wherein step (4) comprises the step of executing rules written in the PROLOG language in an inference engine, wherein choices made by the user are mapped to assertions in the rule-driven knowledge base, and wherein inferences drawn from the assertions are used to change the prompts that are displayed to the user.
-
11. The method of claim 1, wherein step (4) comprises the step of executing rules written in a natural language, wherein choices made by the user are mapped to assertions in the rule-driven knowledge base, and wherein inferences drawn from the assertions are used to change the prompts that are displayed to the user.
-
12. A system for implementing a graphical user interface, comprising:
-
a computer display device including an input device; and
a computer coupled to the computer display device;
wherein the computer includes a graphical user interface program component that dynamically generates screen configurations based on execution of logic-based rules in a knowledge base, wherein one or more conditions in the logic-based rules are satisfied by answers entered by a user in response to prompts on the computer display device. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
a scanner and associated image capture software that captures information from existing forms and stores them in a database; and
means for printing output forms populated with information input by the user and formatted according to the information captured from the existing forms.
-
-
20. A distributed processing system, comprising:
-
a server computer comprising a dynamic HTML generator component that generates HTML in response to inferences drawn by rules in a knowledge base, wherein the rules are written in a declarative language and define prompts that are to be displayed to a user on a client computer; and
a plurality of client computers each coupled to the server computer over a network, each client computer comprising a web browser that communicates with the dynamic HTML generator to display one or more prompts in response to the HTML dynamically generated by the server computer;
wherein the prompts that are to be displayed to the user dynamically change in response to answers provided by the users on the client computers.
-
-
21. A method of processing forms using a computer, comprising the steps of:
-
(1) capturing information in the computer from a plurality of preexisting paper forms and identifying redundant and overlapping fields across the plurality of preexisting paper forms;
(2) defining a plurality of transaction-level prompts that prompt a user for information without prompting for redundant information;
(3) defining a plurality of form-level prompts that prompt the user for additional information needed to populate fields on the preexisting paper forms;
(4) defining expert system rules and associating them with the plurality of transaction-level and form-level prompts, wherein the expert system rules define those prompts that will appear to the user on the basis of previous responses; and
(5) executing in the computer the expert system rules such that certain prompts are presented to the user on the basis of previous responses. - View Dependent Claims (22)
(6) populating a plurality of printable forms on the basis of responses received from the user; and
(7) printing the plurality of printable forms.
-
Specification