Delta model processing logic representation and execution system
First Claim
Patent Images
1. A method of processing information in a computer system comprising:
- proiding in computer readable medium an event data store which can store a plurality of respective event identifiers and respective expressions that indicate respective corresponding predicate logic expressions of condition that respectively correspond to respective events;
providing in computer readable medium a task data store that can store a plurality of respective task identifiers and respective corresponding response information that indicates respective groups of one or more command statements that correspond to respective tasks;
providing in computer readable medium a correspondences data store that can store a plurality of correspondences between respective event identifiers and respective one or more task identifiers;
providing in computer readable medium a notice data store that can store respective event data that respectively correspond to respective event identifiers;
identifying from the event data store a respective predicate logic expression of condition corresponding to a respective event identifier that corresponds to respective event data stored in the notice data store;
evaluating the identified predicate logic expression of condition using the respective event data so as to produce an evaluation result for the respective event;
identifying from the correspondence data store a correspondence between the respective event identifier and at least one respective task identifier;
identifying from the task data store at least one response information that indicates a respective group of one or more comman statements that correspond to the at least one identified task identifier; and
executing a respective command statement that corresponds to the at least one identified task identifier only if the produced evaluation result for the respective event has a prescribed value.
0 Assignments
0 Petitions
Accused Products
Abstract
The invention presents novel method, apparatus, and data structures for storing, maintaining, and executing processing logic on a computer system. Processing logic is encoded into its distinct, constituent elements that are flexibly linked, facilitating reuse and reconfiguration. Executable responses are selected for an input signal by identifying a correspondence between the input signal and an expression, evaluating the expression to a resulting value, and identifying a correspondence between the expression and its resulting value, and an executable response.
78 Citations
58 Claims
-
1. A method of processing information in a computer system comprising:
-
proiding in computer readable medium an event data store which can store a plurality of respective event identifiers and respective expressions that indicate respective corresponding predicate logic expressions of condition that respectively correspond to respective events;
providing in computer readable medium a task data store that can store a plurality of respective task identifiers and respective corresponding response information that indicates respective groups of one or more command statements that correspond to respective tasks;
providing in computer readable medium a correspondences data store that can store a plurality of correspondences between respective event identifiers and respective one or more task identifiers;
providing in computer readable medium a notice data store that can store respective event data that respectively correspond to respective event identifiers;
identifying from the event data store a respective predicate logic expression of condition corresponding to a respective event identifier that corresponds to respective event data stored in the notice data store;
evaluating the identified predicate logic expression of condition using the respective event data so as to produce an evaluation result for the respective event;
identifying from the correspondence data store a correspondence between the respective event identifier and at least one respective task identifier;
identifying from the task data store at least one response information that indicates a respective group of one or more comman statements that correspond to the at least one identified task identifier; and
executing a respective command statement that corresponds to the at least one identified task identifier only if the produced evaluation result for the respective event has a prescribed value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
evaluating involves evaluating the identified predicate logic expression of conditions to produce at least one of multiple possible evaluation result values; - and
identifying in the correspondence data store a correspondence between the event and at least one task involves identifying at least in part based upon the at least one evaluation result value.
-
-
3. The method of claim 1 wherein,
evaluating involves evaluating the truth of an identified predicate logic expression of condition; - and
identifying in the correspondence data store a correspondence between the event and at least one task involves identifying based upon the event if the evaluation result is true.
- and
-
4. The method of claim 1 wherein,
evaluating involves evaluating the identified predicate logic expression of condition to produce at least one of multiple possible evaluation result values; - and
identifying in the correspondence data store a correspondence between the event and at least one task involves identifying at least in part based upon the event and the at least one evaluation result value.
- and
-
5. The method of claim 1 wherein,:
-
the notice data store includes an application program data store of information;
wherein evaluating involves evaluating the expression of condition relative to information in the application program store.
-
-
6. The method of claim 1 wherein the at least one of the expressions in the event data store includes a reference to a predicate logic expression of condition.
-
7. The method of claim 1 wherein at least one command statement can invoke a computer program.
-
8. The method of claim 1 wherein at least one command statement can invoke a computer program.
-
9. The method of claim 1 wherein at least one command statement can invoke access to a relational database management system.
-
10. The method of claim 9 wherein the at least one response information includes information includes at least one relational database management system statement.
-
11. The method of claim 1 wherein at least one command statement can invoke access to a relational database management system.
-
12. The method of claim 1 wherein,
at least one command statement can invoke of at least one relational database management system or can invoke a computer program. -
13. The method of claim 1 wherein,
the event data store is implemented in a event data store table; -
the task data store is implemented in a task data store table;
the correspondence data store is implemented in a correspondence data store table; and
the notice data store is implemented in a notice data store table.
-
-
14. The method of claim 1 wherein,
the event data store is implemented in a conditions data store table; -
the task data store is implemented in a responses data store table;
the notice data store is implemented in a notice data store table;
the correspondences data store is implemented in a correspondences data store table;
providing a relational database management system in the computer system;
using the relational database management system during the identifying in the event data store an expression corresponding to the event; and
using the relational database management system during the identifying in the task data store a respective group of one or more commands corresponding to the at least one task.
-
-
15. The method of claim 1 further including:
-
providing in computer readable medium at least one event occurrence data store that can store event occurrence information;
storing in the event occurrence data store a log of event activity.
-
-
16. The method of claim 1 further including:
-
providing in computer readable medium at least one task occurrence data store;
storing in the at least one task occurrence data store a log of task activity.
-
-
17. The method of claim 1 further including:
-
providing in computer readable medium at least one task occurrence data store;
storing in the at least one task occurrence data store a log of task activity.
-
-
18. The method of claim 1 further including:
-
providing in computer readable medium a deferred task data store that can store information;
storing in the deferred task data store information corresponding to one or more deferred tasks.
-
-
19. The method of claim 1 further comprising:
providing in the task data store respective response information that respectively includes at least one command statement that invokes creation of respective new event data that respectively correspond to a respective new event and that invokes insertion of the respective new event data in the notice data store.
-
20. The method of claim 1,
wherein respective groups of one or more command statements consist of unordered command statements. -
21. The method of claim 1,
wherein respective groups of one or more command statements consist of unbranched command statements. -
22. The method of claim 1,
wherein the respective groups of one or more command statements consists of unordered, unbranched command statements. -
23. The method of claim 1,
wherein the produced evaluation result for the event includes an evaluation truth result for the event. -
24. The method of claim 1 further including:
performing the step of identifying from the task data store at least one response information that indicates a respective group of one or more command statements that correspond to the at least one identified task identifier only if the produced evaluation result for the respective event has a prescribed value.
-
25. The method of claim 1 further including:
-
performing the step of identifying fromthe correspondence data store a correspondence between the respective identified event and at least one respective task identifier only if the produced evaluation result for the respective event has a prescribed value, and performing the step of identifying from the task data store at least one response information that indicates a respective group of one or more command statements that correspond to the at least one identified task identifier only if the produced evaluation result for the respective event has a prescribed value.
-
-
26. An article of manufacture comprising a computer readable medium with computer readable program code embodied therein for directing a computer system, the computer readable code in the article of manufacture comprising:
-
an event data store that can store a plurality of respective event identifiers and respective expressions that indicate a respective corresponding predicate logic expression of condition that respectively correspond to respective events;
a task data store that can store a plurality of respective task identifiers and respective corresponding response information that indicates respective groups of one or more command statements that respectively correspond to respective tasks;
a correspondence data store that can store a plurality of correspondence between respective event identifiers and respective one or more task identifiers;
a notice data store that can store respective event data that respectively correspond to respective event identifiers;
computer readable program code causing the computer to identify from the event date store a respective predicate logic expression of condition corresponding to a respective event identifier corresponding to respective event data stored in notice data store;
computer readable program code causing the computer to evaluate the identified predicate logic expression using the respective event data so as to produce an evaluation result for the respective event;
computer readable program code causing the computer to identify in the correspondence data store a correspondence between the respective event identifier and at least one respective task identifier; and
computer readable program code causing the computer to identify from the task data store a respective group of one or more command statements that correspond to the at least one identified task identifier; and
computer readable program code causing execution of a respective command statement that corresponds to at least one identified task identifier only if the produced evaluation result for the respective event has a prescribed value. - View Dependent Claims (27, 28, 29, 30, 31, 32)
the computer readable program code causing the computer to evaluate causes an evaluation of the truth of he identified predicate logic expression of condition; - and
the computer readable program code causing the computer to identify in the correspondence data store a correspondence causes an identification of a correspondence between the event and at least one task occurs in the response to an evaluation result of true.
-
-
28. The article of manufacture of claim 26 wherein,
the computer readable program code causing the computer to evaluate causes an evaluation of the identified predicate logic expression of condition so as to produce at least one of multiple possible evaluation result values; - and
the computer readable program code causing the computer to identify in the correspondence data store a correspondence causes an indentification at least in part based upon the at least one evaluation result value.
- and
-
29. The method of claim 26 wherein,
the computer readable program code causing the computer to evaluate causes an evaluation of the truth of the identified predicate logic expression of condition; - and
the computer readable program code causing the computer to identify in the correspondence data store a correspondence causes an identification based upon the event if the evaluation result is true.
- and
-
30. The method of claim 26 wherein,
the computer readable program code causing the computer to evaluate causes an evaluation of the identified predicate logic expression of condition so as to produce at least one of multiple possible evaluation results values; - and
the computer readable program causing the computer to identify in the correspondence data store a correspondence causes identification at least in part based upon the event and the at least one evaluation result value.
- and
-
31. The method of claim 30 further including:
-
the notice data store includes an application program data store of information;
wherein the computer readable program for causing the computer to evaluate causes an evaluation of condition relative to information in the application program store.
-
-
32. The method of claim 31 further including:
computer readable program for causing the computer to implement the data processing application.
-
33. A method of implementing a confition-to-action association in response to an event detected by a computer system programmed to run a relational database management system (RDBMS) comprising:
-
providing in a computer readable medium a data structure which includes, an event data store of respective correspondences between respective event identifiers and respective predicate logic expressions of conditions;
a tasks data store of respective correspondences between respective task identifiers and respective groups of one or more command statements; and
a correspondence data store which includes respective correspondences between respective event identifiers and respective task identifiers; and
using the RDBMS to access the data structure by, accessing the event data store to identify at least one predicate logic expression of condition corresponding to the detected event;
accessing the correspondence data store to identify a correspondence between the detected event and a task identifier; and
accessing the task data store to identify a respective group of one or more comman statements corresponding to the identified task identifier;
evaluating the identified at least one predicate logic expression of condition so as to produce an evaluation result for the event; and
invoking at least one command statement from the identified group of command statements or invoking none of the command statements from the identified group of command statements depending upon the produced evaluation result for the event. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42, 43)
evaluating involves evaluating the truth of the at least one predicate logic expression of condition; - and
accessing the correspondence data store to identify response information corresponding to the identified task occurs in response to an evaluation result of true.
-
-
35. The system of claim 33 wherein,
evaluating involves evaluating the at least one predicate logic expression of condition to produce at least one of multiple possible evaluation result values; - and
accessing the correspondence data store to identify response information corresponding to the identified task involves accessing at least in part based upon the at least one evaluation result value.
- and
-
36. The method of claim 33 wherein,
accessing the correspondence data store to identify response information corresponding to the identified task involves accessing based upon the event if the evaluation result is true. -
37. The method of claim 33 wherein,
evaluating involves evaluating the predicate logic expression of condition to produce at least one of multiple possible evaluation result values; - and
accessing the correspondence data store to identify response information corresponding to the identified task involves accessing at least in part based upon the event and the at least one evaluation result value.
- and
-
38. The method of claim 33 further including:
-
providing in a computer readable medium an application program data store of information;
wherein evaluating involves evaluating the expression of condition relative to information in the application program store.
-
-
39. The method of claim 38 further including:
providing in computer readable medium an application program that uses information in the application program data store.
-
40. The method of claim 33 wherein at least one command statement can invoke a computer program.
-
41. The method of claim 33 wherein at least one command statement can invoke a relational database management system.
-
42. The method of claim 33 wherein,
at least one command statement can invoke a relational database management system or can invoke a computer program. -
43. The method of claim 33 wherein,
the event data store is implemented in a event data store table; -
the task data store is implemented in a task data store table; and
the correspondence data store is implemented in a correspondence data store table.
-
-
44. A computer system comprising:
-
an event data store of respective correspondences between respective event identifiers and respective predicate logic expressions of condition;
a task data store of respective correspondences between respective task identifiers and respective groups of one or more command statements;
a correspondence data store of respective correspondence between respective event identifiers and respective task identifiers;
means for detecting an event;
means for identifying from the event data store a respective predicate logic expression of condition corresponding to the event;
means for evaluating the identified predicate logic expression of conditions so as to produce an evaluation result for the event; and
means for identifying from the correspondence data store a correspondence between the event and at least one task identifier;
means for identifying from the task data store a respective group of one or more command statements corresponding to the at least one task; and
means for causing execution of a respective command statement that corresponds to the at least one identified task identifier only if the produced evaluation result or the respective event has a prescribed value.- View Dependent Claims (45, 46, 47, 48, 49, 50, 51, 52, 53, 54)
said means for evaluating evaluates the truth of the identified predicate logic expression of condition; - and
said means for identifying in the correspondence data store a correspondence between the event and at least one task identifies in response to an evaluation result of true.
-
-
46. The system of claim 44 wherein,
said means for evaluating evaluates the predicate logic expression of condition to produce at least one of multiple possible evaluation result values; - and
said means for identifying in the correspondence data store a correspondence between the event and at least one task involves identifies at least in part based upon the at least one evaluation result value.
- and
-
47. The method of claim 44 wherein,
said means for evaluating evaluates the truth of the identified predicate logic expression of condition; - and
said means for identifying in the correspondence data store a correspondence between the event and at least one task involves identifies based upon the event if the evaluation result is true.
- and
-
48. The method of claim 44 wherein,
said means for evaluating evaluates the predicate logic expression of condition to produce at least one of multiple possible evaluation result values; - and
said means for identifying in the correspondence data store a correspondence between the event and at least one task identifies at least in part based upon the event and the at least one evaluation result value.
- and
-
49. The method of claim 44 further including:
-
an application program data store of information;
wherein said means for evaluating evaluates the expression of condition relative to information in the application program store.
-
-
50. The method of claim 44 further including:
providing in computer readable medium an application program that uses information in the application program data store.
-
51. The method of claim 44 wherein at least one command statement can invoke a computer program.
-
52. The method of claim 44 wherein at least one command statement can invoke a relational database management system.
-
53. The method of claim 44 wherein,
at least one command statement can invoke a relational database management system or can invoke a computer program. -
54. The method of claim 44 wherein,
the event data store is implemented in a event data store table; -
the task data store is implemented in a task data store table; and
the correspondence data store is implemented in a correspondence data store table.
-
-
55. A method of processing information in a computer system that includes memory media encoded with a relational database management system (RDBMS) comprising:
-
providing in computer readable medium at least one event type table which can store respective correspondences between respective event type identifiers and respective predicate logic expressions of condition;
providing in computer readable medium at least one task type table that can store respective correspondences between respective task type identifiers and respective groups of one or more command statements;
providing in computer readable medium at least one correspondences table that can store a plurality of correspondences between respective event type identifiers and respective task type identifiers;
providing in computer readable medium a notice table that includes a notice data store at least one record indicative of an event that may trigger processing;
providing in computer readable medium at least one event occurrence table that corresponds to an event type and that can maintain a log of events;
providing in computer readable medium at least one task occurrence table that can maintain a log of tasks;
receiving a notice record in the notice data store table indicating an occurrence of an event;
using the RDBMS to search the event type table to identify an event type record that corresponds to the event indicated in the notice table;
specializing information from the identified event type record so as to create an event occurrence record and inserting the created event occurrence record in an event occurrence table corresponding to the identified event type;
evaluating information in the event occurrence record using a respective predicate logic expression of condition corresponding to the identified event type so as to produce a resulting value;
using the RDBMS to search the correspondence table to identify at least one task type that corresponds to the identified event type;
using the RDBMS to search the task type table to identify at least one task type record that corresponds to the at least one identified task type;
specializing information from the at least one identified task type record so as to create at least one task occurrence record and inserting the created task occurrence record in a task occurrence table corresponding to the at least one identified task type;
retrieving information from the at least one task occurrence record of the at least one task occurrence table; and
using at least one respective command statement from a respective group of one or more command statements corresponding to the identified task type to execute a response to the identified event only if the produced evaluation result has a prescribed value. - View Dependent Claims (56, 57, 58)
performing the steps of, using the RDBMS to search the correspondences table to identify at least one task type that corresponds to the identified event type;
using the RDBMS to search the task type table to identify at least one tank type record that corresponds to the at least one identified task type;
specializing information from the at least one identified task type record so as to create at least one task occurrence record and inserting the created task occurrence record in a task occurrence table corresponding to the at least one identified task type;
retrieving information from the at least one task occurrence record of the at least one task occurrence table;
only if the produced evaluation result for the respective event has a prescribed value.
-
Specification