IP Library Granted Patent US 8,595,264
Granted Patent B2
US 8,595,264 · App. 13/174,736 · Granted Nov 26, 2013

Event processing based on meta-relationship definition

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,595,264
App. No.
13/174,736
Granted
Nov 26, 2013
Kind
B2
Abstract

According to an example implementation, a non-transitory computer-readable storage medium is provided that includes computer-readable instructions stored thereon that, when executed, are configured to cause a processor to at least: store a relationship definition including one or more selectors identifying events participating in the relationship and one or more constraints between the events, at least one of the constraints expressed in terms of one or more relationship parameters. The instructions further cause the processor to receive one or more events, evaluate the received events against the one or more selectors, create a candidate relationship when the relationship parameters have been defined based on receiving one or more events that match one or more of the selectors, and convert the candidate relationship to a relationship instance when a minimum number of events matching each of the selectors are received.

Claims (39)

1. A non-transitory computer-readable storage medium comprising computer-readable instructions stored thereon that, when executed, are configured to cause a processor to at least:

store a relationship definition including one or more selectors identifying events participating in the relationship and one or more constraints between the events, at least one of the constraints expressed in terms of one or more relationship parameters;

receive one or more events;

evaluate the received events against the one or more selectors;

create a candidate relationship when the relationship parameters have been defined based on receiving one or more events that match a minimal deterministic set of the selectors;

convert the candidate relationship to a relationship instance when a minimum number of events matching each of the selectors are-received;

add an event to an existing relationship instance if the event matches the constraints of the existing relationship instance; and

otherwise, add the event to an existing candidate relationship if the event matches the constraints of the candidate relationship.

2. The computer-readable storage medium of claim 1 wherein the instructions are further configured to cause the processor to provide a notification of an existence of the relationship instance.

3. The computer-readable storage medium of claim 1 wherein the instructions being configured to cause the processor to evaluate comprise instructions that are configured to cause the processor to compare each of the received events to the one or more selectors to determine if each of the received events meets or matches the constraints between the events.

4. The computer-readable storage medium of claim 1 wherein the constraints between events comprise a time constraint between events.

5. The computer-readable storage medium of claim 1 wherein the instructions are further configured to cause the processor to add additional events to the relationship instance that match the selectors, up to a maximum number of events for each selector.

6. The computer-readable storage medium of claim 1 wherein the relationship definition includes a description of the relationship, wherein the relationship description includes values of the parameters for the relationship instance.

7. A computer implemented method comprising:

storing a relationship definition including one or more selectors identifying events participating in the relationship and one or more constraints between the events, at least one of the constraints expressed in terms of one or more relationship parameters;

receiving one or more events;

evaluating the received events against the one or more selectors;

creating a candidate relationship when the relationship parameters have been defined based on receiving one or more events that match a minimal deterministic set of the selectors; and

converting the candidate relationship to a relationship instance when a minimum number of events matching each of the selectors are received;

adding an event to an existing relationship instance if the event matches the constraints of the existing relationship instance; and

otherwise, adding the event to an existing candidate relationship if the event matches the constraints of the candidate relationship.

8. The computer-implemented method of claim 7 and further comprising providing a notification of an existence of the relationship instance.

9. The computer-implemented method of claim 7 wherein the evaluating comprises comparing each of the received events to the one or more selectors to determine if each of the received events meets or matches the constraints between the events.

10. The computer-implemented method of claim 7 wherein the constraints between events comprise a time constraint between events.

11. The computer-implemented method of claim 7 wherein the computer-implemented method further comprises:

adding additional events to the candidate relationship that match the selectors, up to a maximum number of events for each selector.

12. The computer-implemented method of claim 7 wherein the method further comprises adding one or more additional events to the relationship instance that match the selectors, up to a maximum number of events for each selector.

13. A computer system including instructions recorded on a computer-readable storage medium and readable by at least one processor the system comprising:

meta-relationship logic configured to cause the at least one processor to store a relationship definition including one or more selectors identifying events participating in the relationship and one or more constraints between the events, at least one of the constraints expressed in terms of one or more relationship parameters;

an event receiver configured to receive one or more events;

an event processing logic configured to evaluate or compare the received events against the one or more selectors;

a relationship manager configured to cause the at least one processor to create a candidate relationship when the relationship parameters have been defined based on receiving one or more events that match a minimal deterministic set of the selectors;

wherein the relationship manager is further configured to cause the at least one processor to convert the candidate relationship to a relationship instance when a minimum number of events matching each of the selectors have been received; and

wherein the relationship manager is further configured to cause the at least one processor to:

add an event to an existing relationship instance if the event matches the constraints of the existing relationship instance; and

otherwise, add the event to an existing candidate relationship if the event matches the constraints of the candidate relationship.

14. The computer system of claim 13 wherein the constraints between events comprise a time constraint between events.

15. The computer system of claim 13 and further comprising logic configured to cause the at least one processor to provide a notification of an existence of the relationship instance.

16. The computer system of claim 13 and further comprising logic configured to cause the at least one processor to provide a notification of an existence of the candidate relationship.

Assignments (14)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2025
From: BMC SOFTWARE, INC.
To: BMC HELIX, INC.
Reel/Frame 070442/0197 →
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
RELEASE OF PATENTS Recorded Oct 5, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.; BMC ACQUISITION L.L.C.
Reel/Frame 047198/0468 →
SECURITY INTEREST Recorded Oct 2, 2018
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0744 →
SECURITY AGREEMENT Recorded Sep 11, 2013
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 031204/0225 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2012
From: STEVENNE, JEAN-MARC
To: BMC SOFTWARE, INC.
Reel/Frame 027677/0439 →