IP Library Granted Patent US 9,552,412
Granted Patent B1
US 9,552,412 · App. 15/092,938 · Granted Jan 24, 2017

Boolean-query composer

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 9,552,412
App. No.
15/092,938
Granted
Jan 24, 2017
Kind
B1
Abstract

Provided is a process of refining Boolean queries, the process including: obtaining a query; searching a corpus of documents based on the query; selecting narrowing terms that pertain to respective subsets of the responsive documents; selecting broadening terms related to the query; instructing the user's computing device to present a graphical user interface comprising: graphical representations of the narrowing terms; graphical representations of the broadening terms; and one or more user inputs by which the user refines the query by adding a selected narrowing term or a selected broadening term; obtaining a user selection of a broadening term or a narrowing term; forming a refined query based on the user selection; searching at least part of the corpus based on the refined query to identify refined responsive documents; and instructing the user's computing device to present an updated graphical user interface with information about the refined responsive documents.

Claims (119)

1. A method of refining Boolean queries, the method comprising:

obtaining, with one or more processors, a query provided by a user via a user's computing device;

searching, with one or more processors, a corpus of documents based on the query to identify responsive documents, the corpus having more than 2,000 documents;

selecting, with one or more processors, narrowing terms that pertain to respective subsets of the responsive documents;

selecting, with one or more processors, broadening terms related to the query;

instructing, with one or more processors, the user's computing device to present a graphical user interface comprising:

graphical representations of the narrowing terms;

graphical representations of the broadening terms; and

one or more user inputs by which the user refines the query by adding a selected narrowing term or a selected broadening term;

obtaining, with one or more processors, a user selection of a broadening term or a narrowing term;

forming, with one or more processors, a refined query based on the user selection;

searching, with one or more processors, at least part of the corpus based on the refined query to identify refined responsive documents; and

instructing, with one or more processors, the user's computing device to present an updated graphical user interface with information about the refined responsive documents, wherein the updated graphical user interface comprises a query entry input having graphical regions representing query constituent components and user-selectable inputs for each of the components by which the respective component is removed from the query.

2. The method of claim 1 , wherein the graphical user interface comprises:

a plurality of graphical regions, each graphical region corresponding to one of the narrowing terms, wherein a spatial dimension of each graphical region is selected based on an amount of the responsive documents responsive to a refined query including the respective term as a conjunctive addition to the query.

3. The method of claim 2 , wherein the spatial dimensions are assigned by performing steps for partitioning a plane.

4. The method of claim 1 , wherein the graphical user interface comprises:

a plurality of graphical regions, each graphical region corresponding to one of the narrowing terms, wherein a visual weight or size of each graphical region is selected based on an amount of the responsive documents responsive to a refined query including the respective term as a conjunctive addition to the query.

5. The method of claim 1 , wherein the graphical user interface comprises:

a positive conjunctive input selector for each narrowing term; and

a negative conjunctive input selector for each narrowing term.

6. The method of claim 1 , wherein the graphical user interface comprises:

a positive disjunctive input selector for each broadening term; and

a negative disjunctive input selector for each broadening term.

7. The method of claim 1 , wherein forming a refined query comprises:

refactoring a Boolean query combining a plurality of narrowing terms and a plurality of broadening terms to shorten the Boolean query.

8. The method of claim 1 , wherein:

the graphical regions each have a respective non-textual visual attribute indicative of whether the respective graphical region corresponds to a positive conjunctive query element, a negative conjunctive query element, an positive disjunctive query element, or a negative disjunctive query element, and

the graphical regions are added to the graphical user interface by inserting a specification for the graphical regions into a document object model for the graphical user interface with scripting code executed within a web browser responsive to one or more event handlers mapped to inputs by which the user requests the addition of the corresponding query elements.

9. The method of claim 1 , wherein the narrowing terms are selected by performing steps for selecting narrowing terms.

10. The method of claim 1 , wherein the broadening terms are selected by performing steps for selecting broadening terms.

11. The method of claim 1 , comprising:

after selecting the broadening terms pre-processing candidate search results for a refined query based on one of the broadening terms before the one of the broadening terms is selected by the user.

12. The method of claim 1 , comprising:

iteratively presenting query results and broadening terms and narrowing terms corresponding to those query results each time the user selects one or more broadening or narrowing terms through at least three iterations.

13. The method of claim 1 , comprising:

