IP Library Granted Patent US 8,117,190
Granted Patent B2
US 8,117,190 · App. 12/268,944 · Granted Feb 14, 2012

Method of pattern searching

Assignees: AT&T Intellectual Property II, L.P.; The Regents of the University of Michigan
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,117,190
App. No.
12/268,944
Granted
Feb 14, 2012
Kind
B2
Abstract

Structural join mechanisms provide efficient query pattern matching. In one embodiment, tree-merge mechanisms are provided. In another embodiment, stack-tree mechanisms are provided.

Claims (37)

1. A method of query pattern matching, comprising:

(a) generating a list of potential ancestors and a list of potential descendants;

(b) sorting the list of potential ancestors and the list of potential descendants in an order of a first attribute in a database;

(c) skipping over unmatchable nodes in the list of potential descendants;

(d) determining whether a second attribute of a current node in the potential descendant list is less than a second attribute of a current node in the potential ancestor list;

(e) determining whether a first attribute of the current node of the potential ancestor list is less than a first attribute of the current node of the potential descendant list, and whether a level number of the current node of the potential descendant list is equal to a level number plus one of the current node of the potential ancestor list; and

(f) appending to an output join list, based upon a result from (e), a node pair comprising the current node of the potential ancestor list and the current node of the potential descendant list.

2. The method of claim 1 , wherein the first attribute corresponds to a start position.

3. The method of claim 1 , wherein the second attribute corresponds to an end position.

4. The method of claim 1 , further comprising:

matching the query pattern against an extensible markup language database.

5. The method of claim 1 , further comprising:

sorting the output join list in an ancestor/parent order.

6. A method of query pattern matching, comprising:

(a) generating a list of potential ancestors and a list of potential descendants;

(b) sorting the list of potential ancestors and the list of potential descendants in an order of a start position attribute in a database;

(c) skipping over unmatchable nodes in the list of potential ancestors;

(d) determining whether a start position of a current node in the potential ancestor list is less than a start position of a current node in the potential descendant list;

(e) determining whether an end position of the current node of the potential descendant list is less than an end position of the current node of the potential ancestor list, and whether a level number of the current node of the potential descendant list is equal to a level number plus one of the current node of the potential ancestor list; and

(f) appending to an output join list, based upon a result from (e), a node pair comprising the current node of the potential ancestor list and the current node of the potential descendant list.

7. The method of claim 6 , further comprising:

matching the query pattern in an extensible markup language document.

8. The method of claim 6 , further comprising:

sorting the output join list in an descendant/child order.

9. A system for query pattern matching, comprising:

a processor configured to generate a list of potential ancestors and a list of potential descendants;

sort the list of potential ancestors and the list of potential descendants in an order of a first attribute in a database;

skip over unmatchable nodes in the list of potential descendants;

determine whether a second attribute of a current node in the potential descendant list is less than a second attribute of a current node in the potential ancestor list;

determine whether a first attribute of the current node of the potential ancestor list is less than a first attribute of the current node of the potential descendant list, and whether a level number of the current node of the potential descendant list is equal to a level number plus one of the current node of the potential ancestor list; and

append to an output join list, a node pair comprising the current node of the potential ancestor list and the current node of the potential descendant list.

10. The system of claim 9 , wherein the first attribute corresponds to a start position.

11. The system of claim 9 , wherein the second attribute corresponds to an end position.

12. The system of claim 9 , wherein the processor is further configured to:

match the query pattern against an extensible markup language database.

13. The system of claim 9 , wherein the processor is further configured to:

sort the output join list in an ancestor/parent order.

Assignments (1)
CONFIRMATORY LICENSE Recorded Jun 29, 2015
From: UNIVERSITY OF MICHIGAN
To: NATIONAL SCIENCE FOUNDATION
Reel/Frame 036033/0828 →
Continuity (3)
Continuation 10748832 · Dec 30, 2003
Provisional Application 60450222 · Feb 25, 2003
Related Publication 20090138470A1 · May 28, 2009