IP Library Granted Patent US 12,481,668
Granted Patent B2
US 12,481,668 · App. 18/455,071 · Granted Nov 25, 2025

System and method for subset searching and associated search operators

Inventors: Patrick Thomas Sidney Pidduck (Waterloo, CA); David Alan Tausky (Waterloo, CA)
Assignee: OPEN TEXT SA ULC
G06F16/248G06F16/2246
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 12,481,668
App. No.
18/455,071
Granted
Nov 25, 2025
Kind
B2
Abstract

Embodiments as disclosed may provide a search operator that addresses the problem of query construction for finding objects that include some number (N) of a set of terms (M). Moreover, embodiments as disclosed herein may efficiently implement the searches specified by such subset operators using a subset process that combines results from a set of term processes where only one term process may be needed for each search term (or search term variant).

Claims (44)

1 . A system, comprising:

a processor;

a non-transitory computer readable medium, having instructions for:

accessing a data store having an index of a corpus of a set of objects stored thereon;

receiving a search query including a subset operator, the subset operator including a threshold and a set of search terms, wherein the threshold defines an amount of the set of search terms that are present in an object of the set of objects that satisfies the subset operator;

based on the subset operator:

executing a first process for the subset operator, wherein the first process uses the index to determine one or more objects of the set of objects of the corpus that satisfy the subset operator, wherein executing the first process for the subset operator comprises:

executing a second process adapted to identify a first subset of objects of the set of objects of the corpus, wherein each object of the first subset of objects includes at least one respective search term associated with the set of search terms of the subset operator;

evaluating a result returned from the second process including the first subset of objects to identify the one or more objects of the corpus that satisfy the subset operator by determining objects of the first subset of objects that have the amount of the set of search terms defined by the threshold of the subset operator; and

returning the determined one or more objects that satisfy the subset operator.

2 . The system of claim 1 , wherein the objects include text objects, image objects or video objects.

3 . The system of claim 2 , wherein the search query includes one or more additional operators.

4 . The system of claim 1 , wherein the amount defines an exact amount of search terms that are present in the object, defines the amount of the set of the search terms that the object does not have, defines a minimum for the amount of the set of search terms that the object has, or defines a maximum for the amount of the set of search terms that the object has.

5 . The system of claim 4 , wherein the amount is specified as a number value, a percentage value or a ratio.

6 . The system of claim 1 , wherein the index includes metadata or data of the set of objects.

7 . The system of claim 1 , wherein the second process and the first process are distinct processes.

8 . A method, comprising:

accessing a data store having an index of a corpus of a set of objects stored thereon;

receiving a search query including a subset operator, the subset operator including a threshold and a set of search terms, wherein the threshold defines an amount of the set of search terms that are present in an object of the set of objects that satisfies the subset operator;

based on the subset operator:

executing a first process for the subset operator, wherein the first process uses the index to determine one or more objects of the set of objects of the corpus that satisfy the subset operator, wherein executing the first process for the subset operator comprises:

executing a second process adapted to identify a first subset of objects of the set of objects of the corpus, wherein each object of the first subset of objects includes at least one respective search term associated with the set of search terms of the subset operator;

evaluating a result returned from the second process including the first subset of objects to determine one or more objects of the corpus having the amount of the set of search terms defined by the threshold to identify the one or more objects of the corpus that satisfy the subset operator by determining objects of the first subset of objects that have the amount of the set of search terms defined by the threshold of the subset operator; and

returning the determined one or more objects that satisfy the subset operator.

9 . The method of claim 8 , wherein the objects include text objects, image objects or video objects.

10 . The method of claim 9 , wherein the search query includes one or more additional operators.

11 . The method of claim 8 , wherein the amount defines an exact amount of search terms that are present in the object, defines the amount of the set of the search terms that the object does not have, defines a minimum for the amount of the set of search terms that the object has, or defines a maximum for the amount of the set of search terms that the object has.

12 . The method of claim 11 , wherein the amount is specified as a number value, a percentage value or a ratio.

13 . The method of claim 8 , wherein the index includes metadata or data of the set of objects.

14 . The method of claim 8 , wherein the second process and the first process are distinct processes.

15 . A non-transitory computer readable medium, comprising instructions for:

accessing a data store having an index of a corpus of a set of objects stored thereon;