iteratively presenting query results and broadening terms and narrowing terms corresponding to those query results each time the user selects and submits one or more broadening or narrowing terms.

14. The method of claim 1 , wherein the graphical user interface comprises:

means for selecting among a plurality of filters for the search results, wherein the refined responsive documents both satisfy a user-selected filter and the refined query.

15. The method of claim 1 , wherein a plurality of categories of narrowing terms are selected, and wherein the graphical user interfaces comprises a plurality of inputs for faceted selection of the narrowing terms by category.

16. The method of claim 1 , comprising:

receiving a user selection of a narrowing term; and

before the narrowing term is added to the refined query, causing the user device to present at least part of a plurality of documents to which the selected narrowing term pertains.

17. The method of claim 16 , comprising:

presenting a time-series graphical representation of amounts of documents to which the selected narrowing term applies.

18. The method of claim 1 , comprising:

receiving another user selection of another term after forming the refined query;

in response to receiving the other user selection, embedding the refined query in parentheses and then forming another refined query with the other term outside of the parenthesis.

19. The method of claim 1 , comprising:

before obtaining the query, obtaining the corpus, the corpus comprising more than 5000 documents;

for each document in the corpus, with one or more processers:

determining a respective n-gram vector, each n-gram vector comprising a plurality of values each indicating presence of a respective n-gram in text of the respective document, wherein the n-gram vectors indicate at least 500 values and correspond to at least some n-grams including three words; and

determining scores indicating an amount of semantic similarity relative to the other documents in the analyzed corpus based on angles between the n-gram vector of the respective document and n-gram vectors of the other documents in the analyzed corpus;

wherein presenting information about the refined responsive documents comprises presenting a force-directed graph of the responsive documents wherein at least one parameter of a physics model of the force directed graph corresponds to scores indicating the amount of semantic similarity.

20. A system, comprising:

one or more processors; and

memory storing instructions that when executed by at least some of the processors effectuate operations comprising:

obtaining, with one or more processors, a query provided by a user via a user's computing device;

searching, with one or more processors, a corpus of documents based on the query to identify responsive documents, the corpus having more than 2,000 documents;

selecting, with one or more processors, narrowing terms that pertain to respective subsets of the responsive documents;

selecting, with one or more processors, broadening terms related to the query;

instructing, with one or more processors, the user's computing device to present a graphical user interface comprising:

graphical representations of the narrowing terms;

graphical representations of the broadening terms; and

one or more user inputs by which the user refines the query by adding a selected narrowing term or a selected broadening term;

obtaining, with one or more processors, a user selection of a broadening term or a narrowing term;

forming, with one or more processors, a refined query based on the user selection;

searching, with one or more processors, at least part of the corpus based on the refined query to identify refined responsive documents; and

instructing, with one or more processors, the user's computing device to present an updated graphical user interface with information about the refined responsive documents, wherein the updated graphical user interface comprises a query entry input having graphical regions representing query constituent components and user-selectable inputs for each of the components by which the respective component is removed from the query.

21. The system of claim 20 , wherein the graphical user interface comprises:

a plurality of graphical regions, each graphical region corresponding to one of the narrowing terms, wherein a spatial dimension of each graphical region is selected based on an amount of the responsive documents responsive to a refined query including the respective term as a conjunctive addition to the query.

22. The system of claim 20 , wherein the graphical user interface comprises:

a plurality of graphical regions, each graphical region corresponding to one of the narrowing terms, wherein a visual weight or size of each graphical region is selected based on an amount of the responsive documents responsive to a refined query including the respective term as a conjunctive addition to the query.

23. The system of claim 20 , wherein the graphical user interface comprises:

a positive conjunctive input selector for each narrowing term; and

a negative conjunctive input selector for each narrowing term.

24. The system of claim 20 , wherein the graphical user interface comprises:

a positive disjunctive input selector for each broadening term; and

a negative disjunctive input selector for each broadening term.

25. The system of claim 20 , wherein forming a refined query comprises:

refactoring a Boolean query combining a plurality of narrowing terms and a plurality of broadening terms to shorten the Boolean query.

26. The system of claim 20 , wherein:

the graphical regions each have a respective non-textual visual attribute indicative of whether the respective graphical region corresponds to a positive conjunctive query element, a negative conjunctive query element, an positive disjunctive query element, or a negative disjunctive query element, and

