Outer Rim Archives
Archives · 2023 · 20230024024

Application (pre-grant publication)

FULLY TRACEABLE AND INTERMEDIATELY DETERMINISTIC RULE CONFIGURATION AND ASSESSMENT FRAMEWORK

Number
20230024024
Published
2023-01-26
Filed
2021-07-22
Assignee
Disney Enterprises, Inc.
Inventors
Huang; Edward et al.
CPC
G06F11/3632; G06F11/3636; G06F9/544; G06N5/01; G06N5/022; G06N5/025
Verdict
Set aside generic rules-engine framework, IT/business
Source
Google Patents · FreePatentsOnline

Abstract

A method includes assessing an input in a buffer against a rule in a first node of a rule tree to determine that an action should be performed and updating the buffer with results of performing the action. The method also includes inserting an indication of the input, the rule, and the results of performing the action into a tracker log and passing the updated buffer to a second node in the rule tree in response to determining that the first node points to the second node.

Background

BACKGROUND

Many systems use rule engines to automatically determine actions to perform in response to an existing condition or dataset. A conventional rule engine determines the rules in a rule bank that are applicable to the existing condition or dataset. These rules are retrieved from the rule bank and then applied in any order to determine actions that should be performed. Performing an action, however, may cause the condition or dataset to change (e.g., data may be added to or removed from the dataset). If the condition or dataset changes, then the rule engine needs to determine the rules in the rule bank that apply to the changed condition or dataset, effectively starting the analysis over. Because the rules may be applied in any order, the condition or dataset may change differently between different executions, which may lead to the rule engine producing inconsistent results for the same condition or dataset. Additionally, because the order in which the rules are applied is not deterministic, it may not be possible to replay or troubleshoot the application of the rules, which causes errors to remain undiagnosed and unresolved.

For example, an email application may store user-created rules to filter emails. These rules may specify that any number of actions (e.g., delete, move, highlight, reply, etc.) should be performed when an email satisfies certain conditions. If a user initiates a filtering process for emails in the user's Inbox, the email application

Claims

1. A method comprising: assessing an input in a buffer against a rule in a first node of a rule tree to determine that an action should be performed; updating the buffer with results of performing the action; inserting an indication of the input, the rule, and the results of performing the action into a tracker log; and passing the updated buffer to a second node in the rule tree in response to determining that the first node points to the second node. || 9. An apparatus comprising: a memory; and a hardware processor communicatively coupled to the memory, the hardware processor configured to: assess an input in a buffer against a rule in a first node of a rule tree to determine that an action should be performed; update the buffer with results of performing the action; insert an indication of the input, the rule, and the results of performing the action into a tracker log; and pass the updated buffer to a second node in the rule tree in response to determining that the first node points to the second node. || 17. A method comprising: receiving a buffer and a key, wherein the buffer comprises an input; passing the buffer to a first node in a rule tree identified by the key; assessing the input against a rule in the first node to determine that an action should be performed; updating the buffer with results of performing the action; and passing the updated buffer to a second node in the rule tree in response to determining that the first node points to the second node.