← Back to Patent Explorer
US20030212657A1 Expired / Lapsed US ⏱️ 0.0 years remaining

Extensible rules engine in a database management system

Assignee: Oracle International Corp
•
Filing: 2003-04-17
•
Granted: —
•
Expires: 2023-04-17
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An extensible rules engine that uses database technology provides a rules evaluation service for applications external to the database server or database management system. Applications are able to utilize the rules engine to provide alternative behaviors based on information against which specified conditions are evaluated. A framework is provided for specifying data definitions that can be referenced by user-defined rules, through creation and use of an evaluation context. Application-specific data types can be defined by specifying data tables and/or variables that can be referenced by rules created for evaluation against data that is associated with the evaluation context. The data against which rules are evaluated can be provided as an in-memory object. A security model is provided in which the privilege to create rules according to a particular evaluation context is controlled by one privilege, whereas the privilege to access underlying tables or variables is controlled by another privilege.

Inventors

  • 👤 Sanjay Kaluskar
  • 👤 Wei Wang
  • 👤 Dieter Gawlick
  • 👤 James Stamos

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-06 01:47
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/21; G06F16/80; G06F16/84; G06F16/86; G06F40/00; G06F40/10; G06F40/12; G06F40/137; Y; Y10; Y10S; Y10S707/00; Y10S707/953; Y10S707/961; Y10S707/99931; Y10S707/99933; Y10S707/99941; Y10S707/99943

Claims Analysis

Total Claims: 29
Claim 1
Independent Claim 75 words
1 . A method for evaluating rules in a database system, the method comprising the steps of: receiving an evaluation context that specifies what can be referenced in a corresponding rule condition; receiving a set of one or more rules, wherein each rule includes a rule condition; and evaluating one or more rules from the set of rules against information that is specified in the evaluation context to determine whether a rule condition is satisfied.
Claim 2
Dependent Claim 75 words
1 . A method for evaluating rules in a database system, the method comprising the steps of: receiving an evaluation context that specifies what can be referenced in a corresponding rule condition; receiving a set of one or more rules, wherein each rule includes a rule condition; and evaluating one or more rules from the set of rules against information that is specified in the evaluation context to determine whether a rule condition is satisfied.
Claim 3
Dependent Claim 40 words
2 . The method of claim 1 , wherein the step of receiving an evaluation context includes receiving an evaluation context that specifies a list of one or more data tables that can be referenced in a corresponding rule condition.
Claim 4
Dependent Claim 36 words
3 . The method of claim 1 , wherein the step of receiving an evaluation context includes receiving an evaluation context that defines one or more variables that can be referenced in a corresponding rule condition.
Claim 5
Dependent Claim 46 words
4 . The method of claim 1 , wherein the step of receiving an evaluation context includes receiving an evaluation context that specifies a list of one or more data tables and defines one or more variables that can be referenced in a corresponding rule condition.
Claim 6
Dependent Claim 81 words
5 . The method of claim 1 , wherein the step of receiving an evaluation context includes receiving an evaluation context that specifies a list of one or more data tables that can be referenced in a corresponding rule condition; and the method further comprises the steps of: controlling management of the evaluation context with a first security privilege; and controlling access to the one or more tables with a second security privilege that is different than the first security privilege.
Claim 7
Dependent Claim 41 words
6 . The method of claim 1 , wherein the steps of receiving include receiving from a software application; wherein the step of evaluating is performed by a database server; and wherein the software application is different than the database server.
Claim 8
Dependent Claim 28 words
7 . The method of claim 6 , further comprising the step of: receiving, from the software application, the information against which the set of rules is evaluated.
Claim 9
Dependent Claim 172 words
8 . The method of claim 1 , wherein the step of receiving a set of rules includes receiving a rule that includes a first rule condition and a second rule condition that is disjunctively related to the first rule condition and wherein the first rule condition includes a third rule condition and a fourth rule condition that is conjunctively related to the third rule condition; wherein the information that the one or more rules are evaluated against includes third information that is associated with the third condition and does not include fourth information that is associated with the fourth condition; and wherein the step of evaluating includes evaluating the third condition against the third information to determine whether the third condition is satisfied by the third information; if the third condition is not satisfied by the third information, then returning an indication that the first condition is not satisfied; and if the third condition is satisfied by the third information, then returning an indication that the first condition may be satisfied.
Claim 10
Dependent Claim 17 words
9 . The method of claim 8 , wherein the third condition is a simple rule condition.
Claim 11
Dependent Claim 138 words
10 . The method of claim 8 , wherein: if at least one indication is returned that the first condition is satisfied or that the second condition is satisfied, then returning an indication that the rule is satisfied; if no indication is returned that the first condition is satisfied or that the second condition is satisfied and if at least one indication is returned that the first condition may be satisfied or that the second condition may be satisfied, then returning an indication that the rule may be satisfied; and if no indication is returned that the first condition is satisfied or that the second condition is satisfied and no indication is returned that the first condition may be satisfied or that the second condition may be satisfied, then returning an indication that the rule is not satisfied.
Claim 12
Dependent Claim 32 words
11 . The method of claim 1 , wherein the step of receiving an evaluation context includes receiving an evaluation context that is associated with a subset of the set of rules.
Claim 13
Dependent Claim 32 words
12 . The method of claim 1 , wherein the step of receiving an evaluation context includes receiving an evaluation context that is associated with each rule of the set of rules.
Claim 14
Dependent Claim 46 words
13 . The method of claim 1 , wherein the step of receiving an evaluation context and the step of receiving the set of rules are performed by a single act of receiving a message that includes both the evaluation context and the set of rules.
Claim 15
Dependent Claim 35 words
14 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 1 .
Claim 16
Dependent Claim 35 words
15 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 2 .
Claim 17
Dependent Claim 35 words
16 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 3 .
Claim 18
Dependent Claim 35 words
17 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 4 .
Claim 19
Dependent Claim 35 words
18 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 5 .
Claim 20
Dependent Claim 35 words
19 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 6 .
Claim 21
Dependent Claim 35 words
20 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 7 .
Claim 22
Dependent Claim 35 words
21 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 8 .
Claim 23
Dependent Claim 35 words
22 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 9 .
Claim 24
Dependent Claim 35 words
23 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 10 .
Claim 25
Dependent Claim 35 words
24 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 11 .
Claim 26
Dependent Claim 35 words
25 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 12 .
Claim 27
Dependent Claim 35 words
26 . A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 13 .
Claim 28
Dependent Claim 78 words
27 . An apparatus for evaluating rules in a database system, the apparatus comprising: means for receiving an evaluation context that specifies what can be referenced in a corresponding rule condition; means for receiving a set of one or more rules, wherein each rule includes a rule condition; and means for evaluating one or more rules from the set of rules against information that is specified in the evaluation context to determine whether a rule condition is satisfied.
Claim 29
Dependent Claim 78 words
27 . An apparatus for evaluating rules in a database system, the apparatus comprising: means for receiving an evaluation context that specifies what can be referenced in a corresponding rule condition; means for receiving a set of one or more rules, wherein each rule includes a rule condition; and means for evaluating one or more rules from the set of rules against information that is specified in the evaluation context to determine whether a rule condition is satisfied.