the graphical regions are added to the graphical user interface by inserting a specification for the graphical regions into a document object model for the graphical user interface with scripting code executed within a web browser responsive to one or more event handlers mapped to inputs by which the user requests the addition of the corresponding query elements.

27. The system of claim 20 , wherein:

the narrowing terms are selected by performing steps for selecting narrowing terms.

28. The system of claim 20 , wherein:

wherein the broadening terms are selected by performing steps for selecting broadening terms.

29. A system, comprising:

one or more processors; and

memory storing instructions that when executed by at least some of the processors effectuate operations comprising:

obtaining, with one or more processors, a query provided by a user via a user's computing device;

searching, with one or more processors, a corpus of documents based on the query to identify responsive documents, the corpus having more than 2,000 documents;

selecting, with one or more processors, narrowing terms that pertain to respective subsets of the responsive documents;

selecting, with one or more processors, broadening terms related to the query;

instructing, with one or more processors, the user's computing device to present a graphical user interface comprising:

graphical representations of the narrowing terms;

graphical representations of the broadening terms; and

one or more user inputs by which the user refines the query by adding a selected narrowing term or a selected broadening term;

obtaining, with one or more processors, a user selection of a broadening term or a narrowing term;

forming, with one or more processors, a refined query based on the user selection;

searching, with one or more processors, at least part of the corpus based on the refined query to identify refined responsive documents;

instructing, with one or more processors, the user's computing device to present an updated graphical user interface with information about the refined responsive documents;

receiving a user selection of a narrowing term; and

before the narrowing term is added to the refined query, causing the user device to present at least part of a plurality of documents to which the selected narrowing term pertains.

30. A method of refining Boolean queries, the method comprising:

obtaining, with one or more processors, a query provided by a user via a user's computing device;

searching, with one or more processors, a corpus of documents based on the query to identify responsive documents, the corpus having more than 2,000 documents;

selecting, with one or more processors, narrowing terms that pertain to respective subsets of the responsive documents;

selecting, with one or more processors, broadening terms related to the query;

instructing, with one or more processors, the user's computing device to present a graphical user interface comprising:

graphical representations of the narrowing terms;

graphical representations of the broadening terms;

one or more user inputs by which the user refines the query by adding a selected narrowing term or a selected broadening term, and

wherein the graphical user interface comprises a plurality of graphical regions, each graphical region corresponding to one of the narrowing terms, wherein a visual weight or size of each graphical region is selected based on an amount of the responsive documents responsive to a refined query including the respective term as a conjunctive addition to the query;

obtaining, with one or more processors, a user selection of a broadening term or a narrowing term;

forming, with one or more processors, a refined query based on the user selection;

searching, with one or more processors, at least part of the corpus based on the refined query to identify refined responsive documents; and

instructing, with one or more processors, the user's computing device to present an updated graphical user interface with information about the refined responsive documents.

Assignments (8)
SECURITY INTEREST Recorded Nov 18, 2021
From: NETBASE SOLUTIONS, INC.; QUID, LLC
To: EAST WEST BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 058157/0091 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 29, 2021
From: QUID, INC.
To: QUID, LLC
Reel/Frame 057956/0185 →
MERGER AND CHANGE OF NAME Recorded Oct 29, 2021
From: QUID, INC.; QUID MERGER SUB II, LLC
To: QUID, LLC
Reel/Frame 057956/0215 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 29, 2021
From: QUID, INC.
To: QUID, LLC
Reel/Frame 057962/0230 →
RELEASE OF SECURITY INTEREST Recorded Jan 28, 2020
From: HERCULES CAPITAL, INC.
To: QUID, INC.
Reel/Frame 051646/0106 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT APPLICATION NUMBER INCORRECTLY LISTED AS 15223007 BUT NEEDS TO BE LISTED AS 15233007 PREVIOUSLY RECORDED ON REEL 044023 FRAME 0520. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Apr 25, 2018
From: QUID, INC.
To: HERCULES CAPITAL, INC., AGENT
Reel/Frame 046023/0441 →
SECURITY INTEREST Recorded Nov 2, 2017
From: QUID, INC.
To: HERCULES CAPITAL, INC., AGENT
Reel/Frame 044023/0520 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 15, 2016
From: LOWE, MARY KATE; TACCHI, RUGGERO ALTAIR; MARRS, ALEX; LOVE, ORIANA JEANNETTE
To: QUID, INC.
Reel/Frame 038918/0211 →