IP Library Granted Patent US 7,818,326
Granted Patent B2
US 7,818,326 · App. 11/218,167 · Granted Oct 19, 2010

System and method for word indexing in a capture system and querying thereof

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 7,818,326
App. No.
11/218,167
Granted
Oct 19, 2010
Kind
B2
Abstract

Searching of objects captured by a capture system can be improved by eliminating irrelevant objects from a query. In one embodiment, the present invention includes receiving such a query for objects captured by a capture system, the query including at least one search term. This search term is then hashed to a term bit position using a hash function. Then objects can be eliminated if, in a word index associated with the object, the term bit position is not set.

Claims (48)

1. A method to be performed by a processor in an electronic environment, comprising:

receiving a query for an object captured by a capture system, the query including at least one search term, wherein a content type of the object is determined and the content type is positioned in a content field of a tag associated with the object;

hashing the at least one search term to a term bit position using a hash function; and

eliminating at least one other object from the query using a word index associated with the at least one other object, the word index comprising a plurality of bits, if a bit in the term bit position is not set, wherein eliminating at least one other object from the query comprises performing a search over a tag database containing tags associated with the captured objects.

2. The method of claim 1 , further comprising retrieving at least one object, wherein a second word index associated with the retrieved object included a set bit in the term bit position.

3. The method of claim 1 , wherein each tag in the tag database comprises an index field, the index field including a plurality of bits, wherein at least one of the bits is set.

4. The method of claim 3 , wherein the at least one set bit has a value of “1”.

5. A method to be performed by a processor in an electronic environment, the method comprising:

capturing an object being transmitted over a network, wherein a content type of the object is determined and the content type is positioned in a content field of a tag associated with the object;

extracting text contained in the captured object;

generating a plurality of tokens from the extracted text;

hashing the plurality of tokens to a plurality of bit position values; and

creating a word index to be associated with the captured object by setting bits of a bit vector corresponding to the plurality of bit position values, wherein generating the plurality of tokens comprises tokenizing the extracted text using a context-aware parser, and wherein the context-aware parser uses a list of patterns associated with a content type of the captured object to sub-tokenize at least one of the tokens generated from the extracted text.

6. The method of claim 5 , wherein the context-aware parser uses a list of separators associated with a content type of the captured object.

7. The method of claim 5 , further comprising inserting the word index into a tag associated with the captured object.

8. The method of claim 7 , further comprising storing the captured object in a canonical object store and storing the tag associated with the captured object in a tag database.

9. The method of claim 5 , further comprising:

receiving a query including a search term;

hashing the search term to a term bit position of the bit vector; and

eliminating the captured object from the query by observing that a bit in the term bit position is not set in the word index contained in the tag associated with the captured object.

10. A capture system comprising:

one or more capture modules including a network interface card to capture an object being transmitted over a network, wherein a content type of the object is determined and the content type is positioned in a content field of a tag associated with the object;

a text extractor to extract text contained in the captured object;

a tokenizer to generate a plurality of tokens from the extracted text;

a sub-tokenizer to sub-tokenize the plurality of tokens comprises using a context-aware parser; and

an index generator to create a word index by hashing the plurality of tokens to a plurality of bit position values and setting bits of a bit vector corresponding to the plurality of bit position values, wherein the context-aware parser uses a list of patterns associated with a content type of the captured object to sub-tokenize at least one of the tokens generated from the extracted text.

11. The capture system of claim 10 , wherein the context-aware parser uses a list of separators associated with a content type of the captured object.

12. The capture system of claim 10 , wherein the index generator also inserts the word index into a tag associated with the captured object.

13. The capture system of claim 12 , further comprising an object store to store the captured object and a tag database to store the tag associated with the captured object.

14. A machine-readable medium having stored thereon data representing instructions that, when executed by a processor, cause the processor to perform operations comprising:

receiving a query for an object captured by a capture system, the query including at least one search term, wherein a content type of the object is determined and the content type is positioned in a content field of a tag associated with the object;

hashing the at least one search term to a term bit position using a hash function; and

eliminating at least one other object from the query using a word index associated with the at least one other object, the word index comprising a plurality of bits, if a bit in the term bit position is not set, wherein eliminating the at least one other object from the query comprises performing a search over a tag database containing tags associated with the capture objects.

15. The machine-readable medium of claim 14 , wherein the instructions further cause the processor to retrieve at least one object, wherein a second word index associated with the retrieved object included a set bit in the term bit position.

16. The machine-readable medium of claim 14 , wherein each tag in the tag database comprises an index field, the index field including a plurality of bits, wherein at least one of the bits is set.

17. The machine-readable medium of claim 16 , wherein the at least one set bit has a value of “1”.

18. A machine-readable medium having stored thereon data representing instructions that, when executed by a processor of a capture system, cause the processor to perform operations comprising:

extracting text contained in a captured object, wherein a content type of the object is determined and the content type is positioned in a content field of a tag associated with the object;

generating a plurality of tokens from the extracted text;

hashing the plurality of tokens to a plurality of bit position values; and

creating a word index to be associated with the captured object by setting bits of a bit vector corresponding to the plurality of bit position values, wherein generating the plurality of tokens comprises tokenizing the extracted text using a context-aware parser, and wherein the context-aware parser uses a list of patterns associated with a content type of the captured object to sub-tokenize at least one of the tokens generated from the extracted text.

19. The machine-readable medium of claim 18 , wherein the context-aware parser uses a list of separators associated with a content type of the captured object.

20. The machine-readable medium of claim 18 , wherein the instructions further cause the processor to insert the word index into a tag associated with the captured object.

21. The machine-readable medium of claim 20 , wherein the instructions further cause the processor to store the captured object in a canonical object store and storing the tag associated with the captured object in a tag database.

22. The machine-readable medium of claim 18 , wherein the instructions further cause the processor perform operations comprising:

receiving a query including a search term;

hashing the search term to a term bit position of the bit vector; and

eliminating the captured object from the query by observing that a bit in the term bit position is not set in the word index contained in the tag associated with the captured object.

Assignments (11)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 23, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 060792/0307 →
SECURITY INTEREST Recorded Mar 3, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 059354/0335 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
MERGER Recorded Jan 26, 2009
From: RECONNEX CORPORATION
To: MCAFEE, INC.
Reel/Frame 022214/0151 →
RELEASE OF SECURITY INTEREST Recorded May 4, 2006
From: NORWEST VENTURE PARTNERS, AS COLLATERAL AGENT
To: RECONNEX CORPORATION
Reel/Frame 017576/0013 →
SECURITY AGREEMENT Recorded Mar 23, 2006
From: RECONNEX CORPORATION
To: NORWEST VENTURE PARTNERS, AS COLLATERAL AGENT
Reel/Frame 017357/0788 →