IP Library Granted Patent US 10,353,966
Granted Patent B2
US 10,353,966 · App. 14/946,173 · Granted Jul 16, 2019

Dynamic attributes for searching

Inventors: Navin Agarwal (Mountain View, CA); Mohit Jain (Bangalore, IN); Amit Aggarwal (Los Altos, CA); Omar Eduardo Fernández (Los Altos, CA)
Assignee: BloomReach, Inc.
G06F16/9532G06F16/2228G06F16/242G06F16/2425G06F16/285G06F16/9535G06F16/9536G06Q30/0625G06Q30/0641
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 10,353,966
App. No.
14/946,173
Granted
Jul 16, 2019
Kind
B2
Abstract

A dynamic attribute search engine system can be implemented to execute faceted searches using dynamic facets. In embodiments, a dynamic attribute search engine system includes one or more product databases, a data ingestor, an index, a query service, and a faceted searcher. The dynamic attribute search engine system is programmed to dynamically determine facets for a faceted search in response to dominant categories identified for each search query.

Claims (33)

1. A computer-implemented method for carrying out a search query comprising:

receiving, from a user, a search query for a product;

at a query service, searching a product index for at least one of product attributes or product attribute values of respective products identified in the product index matching a term in the search query;

at a faceted searcher, identifying a set of dominant product categories resulting from the searching of the product index, wherein identifying the set of dominant product categories comprises:

aggregating the product attribute values returned from the searching of the product index into respective product attribute groups, wherein each of the product attribute values in each product attribute group is associated with at least one of the products identified in the product index;

ranking each of the product attribute groups based on a number of product attribute values contained in a respective product attribute group; and at least one of:

identifying products associated with product attribute groups having a rank above a threshold, determining respective product categories for at least a portion of the identified products, and identifying the determined product categories as dominant product categories; or

determining respective product categories for each product associated with the product attribute groups, selecting at least a portion of the determined product categories, and identifying the selected product categories as dominant product categories;

at a faceted searcher, selecting one or more of the dominant product categories to act as one or more search facets;

at the query service, performing a faceted search of the product index for the one or more search facets; and

transmitting, to the user, a result of the faceted search, the result identifying a group of products.

2. The method of claim 1 , wherein identifying a set of dominant product categories comprises determining a set of top-ranked categories as a portion of a total number of categories returned from searching the product index.

3. The method of claim 2 , wherein the portion of the total number of categories comprises five top-ranked categories.

4. The method of claim 2 , wherein the portion of the total number of categories comprises a percentage of the total number of categories.

5. The method of claim 4 , further comprising dynamically selecting the percentage.

6. The method of claim 4 , wherein the percentage is a predetermined value.

7. A system for carrying out a search query, comprising one or more processors and one or more memory devices operably coupled to the one or more processors, the one or more memory devices storing executable and operational instructions effective to cause the one or more processors to:

receive a search query for a product;

search a product index for at least one of product attributes or product attribute values of respective products identified in the product index matching a term in the search query;

identify a set of dominant product categories resulting from the search of the product index, wherein to identify the set of dominant product attribute categories, the memory devices store executable and operational code effective to cause the one or more processors to:

aggregate the product attribute values returned from the search of the product index into respective product attribute groups, wherein each of the product attribute values, in each product attribute group is associated with at least one of the products identified in the product index;

ranking each of the product attribute groups based on a number of product attribute values contained in a respective product attribute group; and at least one of:

identifying products associated with product attribute groups having a rank above a threshold, determining respective product categories for at least a portion of the identified products, and identifying the determined product categories as dominant product categories; or

determining respective product categories for each product associated with the product attribute groups, selecting at least a portion of the determined product categories, and identifying the selected product categories as dominant product categories;

select one or more of the dominant product categories to act as one or more search facets;

perform a faceted search of the product index for the one or more search facets; and

transmit a result of the faceted search, the result identifying a group of products to a user.

8. The system of claim 7 , wherein the memory devices store executable and operational instructions further effective to cause the one or more processors to:

determine a set of top-ranked categories as a portion of a total number of categories returned from searching the product index.

9. The system of claim 8 , wherein the portion of the total number of categories comprises five top-ranked categories.

10. The system of claim 8 , wherein the portion of the total number of categories comprises a percentage of the total number of categories.

11. The system of claim 10 , wherein the memory devices store executable and operational instructions further effective to cause the one or more processors to dynamically select the percentage.

12. The system of claim 10 , wherein the percentage is a predetermined value.

Assignments (6)
SECURITY INTEREST Recorded Sep 6, 2022
From: BLOOMREACH, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 060997/0569 →
RELEASE OF SECURITY INTEREST Recorded Aug 1, 2022
From: COMERICA BANK
To: BLOOMREACH, INC.
Reel/Frame 060689/0715 →
RELEASE OF SECURITY INTEREST Recorded Mar 7, 2022
From: ORIX GROWTH CAPITAL, LLC
To: BLOOMREACH, INC.
Reel/Frame 059189/0696 →
SECURITY INTEREST Recorded Nov 17, 2020
From: BLOOMREACH, INC.
To: COMERICA BANK
Reel/Frame 054395/0309 →
SECURITY INTEREST Recorded Jan 17, 2020
From: BLOOMREACH, INC.
To: ORIX GROWTH CAPITAL, LLC
Reel/Frame 051546/0192 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2015
From: AGARWAL, NAVIN; JAIN, MOHIT; AGGARWAL, AMIT; FERNÁNDEZ, OMAR EDUARDO
To: BLOOMREACH, INC.
Reel/Frame 037091/0622 →
Continuity (1)
Related Publication 20170148078A1 · May 25, 2017
Cited By (1)
US 12,586,109