receiving a search query including a subset operator, the subset operator including a threshold and a set of search terms, wherein the threshold defines an amount of the set of search terms that are present in an object of the set of objects that satisfies the subset operator;

based on the subset operator:

executing a first process for the subset operator, wherein the first process uses the index to determine one or more objects of the set of objects of the corpus that satisfy the subset operator, wherein executing the first process for the subset operator comprises:

executing a second process adapted to identify a first subset of objects of the set of objects of the corpus, wherein each object of the first subset of objects includes at least one respective search term associated with the set of search terms of the subset operator;

evaluating a result returned from the second process including the first subset of objects to determine one or more objects of the corpus having the amount of the set of search terms defined by the threshold to identify the one or more objects of the corpus that satisfy the subset operator by determining objects of the first subset of objects that have the amount of the set of search terms defined by the threshold of the subset operator; and

returning the determined one or more objects that satisfy the subset operator.

16 . The non-transitory computer readable medium of claim 15 , wherein the objects include text objects, image objects or video objects.

17 . The non-transitory computer readable medium of claim 16 , wherein the search query includes one or more additional operators.

18 . The non-transitory computer readable medium of claim 15 , wherein the amount defines an exact amount of search terms that are present in the object, defines the amount of the set of the search terms that the object does not have, defines a minimum for the amount of the set of search terms that the object has, or defines a maximum for the amount of the set of search terms that the object has.

19 . The non-transitory computer readable medium of claim 18 , wherein the amount is specified as a number value, a percentage value or a ratio.

20 . The non-transitory computer readable medium of claim 15 , wherein the index includes metadata or data of the set of objects.

21 . The non-transitory computer readable medium of claim 15 , wherein the second process and the first process are distinct processes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2023
From: PIDDUCK, PATRICK THOMAS SIDNEY; TAUSKY, DAVID ALAN
To: OPEN TEXT SA ULC
Reel/Frame 064771/0696 →
Continuity (5)
Continuation 17589415 · Jan 31, 2022
Continuation 16869148 · May 7, 2020
Continuation 15331327 · Oct 21, 2016
Provisional Application 62247324 · Oct 28, 2015
Related Publication 20230409588A1 · Dec 21, 2023
References Cited (27)
US 6105023A · Callan · 2000 [cited by examiner]
US 6801905B2 · Andrei · 2004 [cited by applicant]
US 7657515B1 · Jewell · 2010 [cited by examiner]
US 7693824B1 · Diament · 2010 [cited by examiner]
US 9116996B1 · Provine · 2015 [cited by examiner]
US 11977581B2 · Pidduck · 2024 [cited by applicant]
US 12164582B2 · Pidduck · 2024 [cited by applicant]
US 12321340B2 · Pidduck · 2025 [cited by applicant]
US 20030177124A1 · Sauri · 2003 [cited by applicant]
US 20090094220A1 · Becker · 2009 [cited by applicant]
US 20090193210A1 · Hewett · 2009 [cited by applicant]
US 20110246487A1 · Malec · 2011 [cited by examiner]
US 20110246925A1 · Marchand · 2011 [cited by applicant]
US 20130006964A1 · Hammerschmidt · 2013 [cited by applicant]
US 20130066880A1 · Schramm · 2013 [cited by applicant]
US 20140067846A1 · Edwards · 2014 [cited by examiner]
US 20160004757A1 · Tsuchida · 2016 [cited by applicant]
US 20160239527A1 · Jang · 2016 [cited by applicant]
Notice of Allowance for U.S. Appl. No. 16/926,334, mailed Jan. 5, 2024, 9 pgs. [cited by applicant]
Office Action for U.S. Appl. No. 16/926,334, mailed Aug. 31, 2023, 18 pgs. [cited by applicant]
Office Action for U.S. Appl. No. 18/080,060, mailed Dec. 8, 2023, 16 pgs. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 17/861,003, mailed May 10, 2024, 5 pgs. [cited by applicant]
Office Action for U.S. Appl. No. 18/080,060 mailed May 29, 2024, 12 pgs. [cited by applicant]
Office Action for U.S. Appl. No. 18/080,060 mailed Sep. 6, 2024, 12 pgs. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 17/861,003, mailed Sep. 10, 2024,4 pgs. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 17/861,003, mailed Oct. 25, 2024,4 pgs. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 18/080,060, mailed Mar. 13, 2025, 6 pgs. [cited by applicant]