Polish Notation Event Rules for Stack-Based Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Managing and processing large numbers of individual event-processing rules for customers in an event-processing environment becomes complex and performance-intensive, especially when flexibility in operators and logical expressions is required, leading to a need for thousands of rules or parameterized expressions.
Innovation Solution
Implementing generalized event-processing rules in Polish notation, allowing customers to customize rules using a stack-based processing system, which reduces memory and processing time by representing hundreds of thousands of rules with a few general rules and storing them in a portable format.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If individual event-processing rules are created for each customer, then customization flexibility is improved, but the number of rules increases to hundreds of thousands making management difficult and performance penalties significant
Solution Approach 1:
The patent creates a universal rule template that can serve multiple customers with different parameters. Instead of individual rules for each customer, a single parameterized rule structure handles all customers by substituting customer-specific values (account number, threshold amounts, notification preferences) into the same rule framework, reducing hundreds of thousands of rules to a manageable set of templates.
Solution Approach 2:
The patent transforms fixed individual rules into parameterized rules where customer-specific values are stored as variables. The rule structure remains constant while parameters (account balance thresholds, transaction amounts, notification methods) are changed per customer, allowing flexible customization without creating new rules for each customer scenario.
2Device complexity
If parameterized rules are used to reduce the number of rules, then rule management complexity is reduced, but processing speed decreases due to the need to substitute parameters and evaluate complex expressions
Solution Approach 1:
The patent pre-compiles parameterized rules into an optimized intermediate representation during a compilation phase, before runtime execution. This preliminary action transforms the parameterized rule structure into a form that enables faster runtime evaluation, separating the rule definition phase from the rule execution phase to optimize both management and processing speed.
Solution Approach 2:
The patent extracts parameter substitution and expression evaluation into separate processing stages. By isolating the parameter matching logic from the rule evaluation logic, the system can efficiently match customer parameters to rule templates and then execute the simplified rule evaluation, improving overall processing speed.
3Adaptability or versatility
If true flexibility of operators and logical expressions is allowed, then rule customization capability is improved, but the number of rules required increases significantly to cover all possible cases
Solution Approach 1:
The patent implements a universal set of operator templates that handle multiple comparison operations (=, !=, >, <, >=, <=) and logical expressions (AND, OR, NOT) within a single rule framework. Instead of creating separate rules for each operator combination, the system uses parameterized operator expressions that can represent any combination of conditions, reducing the rule quantity while maintaining full operational flexibility.
Data Source
AI summary
A method and system are provided for providing event-processing rules in an event-processing environment. The method includes providing at least one generalised event-processing rule to a customer, receiving customer input of rule customization to produce a customized rule, and storing the customized rule in Polish notation for processing using stack-based processing. The method also includes receiving notification of an event for a customer, retrieving a customized rule relating to the customer, and processing the customized rule using stack-based processing.