References Cited (Backward Citations)

US47270A Cited
US181543A Cited
US193575A Cited
US236834A Cited
US32475A Cited
US4815030A Cited
US5072405A Cited
US20020073019A1 Cited
US5802253A Cited
US5283856A Cited
US5627764A Cited
US5446885A Cited
US5640561A Cited
US5970244A Cited
US5870552A Cited
US5680602A Cited
US5692125A Cited
US5873084A Cited
US6021443A Cited
US6757710B2 Cited
US6401090B1 Cited
US5995980A Cited
US5852818A Cited
US5984786A Cited
US20030135523A1 Cited
US6067540A Cited
US5940839A Cited
US5873075A Cited
US6038601A Cited
US5999931A Cited
US6490574B1 Cited
US6122639A Cited
US6073129A Cited
US6182086B1 Cited
US6560592B1 Cited
US6247017B1 Cited
US6304882B1 Cited
US6466950B1 Cited
US6185555B1 Cited
US6285997B1 Cited
US6738975B1 Cited
US6442568B1 Cited
US6473772B1 Cited
US6826579B1 Cited
US6539381B1 Cited
US6728879B1 Cited
US6502093B1 Cited
US6405191B1 Cited
US6604093B1 Cited
US20030120642A1 Cited
US6850893B2 Cited
US6604100B1 Cited
US7080382B2 Cited
US6427146B1 Cited
US6681383B1 Cited
US20020152149A1 Cited
US6925476B1 Cited
US20020138582A1 Cited
US20030061061A1 Cited
US20030046421A1 Cited
US20020120734A1 Cited
US20020091685A1 Cited
US20020116457A1 Cited
US20040133591A1 Cited
US20020133507A1 Cited
US6697791B2 Cited
US6868413B1 Cited
US7003531B2 Cited
US6901410B2 Cited
US7089228B2 Cited
US20030212670A1 Cited
US6691155B2 Cited
US6917946B2 Cited
US7149738B2 Cited
US20050021567A1 Cited
US20050010545A1 Cited
US20050125371A1 Cited
US20050193024A1 Cited
US20050203940A1 Cited
US20050222978A1 Cited

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag