Patent US6910033B2 successfully refreshed from Google Patents.
US6910033B2
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method for storing Boolean functions to enable evaluation, modification, reuse, and delivery over a network
Assignee: PreCache Inc
•
Filing: 2002-07-19
•
Granted: 2005-06-21
•
Expires: 2022-07-19
Abstract
Abstract Data structures for storing subscription predicates for transmission in a publish-subscribe network. Subscriptions include Boolean-valued predicates defining content desired by a subscriber. An agent application converts the predicates into a suitable form for storing them in a common data structure. The predicates are used to generate filters to encapsulate the subscriptions, and the filters are specified in the data structure in addition to the Boolean relationships of the predicates. Routers in a network core use the data structure for content-based routing, which involves applying attributes in received packets to the filters.
Inventors
- 👤 David S. Rosenblum
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-30 20:58
CPC Classifications
H; H04; H04L; H04L67/00; H04L67/50; H04L67/55; H04L67/60; H04L67/63; Y; Y10; Y10S; Y10S707/00; Y10S707/953; Y10S707/954; Y10S707/956; Y10S707/959; Y10S707/99931; Y10S707/99933; Y10S707/99936; Y10S707/99941; Y10S707/99944; Y10S707/99945
Claims Analysis
Total Claims: 20
Claim 1
Independent Claim
114 words
A method for storing subscriptions for a publish-subscribe network, Comprising: specifying a structure to store a subscription in the network; dividing the structure into a plurality of sub-expressions, wherein the dividing step includes: using the sub-expressions to store the subscription in a disjunctive normal form, and simplifying AND expressions in the disjunctive normal form to contain range filters and membership tests in the sub-expressions; using the sub-expressions to collectively specify a particular subscription; and associating a Boolean-valued predicate with at least one of the sub-expressions for the particular subscription, wherein the Boolean valued predicate provides an indication of a notification element for the particular subscription in order to provide content-based routing for the subscription.
Claim 2
Independent Claim
114 words
A method for storing subscriptions for a publish-subscribe network, Comprising: specifying a structure to store a subscription in the network; dividing the structure into a plurality of sub-expressions, wherein the dividing step includes: using the sub-expressions to store the subscription in a disjunctive normal form, and simplifying AND expressions in the disjunctive normal form to contain range filters and membership tests in the sub-expressions; using the sub-expressions to collectively specify a particular subscription; and associating a Boolean-valued predicate with at least one of the sub-expressions for the particular subscription, wherein the Boolean valued predicate provides an indication of a notification element for the particular subscription in order to provide content-based routing for the subscription.
Claim 3
Dependent Claim
17 words
The method of claim 1 wherein the using step includes using one particular sub-expression in multiple subscriptions.
Claim 4
Dependent Claim
24 words
The method of claim 1 wherein the associating step includes associating a disjunction, conjunction, or negation predicate with the sub-expression for the particular subscription.
Claim 5
Dependent Claim
23 words
The method of claim 1 , further including specifying a constant value for at least one of the sub-expressions for the particular subscription.
Claim 6
Dependent Claim
21 words
The method of claim 1 , further including specifying a relationship among a plurality of notification elements for the particular subscription.
Claim 7
Dependent Claim
21 words
The method of claim 1 wherein the specifying step includes specifying an hierarchical structure having multiple levels for specifying the sub-expressions.
Claim 8
Dependent Claim
22 words
The method of claim 1 wherein the dividing step includes translating not-equal parameters in the subscription to positive form in the sub-expressions.
Claim 9
Dependent Claim
18 words
The method of claim 1 , further including: receiving the subscription; and creating the sub-expressions from the subscription.
Claim 10
Dependent Claim
19 words
The method of claim 1 , further including parsing the sub-expressions in order to detect errors in the subscription.
Claim 11
Independent Claim
136 words
An apparatus for storing subscriptions for a publish-subscribe network, comprising: a specify module for specifying a structure to store a subscription in the network; a divide module for dividing the structure into a plurality of sub-expressions, wherein the divide module includes: a module for using the sub-expressions to store the subscription in a disjunctive normal form: and a module for simplying AND expressions in the disjunctive normal form to contain range filters and membership tests in the sub-expressions; a use module for using the sub-expressions to collectively specify a particular subscription; and an associate module for associating a Boolean-valued predicate with at least one of the sub-expressions for the particular subscription, wherein the Boolean valued predicate provides an indication of a notification element for the particular subscription in order to provide content-based routing for the subscription.
Claim 12
Independent Claim
136 words
An apparatus for storing subscriptions for a publish-subscribe network, comprising: a specify module for specifying a structure to store a subscription in the network; a divide module for dividing the structure into a plurality of sub-expressions, wherein the divide module includes: a module for using the sub-expressions to store the subscription in a disjunctive normal form: and a module for simplying AND expressions in the disjunctive normal form to contain range filters and membership tests in the sub-expressions; a use module for using the sub-expressions to collectively specify a particular subscription; and an associate module for associating a Boolean-valued predicate with at least one of the sub-expressions for the particular subscription, wherein the Boolean valued predicate provides an indication of a notification element for the particular subscription in order to provide content-based routing for the subscription.
Claim 13
Dependent Claim
20 words
The apparatus of claim 10 wherein the use module includes a module for using one particular sub-expression in multiple subscriptions.
Claim 14
Dependent Claim
27 words
The apparatus of claim 10 wherein the associate module includes a module for associating a disjunction, conjunction, or negation predicate with the sub-expression for the particular subscription.
Claim 15
Dependent Claim
26 words
The apparatus of claim 10 , further including a module for specifying a constant value for at least one of the sub-expressions for the particular subscription.
Claim 16
Dependent Claim
24 words
The apparatus of claim 10 , further including a module for specifying a relationship among a plurality of notification elements for the particular subscription.
Claim 17
Dependent Claim
24 words
The apparatus of claim 10 wherein the specify module includes a module for specifying an hierarchical structure having multiple levels for specifying the sub-expressions.
Claim 18
Dependent Claim
25 words
The apparatus of claim 10 wherein the divide module includes a module for translating not-equal parameters in the subscription to positive form in the sub-expressions.
Claim 19
Dependent Claim
24 words
The apparatus of claim 10 , further including: a module for receiving the subscription; and a module for creating the sub-expressions from the subscription.
Claim 20
Dependent Claim
22 words
The apparatus of claim 10 , further including a module for parsing the sub-expressions in order to detect errors in the subscription.
References Cited (Backward Citations)
US5742762A
Cited
US5793966A
Cited
US5758337A
Cited
US5796952A
Cited
US6044372A
Cited
US6182143B1
Cited
US6202093B1
Cited
US6298455B1
Cited
US6523068B1
Cited
US6643682B1
Cited
US6321267B1
Cited
US6728715B1
Cited
US20020087881A1
Cited
US20020162025A1
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2008-06-20 | 2008-12-20 | 2009-06-21 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2012-06-20 | 2012-12-20 | 2013-06-21 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2016-06-20 | 2016-12-20 | 2017-06-21 | $7700.00 | Window Closed / Lapsed |