Prosecution Insights
Last updated: May 29, 2026
Application No. 18/661,441

DATA EXTRACTION AND DATA INGESTION FOR EXECUTING SEARCH REQUESTS ACROSS MULTIPLE DATA SOURCES

Non-Final OA §101§103
Filed
May 10, 2024
Priority
May 10, 2023 — provisional 63/501,356
Examiner
BARLOW, KATHERINE A
Art Unit
3689
Tech Center
3600 — Transportation & Electronic Commerce
Assignee
Limble Solutions Inc.
OA Round
1 (Non-Final)
50%
Grant Probability
Moderate
1-2
OA Rounds
9m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 50% of resolved cases
50%
Career Allowance Rate
54 granted / 107 resolved
-1.5% vs TC avg
Strong +53% interview lift
Without
With
+53.2%
Interview Lift
resolved cases with interview
Typical timeline
2y 9m
Avg Prosecution
4 currently pending
Career history
112
Total Applications
across all art units

Statute-Specific Performance

§101
10.5%
-29.5% vs TC avg
§103
86.4%
+46.4% vs TC avg
§102
2.2%
-37.8% vs TC avg
§112
1.0%
-39.0% vs TC avg
Black line = Tech Center average estimate • Based on career data from 107 resolved cases

Office Action

§101 §103
DETAILED ACTION Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Priority Applicant’s claim for the benefit of a prior-filed application under 35 U.S.C. 119(e) or under 35 U.S.C. 120, 121, 365(c), or 386(c) is acknowledged. Status of Claims This first action on the merits is in response to the application filed on May 10, 2024. Claims 1-20 are pending and have been examined. Claim Objections Claims 7, 13, and 18 are objected to because of the following informalities: Claims 7 and 18: “wherein scraping the data from each of the plurality of product listings comprises scraping up-to-date data” should read “wherein extracting the data from each of the plurality of product listings comprises scraping up-to-date data” Claim 13: “scraping data from each of the plurality of product listings, wherein the extracted data comprises unstructured data” should read “extracting data from each of the plurality of product listings, wherein the extracted data comprises unstructured data” Appropriate correction is required. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 1-12 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception without significantly more. The claims recite an abstract idea. This judicial exception is not integrated into a practical application. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. The steps for determining eligibility under 35 U.S.C. 101 can be found in the MPEP § 2106.03-2106.05. Under Step 1, the claims are directed to statutory categories. Specifically, the method, as claimed in claims 1-12, is directed to a process. While the claims fall within statutory categories, under Step 2A, Prong 1, the claimed invention recites the abstract idea of identifying duplicate product listings. Specifically, claim 1 recites the abstract idea of: receiving a search request comprising a product descriptor; searching a plurality of vendors to identify a plurality of product listings that each comprise information matching the product descriptor; extracting data from each of the plurality of product listings, wherein the extracted data comprises unstructured data; providing at least a portion of the extracted data to identify one or more unique part attributes within the portion of the extracted data; and determining whether two or more of the plurality of product listings are duplicate product listings based on the one or more unique part attributes identified. Under Step 2A, Prong 1, it is necessary to evaluate whether the claim recites a judicial exception by referring to subject matter groupings articulated in the guidance. When considering MPEP §2106.04(a), the claims recite an abstract idea. For example, claim 1 recites the abstract idea of identifying duplicate product listings, as noted above. This concept is considered to be a certain method of organizing human activity. Certain methods of organizing human activity are defined in the MPEP as including “fundamental economic principles or practices (including hedging, insurance, mitigating risk); commercial or legal interactions (including agreements in the form of contracts; legal obligations; advertising, marketing or sales activities or behaviors; business relations); managing personal behavior or relationships or interactions between people (including social activities, teaching, and following rules or instructions).” MPEP §2106.04(a)(2) subsection II. Here, the abstract idea recited in claim 1 is a certain method of organizing human activity because determining whether two or more of the plurality of product listings are duplicate product listings based on the one or more unique part attributes identified is a marketing activity. Thus, claim 1 recites an abstract idea. The recited limitations of claim 1 recite an abstract idea because they are considered to be mental processes. As described in the MPEP, mental processes are “concepts performed in the human mind (including an observation, evaluation, judgment, opinion)”. MPEP §2106.04(a)(2) subsection III. In this case, receiving a search request comprising a product descriptor is a type of observation. Additionally, searching a plurality of vendors to identify a plurality of product listings that each comprise information matching the product descriptor; extracting data from each of the plurality of product listings, wherein the extracted data comprises unstructured data; providing at least a portion of the extracted data to identify one or more unique part attributes within the portion of the extracted data; and determining whether two or more of the plurality of product listings are duplicate product listings based on the one or more unique part attributes identified are types of judgement. Thus, claim 1 recites an abstract idea. Under Step 2A, Prong 2, if it is determined that the claims recite a judicial exception, it is then necessary to evaluate whether the claims recite additional elements that integrate the judicial exception into a practical application of that exception. See MPEP §2106.04(d). Here, claim 1 includes additional elements such as websites, and a machine learning algorithm trained. Although reciting additional elements, the additional elements do not integrate the abstract idea into a practical application because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a computer as a tool to perform the abstract idea. These additional elements are described at a high level in Applicant’s specification without any meaningful detail about their structure or configuration. Similar to the limitations of Alice, claim 1 merely recites a commonplace business method (i.e., identifying duplicate product listings) being applied on a general purpose computer. See MPEP §§2106.04(d) and 2106.05(f). Thus, the claimed additional elements are merely generic elements and the implementation of the elements merely amounts to no more than an instruction to apply the abstract idea using a generic computer. Since the additional elements merely include instructions to implement the abstract idea on a generic computer or merely use a generic computer as a tool to perform an abstract idea, the abstract idea has not been integrated into a practical application. As such, claim 1 is directed to an abstract idea. Under Step 2B, if it is determined that the claims recite a judicial exception that is not integrated into a practical application of that exception, it is then necessary to evaluate the additional elements individually and in combination to determine whether they provide an inventive concept (i.e., whether the additional elements amount to significantly more than the exception itself). See MPEP §2106.05. Here, as noted above, the additional elements recited in independent claim 1 are recited and described in a generic manner merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. Even when considered as an ordered combination, the additional elements of claim 1 do not add anything that is not already present when they considered individually. In Alice, the court considered the additional elements “as an ordered combination,” and determined that “the computer components ... ‘ad[d] nothing ... that is not already present when the steps are considered separately’ and simply recite intermediated settlement as performed by a generic computer.” Alice Corp. Pty. Ltd. v. CLS Bank Int’l, 573 U.S. 208, 224, 110 USPQ2d 1976, 1983-84 (2014). (citing Mayo, 566 U.S. at 79, 101 USPQ2d at 1972). Also see MPEP §2106.05(f). Similarly, when viewed as a whole, claim 1 simply conveys the abstract idea itself facilitated by generic computing components. Therefore, under Step 2B, there are no meaningful limitations in claim 1 that transforms the judicial exception into a patent eligible application such that the claims amount to significantly more than the judicial exception itself. As such, representative claim 1 is ineligible. Dependent claims 2-12 do not aid in the eligibility of independent claim 1. For example, claims 3-6 and 8-12 merely further define the abstract limitations of claim 1. Also, claims 2 and 6 merely provide further embellishments of the abstract limitations recited in independent claim 1. Additionally, it is noted that claim 2 includes further additional elements of a scalable web application; claim 4 includes further additional elements of a search application database; claim 7 includes further additional elements of scraping the data comprises scraping up-to-date data directly from the websites; claim 8 includes further additional elements of rendering a search progress graphic on a user interface; claim 9 includes further additional elements of initiating a real-time crawler instance for a first website of the plurality of websites; claim 10 includes further additional elements of initiating a scraper instance for the first website of the plurality of websites; and claim 11 includes further additional elements of a graphical user interface of a scalable web application. However, these additional elements do not integrate the abstract idea into a practical application because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. These additional elements are merely generic elements and are likewise described in a generic manner in Applicant’s specification. Additionally, the additional elements do not amount to significantly more because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. Furthermore, it is noted that claims 3 and 5-6 do not include further additional elements. Therefore, the claims do not integrate the abstract idea into a practical application because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. The claims also do not amount to significantly more than the abstract idea because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. Thus, dependent claims 2-12 are also ineligible. Claims 13-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception without significantly more. The claims recite an abstract idea. This judicial exception is not integrated into a practical application. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. The steps for determining eligibility under 35 U.S.C. 101 can be found in the MPEP § 2106.03-2106.05. Under Step 1, the claims are directed to statutory categories. Specifically, the system, as claimed in claims 13-20, is directed to a machine. While the claims fall within statutory categories, under Step 2A, Prong 1, the claimed invention recites the abstract idea of identifying duplicate product listings. Specifically, claim 13 recites the abstract idea of: receiving a search request comprising a product descriptor; searching a plurality of vendors to identify a plurality of product listings that each comprise information matching the product descriptor; scraping data from each of the plurality of product listings, wherein the extracted data comprises unstructured data; providing at least a portion of the extracted data to identify one or more unique part attributes within the portion of the extracted data; and determining whether two or more of the plurality of product listings are duplicate product listings based on the one or more unique part attributes identified. Under Step 2A, Prong 1, it is necessary to evaluate whether the claim recites a judicial exception by referring to subject matter groupings articulated in the guidance. When considering MPEP §2106.04(a), the claims recite an abstract idea. For example, claim 13 recites the abstract idea of identifying duplicate product listings, as noted above. This concept is considered to be a certain method of organizing human activity. Certain methods of organizing human activity are defined in the MPEP as including “fundamental economic principles or practices (including hedging, insurance, mitigating risk); commercial or legal interactions (including agreements in the form of contracts; legal obligations; advertising, marketing or sales activities or behaviors; business relations); managing personal behavior or relationships or interactions between people (including social activities, teaching, and following rules or instructions).” MPEP §2106.04(a)(2) subsection II. Here, the abstract idea recited in claim 13 is a certain method of organizing human activity because determining whether two or more of the plurality of product listings are duplicate product listings based on the one or more unique part attributes identified is a marketing activity. Thus, claim 13 recites an abstract idea. The recited limitations of claim 13 recite an abstract idea because they are considered to be mental processes. As described in the MPEP, mental processes are “concepts performed in the human mind (including an observation, evaluation, judgment, opinion)”. MPEP §2106.04(a)(2) subsection III. Here, receiving a search request comprising a product descriptor is a type of observation. Additionally, searching a plurality of vendors to identify a plurality of product listings that each comprise information matching the product descriptor; extracting data from each of the plurality of product listings, wherein the extracted data comprises unstructured data; providing at least a portion of the extracted data to identify one or more unique part attributes within the portion of the extracted data; and determining whether two or more of the plurality of product listings are duplicate product listings based on the one or more unique part attributes identified are types of judgement. Thus, claim 13 recites an abstract idea. Under Step 2A, Prong 2, if it is determined that the claims recite a judicial exception, it is then necessary to evaluate whether the claims recite additional elements that integrate the judicial exception into a practical application of that exception. See MPEP §2106.04(d). Here, claim 13 includes additional elements such as websites, and a machine learning algorithm trained. Although reciting additional elements, the additional elements do not integrate the abstract idea into a practical application because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a computer as a tool to perform the abstract idea. These additional elements are described at a high level in Applicant’s specification without any meaningful detail about their structure or configuration. Similar to the limitations of Alice, claim 13 merely recites a commonplace business method (i.e., identifying duplicate product listings) being applied on a general purpose computer. See MPEP §§2106.04(d) and 2106.05(f). Thus, the claimed additional elements are merely generic elements and the implementation of the elements merely amounts to no more than an instruction to apply the abstract idea using a generic computer. Since the additional elements merely include instructions to implement the abstract idea on a generic computer or merely use a generic computer as a tool to perform an abstract idea, the abstract idea has not been integrated into a practical application. As such, claim 13 is directed to an abstract idea. Under Step 2B, if it is determined that the claims recite a judicial exception that is not integrated into a practical application of that exception, it is then necessary to evaluate the additional elements individually and in combination to determine whether they provide an inventive concept (i.e., whether the additional elements amount to significantly more than the exception itself). See MPEP §2106.05. Here, as noted above, the additional elements recited in independent claim 13 are recited and described in a generic manner merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. Even when considered as an ordered combination, the additional elements of claim 13 do not add anything that is not already present when they considered individually. In Alice, the court considered the additional elements “as an ordered combination,” and determined that “the computer components ... ‘ad[d] nothing ... that is not already present when the steps are considered separately’ and simply recite intermediated settlement as performed by a generic computer.” Alice Corp. Pty. Ltd. v. CLS Bank Int’l, 573 U.S. 208, 224, 110 USPQ2d 1976, 1983-84 (2014). (citing Mayo, 566 U.S. at 79, 101 USPQ2d at 1972). Also see MPEP §2106.05(f). Similarly, when viewed as a whole, claim 13 simply conveys the abstract idea itself facilitated by generic computing components. Therefore, under Step 2B, there are no meaningful limitations in claim 13 that transforms the judicial exception into a patent eligible application such that the claims amount to significantly more than the judicial exception itself. As such, representative claim 13 is ineligible. Dependent claims 14-20 do not aid in the eligibility of independent claim 13. For example, claims 15-17 and 19-20 merely further define the abstract limitations of claim 13. Also, claims 14 and 18 merely provide further embellishments of the abstract limitations recited in independent claim 13. Additionally, it is noted that claim 14 includes further additional elements of a scalable web application; claim 18 includes further additional elements of scraping the data comprises scraping up-to-date data directly from the websites; claim 19 includes further additional elements of rendering a search progress graphic on a user interface; and claim 20 includes further additional elements of initiating a real-time crawler instance for a first website of the plurality of websites; initiating a scraper instance for the first website of the plurality of websites. However, these additional elements do not integrate the abstract idea into a practical application because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. These additional elements are merely generic elements and are likewise described in a generic manner in Applicant’s specification. Additionally, the additional elements do not amount to significantly more because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. Furthermore, it is noted that claims 15-17 do not include further additional elements. Therefore, the claims do not integrate the abstract idea into a practical application because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. The claims also do not amount to significantly more than the abstract idea because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. Thus, dependent claims 14-20 are also ineligible. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. Claims 1, 3-7, 9-10, 12-13, 15-18, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Jadhav et. al. (US 20180174220 A1, herein referred to as Jadhav), in view of Tupakula et. al. (US 11797590 B2, herein referred to as Tupakula). Claim 1: Jadhav discloses: A method comprising {Jadhav: [0010] attached claims directed to a method}: receiving a search request comprising a product descriptor {Jadhav: [0064] query can be designed to use only one or two attribute values of the seed product offer, such as “title” and “brand” attribute values. The attribute values used may be determined to be attributes that distinguish the product offers from other similar but unrelated products; [0082] candidate generator may generate boolean search queries from seed products, and find products that match the query; [0085] (upc OR mpn OR model) AND (noun OR brand) AND terms). Examiner interprets noun OR brand as product descriptors}; searching a plurality of vendor websites to identify a plurality of product listings that each comprise information matching the product descriptor {Jadhav: [0044] e-commerce retailers are identified and content pages are crawled or processed to extract product listing information; [0059] a crawling process converts particular pages identified during a crawl into a hierarchical tree-based data structure that contains information regarding content elements associated with the page. The content elements are analyzed to identify product listings, reviews, and other identifiable features of each page.}; extracting data from each of the plurality of product listings, wherein the extracted data comprises unstructured data {Jadhav: [0044] e-commerce retailers are identified and content pages are crawled or processed to extract product listing information; [0060] following information can be extracted from webpage: product image, reviews, title, description, model number, features, price, item number (MPN), fit information, sizing information, color, size, and any other identifiable attributes describing product listing}; identify one or more unique part attributes within the portion of the extracted data {Jadhav: [0060] following information can be extracted from webpage: product image, reviews, title, description, model number, features, price, item number (MPN), fit information, sizing information, color, size, and any other identifiable attributes describing product listing; [0076] selected attribute pair includes at least one attribute that uniquely identifies a product. For example, at least one attribute in the selected pair may be a UPC value that uniquely identifies the product}; and determining whether two or more of the plurality of product listings are duplicate product listings based on the one or more unique part attributes identified {Jadhav: [0087] The cluster builder outputs a cluster of candidate products by, for example, finding the combination of attributes that accounts for the most products in the set of candidate products. For example, the joint assignment of noun, brand, MPN, UPC, and model that accounts for the most products can be used; [0091] Cluster maintenance processes, such as cluster merging, allow for identification of redundant or duplicate clusters that may not be identifiable upon cluster creation. For example, the redundancy of a particular cluster may only be identified after additional products are added to the clusters through incremental clustering operations. In certain embodiments, after clustering is performed, a cluster merging process is run that checks for near-duplicate clusters and merges them into one; [0061] product offer may be considered reliable if it includes information regarding the product's MPN, UPC, or other unique product identifier}. Although disclosing a clustering method for identifying duplicate product offerings, Jadhav does not disclose: providing at least a portion of the extracted data to a machine learning algorithm trained to identify one or more attributes; and one or more attributes identified by the machine learning algorithm. Jadhav does disclose that the system improves upon hierarchical agglomerative clustering (HAC) and/or K-means techniques (i.e., machine learning) (Jadhav: [0089]). However, Tupakula teaches: providing at least a portion of the extracted data to a machine learning algorithm trained to identify one or more attributes {Tupakula: [Col. 2, ln. 4-5, 11-13] providing the plurality of information items to a trained machine learning model. Identifying, by the trained machine learning model, multiple entities (i.e., attributes) from the unstructured content}; and one or more attributes identified by the machine learning algorithm {Tupakula: [Col. 6, ln. 6-10] machine learning model 216 may receive the information from the data store 212 and identify, determine, and/or extract pieces of information according to a question dataset 228.}. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the machine learning model attribute identification as taught by Tupakula in the product listing extraction method of Jadhav so that information of interest that is available in an unstructured format may be extracted and utilized to generate the user interface (Tupakula: [Col. 5, ln. 56-58]). Claim 3: Jadhav and Tupakula teach the method of claim 1. Jadhav further discloses: processing the extracted data to determine whether a product associated with each of the plurality of product listings is currently in stock, and further to determine current pricing for each of the plurality of product listings {Jadhav: [0060] following information can be extracted from webpage 400: product image, reviews, title, description, model number, features, price, and any other identifiable attributes describing product listing 410; [0045] following product information is associated with each product listing: title, product reference number, manufacturer, availability (e.g., units available in Big Co.'s warehouse and/or at its franchise locations), price; [0063] query is executed on the data set of product offers to determine candidate offers; [0090] a check is run against the product price to determine whether it is within the cluster price range.}. Claim 4: Jadhav and Tupakula teach the method of claim 1. Jadhav further discloses: storing the extracted data on a search application database {Jadhav: fig 1, data stores 164; [0060] following information can be extracted from webpage 400: product image, reviews, title, description, model number, features, price, and any other identifiable attributes describing product listing 410. Notably, UPC is not present in the provided details for product 410; [0026] social-networking system 160 manage, retrieve, modify, add, or delete, the information stored in data store 164}, and wherein the method further comprises: processing the unstructured data of the extracted data to extract missing fields from each of the plurality of product listings {Jadhav: [0060] following information can be extracted from webpage 400: product image, reviews, title, description, model number, features, price, and any other identifiable attributes describing product listing 410. Notably, UPC is not present in the provided details for product 410. The seed product “completeness” determination may be relative based on available attribute values of similar product offers.}. Although disclosing that the extracted data can be stored in a database, Jadhav does not disclose: processing the data with the machine learning algorithm. However, Tupakula teaches: processing the data with the machine learning algorithm {Tupakula: [Col. 2, ln. 4-5, 11-13] providing the plurality of information items to a trained machine learning model. Identifying, by the trained machine learning model, multiple entities from the unstructured content}. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the machine learning model attribute identification as taught by Tupakula in the product listing extraction method of Jadhav so that information of interest that is available in an unstructured format may be extracted and utilized to generate the user interface (Tupakula: [Col. 5, ln. 56-58]). Claim 5: Jadhav and Tupaluka teach the method of claim 1. Jadhav further discloses: processing the extracted data to determine a plurality of relevancy scores, wherein each of the plurality of relevancy scores is associated with one of the plurality of product listings and quantifies a relevance relative to the product descriptor {Jadhav: [0066] common attribute values are tallied across each candidate offer and ranked based on the most often or most frequently occurring attribute values for each attribute in the common schema; [0077] a threshold score is determined and each attribute pair above the threshold score is selected. The attribute values are incorporated into the normalized attribute values. The normalized attribute values can be used to identify candidate offers for association with the product.}; sorting the plurality of product listings based on the plurality of relevancy scores {Jadhav: [0054] The search engine returns the best top-K candidates that are similar to the requested product; [0056] if multiple retailers are selling the same camera, it should be ranked higher for the generic query “digital camera”}; and filtering the plurality of product listings based on the plurality of relevancy scores {Jadhav: [0054] search engine returns the best top-K candidates that are similar to the requested product}. Claim 6: Jadhav and Tupakula teach the method of claim 1. Jadhav further discloses: generating a product grouping comprising two or more duplicate products offered by two or more vendor websites of the plurality of vendor websites, wherein the two or more duplicate products are associated with a same unique part attribute as identified {Jadhav: [0087] cluster builder receives a set of seed products and a set of candidate products as inputs. The cluster builder outputs a cluster of candidate products by, for example, finding the combination of attributes that accounts for the most products in the set of candidate products; [0091] cluster merging is applied to combine two or more similar product clusters. For example, when clusters are formed, two different clusters are formed for the same underlying product. Cluster maintenance processes, such as cluster merging, allow for identification of redundant or duplicate clusters}. Although Jadhav discloses the system clustering duplicate products, Jadhav does not disclose: products are associated with a same attribute as identified by the machine learning algorithm. However, Tupakula teaches: products are associated with a same attribute as identified by the machine learning algorithm {Tupakula: [Col. 2, ln. 4-5, 11-13] providing the plurality of information items to a trained machine learning model. Identifying, by the trained machine learning model, multiple entities from the unstructured content; [Col. 6, ln. 65-67] Upon matching information in the archived content data source 156, the extracted or identified information may be provided}. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the machine learning model attribute identification as taught by Tupakula in the product listing extraction method of Jadhav so that information of interest that is available in an unstructured format may be extracted and utilized to generate the user interface (Tupakula: [Col. 5, ln. 56-58]). Claim 7: Jadhav and Tupakula teach the method of claim 1. Jadhav further discloses: wherein searching the plurality of vendor websites comprises searching in real-time in response to the search request {Jadhav: [0044] e-commerce retailers are identified and content pages are crawled or processed to extract product listing information; [0105] one or more computer systems 1000 may perform in real time}; and wherein scraping the data from each of the plurality of product listings comprises data directly from the plurality of vendor websites {Jadhav: [0044] e-commerce retailers are identified and content pages are crawled or processed to extract product listing information; [0060] following information can be extracted from webpage: product image, reviews, title, description, model number, features, price, item number (MPN), fit information, sizing information, color, size, and any other identifiable attributes describing product listing}. Although Jadhav discloses that the system searches ecommerce websites in real time and extracts data directly from those sites, Jadhav does not disclose: wherein scraping the data comprises scraping up-to-date data. However, Tupakula teaches: wherein scraping the data comprises scraping up-to-date data {Tupakula: [Col. 14, ln. 27-29] information items, such as information items 304A-304D, associated with a plurality of data sources may be scraped, or crawled, by a content scraper; [Col. 6, ln. 27-30] when a football team scores a touchdown, the structured data providers 104 covering the football game may make the scoring update immediately available to the raw data collection 108.}. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the content scraper as taught by Tupakula in the product listing extraction method of Jadhav so that information of interest that is available in an unstructured format may be extracted and utilized to generate the user interface (Tupakula: [Col. 5, ln. 56-58]). Claim 9: Jadhav and Tupakula teach the method of claim 1. Jadhav further discloses: initiating a real-time crawler instance for a first vendor website of the plurality of vendor websites, wherein the real-time crawler instance identifies updates made to the first vendor website {Jadhav: [0059] a product listing aggregation service “crawls” content pages associated with e-commerce retailers to extract product information. In certain embodiments, a crawling process converts particular pages identified during a crawl into a hierarchical tree-based data structure that contains information regarding content elements associated with the page; [0079] as the product information extraction process continues to crawl the web and look for new product offers, the extracted information is compared to the normalized attributes to make a determination as to whether the newly found product offer is related to any existing products in the catalog; [0105] one or more computer systems 1000 may perform in real time}. Claim 10: Jadhav and Tupakula teach the method of claim 9. Jadhav further discloses: initiating a scraper instance for the first vendor website of the plurality of vendor websites {Jadhav: [0059] a product listing aggregation service “crawls” content pages associated with e-commerce retailers to extract product information; [0060] the following information can be extracted from webpage 400: product image, reviews, title, description, model number, features, price, item number (MPN), fit information, sizing information, color, size, and any other identifiable attributes describing product listing 410; [0062] product offering data that is collected during the information extraction process is non-standardized and not processed before queries are executed. The attributes may be stored as “features” in a machine learning context in association with the product offer from which they were extracted}; wherein the scraper instance extracts information from the first vendor website in response to the real-time crawler instance indicating that an update has been made to the first vendor website {Jadhav: [0059] product listing aggregation service “crawls” content pages associated with e-commerce retailers to extract product information. A crawling process converts particular pages identified during a crawl into a hierarchical tree-based data structure that contains information regarding content elements associated with the page. The content elements are analyzed to identify product listings, reviews, and other identifiable features of each page; [0079] as the product information extraction process continues to crawl the web and look for new product offers, the extracted information is compared to the normalized attributes to make a determination as to whether the newly found product offer is related to any existing products in the catalog; [0105] one or more computer systems 1000 may perform in real time}. Claim 12: Jadhav and Tupakula teach the method of claim 1. Jadhav further discloses: receiving a product selection, wherein the product selection identifies at least one of the one or more unique part attributes {Jadhav: [0059] clicking a featured item displayed in a home page content panel loads a new related page that lists products that are related to the home screen content; [0060] following information can be extracted from webpage: product image, reviews, title, description, model number, features, price, item number (MPN), fit information, sizing information, color, size, and any other identifiable attributes describing product listing; [0076] selected attribute pair includes at least one attribute that uniquely identifies a product. For example, at least one attribute in the selected pair may be a UPC value that uniquely identifies the product.}; identifying one or more of the plurality of vendor websites offering the product selection {Jadhav: [0059] clicking a featured item displayed in a home page content panel loads a new related page that lists products that are related to the home screen content; [0053] distinct products can be identified with reference to a particular e-commerce website.}; and recommending one of the one or more of the plurality of vendor websites for acquiring the product selection {Jadhav: [0057] For example, if one retailer says that a certain batter is associated with a particular camera, that battery can be recommended for use with a product offer for that camera from a different retailer. Clustering products together allows aggregation of this information; [0053] distinct products can be identified with reference to a particular e-commerce website.}. Claim 13: Jadhav discloses: A system comprising one or more processors executing instructions stored in non-transitory computer readable storage medium, wherein the instructions comprise {Jadhav: fig 10 system 1000 with processor 102 and storage 1006; [0107] Data in the data caches may be copies of data in memory 1004 or storage 1006 for instructions executing at processor 1002 to operate on; [0113] a computer-readable non-transitory storage medium or media}: receiving a search request comprising a product descriptor {Jadhav: [0064] query can be designed to use only one or two attribute values of the seed product offer, such as “title” and “brand” attribute values. The attribute values used may be determined to be attributes that distinguish the product offers from other similar but unrelated products; [0082] candidate generator may generate boolean search queries from seed products, and find products that match the query; [0085] (upc OR mpn OR model) AND (noun OR brand) AND terms). Examiner interprets noun OR brand as product descriptors}; searching a plurality of vendor websites to identify a plurality of product listings that each comprise information matching the product descriptor {Jadhav: [0044] e-commerce retailers are identified and content pages are crawled or processed to extract product listing information; [0059] a crawling process converts particular pages identified during a crawl into a hierarchical tree-based data structure that contains information regarding content elements associated with the page. The content elements are analyzed to identify product listings, reviews, and other identifiable features of each page.}; scraping data from each of the plurality of product listings, wherein the extracted data comprises unstructured data {Jadhav: [0044] e-commerce retailers are identified and content pages are crawled or processed to extract product listing information; [0060] following information can be extracted from webpage: product image, reviews, title, description, model number, features, price, item number (MPN), fit information, sizing information, color, size, and any other identifiable attributes describing product listing}; identify one or more unique part attributes within the portion of the extracted data {Jadhav: [0060] following information can be extracted from webpage: product image, reviews, title, description, model number, features, price, item number (MPN), fit information, sizing information, color, size, and any other identifiable attributes describing product listing; [0076] selected attribute pair includes at least one attribute that uniquely identifies a product. For example, at least one attribute in the selected pair may be a UPC value that uniquely identifies the product}; and determining whether two or more of the plurality of product listings are duplicate product listings based on the one or more unique part attributes identified {Jadhav: [0087] The cluster builder outputs a cluster of candidate products by, for example, finding the combination of attributes that accounts for the most products in the set of candidate products. For example, the joint assignment of noun, brand, MPN, UPC, and model that accounts for the most products can be used; [0091] Cluster maintenance processes, such as cluster merging, allow for identification of redundant or duplicate clusters that may not be identifiable upon cluster creation. For example, the redundancy of a particular cluster may only be identified after additional products are added to the clusters through incremental clustering operations. In certain embodiments, after clustering is performed, a cluster merging process is run that checks for near-duplicate clusters and merges them into one; [0061] product offer may be considered reliable if it includes information regarding the product's MPN, UPC, or other unique product identifier}. Although disclosing a clustering method for identifying duplicate product offerings, Jadhav does not disclose: providing at least a portion of the extracted data to a machine learning algorithm trained to identify one or more attributes; and one or more attributes identified by the machine learning algorithm. Jadhav does disclose that the system improves upon hierarchical agglomerative clustering (HAC) and/or K-means techniques (i.e., machine learning) (Jadhav: [0089]). However, Tupakula teaches: providing at least a portion of the extracted data to a machine learning algorithm trained to identify one or more attributes {Tupakula: [Col. 2, ln. 4-5, 11-13] providing the plurality of information items to a trained machine learning model. Identifying, by the trained machine learning model, multiple entities (i.e., attributes) from the unstructured content}; and one or more attributes identified by the machine learning algorithm {Tupakula: [Col. 6, ln. 6-10] machine learning model 216 may receive the information from the data store 212 and identify, determine, and/or extract pieces of information according to a question dataset 228.}. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the machine learning model attribute identification as taught by Tupakula in the product listing extraction method of Jadhav so that information of interest that is available in an unstructured format may be extracted and utilized to generate the user interface (Tupakula: [Col. 5, ln. 56-58]). Regarding claims 14-19, claims 14-19 are directed to a system. Claims 14-19 recite limitations that are parallel in nature to those addressed above for claims 2-3 and 5-8, which are directed towards a method. Therefore, claims 14-19 are rejected for the same reasons as set forth above for claims 2-3 and 5-8, respectively. Claim 20: Jadhav and Tupakula teach the system of claim 13. Jadhav further discloses: initiating a real-time crawler instance for a first vendor website of the plurality of vendor websites, wherein the real-time crawler instance identifies updates made to the first vendor website {Jadhav: [0059] a product listing aggregation service “crawls” content pages associated with e-commerce retailers to extract product information. In certain embodiments, a crawling process converts particular pages identified during a crawl into a hierarchical tree-based data structure that contains information regarding content elements associated with the page; [0079] as the product information extraction process continues to crawl the web and look for new product offers, the extracted information is compared to the normalized attributes to make a determination as to whether the newly found product offer is related to any existing products in the catalog; [0105] one or more computer systems 1000 may perform in real time}; and initiating a scraper instance for the first vendor website of the plurality of vendor websites {Jadhav: [0059] a product listing aggregation service “crawls” content pages associated with e-commerce retailers to extract product information; [0060] the following information can be extracted from webpage 400: product image, reviews, title, description, model number, features, price, item number (MPN), fit information, sizing information, color, size, and any other identifiable attributes describing product listing 410; [0062] product offering data that is collected during the information extraction process is non-standardized and not processed before queries are executed. The attributes may be stored as “features” in a machine learning context in association with the product offer from which they were extracted}; wherein the scraper instance extracts information from the first vendor website in response to the real-time crawler instance indicating that an update has been made to the first vendor website {Jadhav: [0059] product listing aggregation service “crawls” content pages associated with e-commerce retailers to extract product information. A crawling process converts particular pages identified during a crawl into a hierarchical tree-based data structure that contains information regarding content elements associated with the page. The content elements are analyzed to identify product listings, reviews, and other identifiable features of each page; [0079] as the product information extraction process continues to crawl the web and look for new product offers, the extracted information is compared to the normalized attributes to make a determination as to whether the newly found product offer is related to any existing products in the catalog; [0105] one or more computer systems 1000 may perform in real time}. Claims 2, 8, 11, 14, and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Jadhav et. al. (US 20180174220 A1, herein referred to as Jadhav), in view of Tupakula et. al. (US 11797590 B2, herein referred to as Tupakula), in further view of Garg et. al. (US 20190362407 A1, herein referred to as Garg). Claim 2: Jadhav and Tupakula teach the method of claim 1. Jadhav further discloses: wherein receiving the search request comprises receiving an input from a user account associated with a scalable web application {Jadhav: [0047] Users can use the service to search for the best deals on a particular product; [0035] when a user registers for an account with the social-networking system 160, the social-networking system 160 may create a user node 202 corresponding to the user, and store the user node 202 in one or more data stores; [0026] a client system 130 may access the social-networking system 160 using a web browser 132, or a native application associated with the social-networking system 160 (e.g., a mobile social-networking application, a messaging application, another suitable application, or any combination thereof) either directly or via a network 110. Examiner interprets storing each user account as a user node as scalable.}. Although Jadhav discloses a scalable web application that can receive search requests from user accounts, Jadhav does not disclose: wherein the method further comprises determining whether the user account is associated with negotiated pricing at any of the plurality of vendor websites. Jadhav does disclose crawling ecommerce websites for product listings (Jadhav: [0044]). However, Garg teaches: wherein the method further comprises determining whether the user account is associated with negotiated pricing at any of the plurality of vendor websites {Garg: [0027] The profile may indicate a bargaining power of the customer (e.g., if the customer purchases large quantities the customer may having a higher bargaining power than a customer who purchases small quantities, if the customer is a frequency customer the customer may have a higher bargaining power than a customer who is an occasional customer, etc.), a company that the customer is associated with, an importance of the customer to the entity which may influence the customer's bargaining power, and the like.}. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the bargaining power of a user profile as taught by Garg in the product listing extraction method of Jadhav and Tupakula to help the user identify an individual cost and value attributable to each individual item (Garg: [0024]). Regarding claim 14, claim 14 is directed to a system. Claim 14 recites limitations that are parallel in nature to those addressed above for claim 2, which are directed towards a method. Therefore, claim 14 is rejected for the same reasons as set forth above for claim 2. Claims 8, 11, and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Jadhav et. al. (US 20180174220 A1, herein referred to as Jadhav), in view of Tupakula et. al. (US 11797590 B2, herein referred to as Tupakula), in further view of Kitson et. al. (US 10643178 B1, herein referred to as Kitson). Claim 8: Jadhav and Tupakula teach the method of claim 1. Jadhav does not disclose: rendering a search progress graphic on a user interface, wherein the search progress graphic comprises an indication of one or more of: a quantity of vendor websites that have been searched; an identity of the plurality of vendor websites; and a quantity of the plurality of product listings that has currently been identified. Jadhav does disclose searching a plurality of ecommerce websites (Jadhav: [0044]). However, Kitson teaches: rendering a search progress graphic on a user interface, wherein the search progress graphic comprises an indication of one or more of {Kitson: [Col. 13, ln. 62-65] If any results take longer than the preconfigured amount of time to return, the user interface may present the user with a notification stating “xx results from supplier1, supplier2”}: a quantity of vendor websites that have been searched; an identity of the plurality of vendor websites {Kitson: [Col. 13, ln. 62-65] present the user with a notification stating “xx results from supplier1, supplier2” Examiner interprets supplier1 and supplier 2 as the plurality of vendor websites}; and a quantity of the plurality of product listings that has currently been identified. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the search report notification as taught by Kitson in the product listing extraction method of Jadhav and Tupakula to help users view results in a single harmonized platform from multiple suppliers (Kitson: [Col. 11, ln. 57-59]). Claim 11: Jadhav and Tupakula teach the method of claim 1. Jadhav further discloses: a graphical user interface of a scalable web application comprises {Jadhav: [0059] clicking a featured item displayed loads a new related page that lists products that are related to the home screen content; [0026] a client system 130 may access the social-networking system 160 using a web browser 132, or a native application associated with the social-networking system 160 (e.g., a mobile social-networking application, a messaging application, another suitable application, or any combination thereof) either directly or via a network 110}: one or more product groupings, wherein each of the one or more product groupings is associated with one part attribute of the one or more unique part attributes identified {Jadhav: [0009] Candidate product offers can be “clustered” into groups associated with each product identified in the catalog. In certain embodiments, product offerings are scored and clustered based on whether their score is above a predetermined threshold. Product offers in the groups or clusters can be analyzed to identify offers that one or more users will likely be interested in, and the selected product offers can be presented to the user; [0066] the clustering and attribute normalization algorithm determines common attribute values across different candidate offers}; wherein each of the one or more product groupings comprises one or more of the plurality of product listings {Jadhav: [0066] the clustering and attribute normalization algorithm determines common attribute values across different candidate offers; [0090] all newly acquired product listings are sent to this cluster-mapper system that executes all previously generated cluster-rules on it. When a matching rule for the listing is found, the listing is mapped to that cluster.}; and wherein each of the one or more product groupings identifies one or more of the plurality of vendor websites that supplies a product with a corresponding part attribute of the one or more unique part attributes {Jadhav: [0066] the clustering and attribute normalization algorithm determines common attribute values across different candidate offers; [0059] clicking a featured item displayed in a home page content panel loads a new related page that lists products that are related to the home screen content; [0053] distinct products can be identified with reference to a particular e-commerce website.}. Although disclosing a clustering method for grouping similar products based on attributes, Jadhav does not disclose: attributes identified by the machine learning algorithm. However, Tupakula teaches: attributes identified by the machine learning algorithm {Tupakula: [Col. 2, ln. 4-5, 11-13] providing the plurality of information items to a trained machine learning model. Identifying, by the trained machine learning model, multiple entities (i.e., attributes) from the unstructured content}. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the machine learning model attribute identification as taught by Tupakula in the product listing extraction method of Jadhav so that information of interest that is available in an unstructured format may be extracted and utilized to generate the user interface (Tupakula: [Col. 5, ln. 56-58]). Neither Jadhav nor Tupakula disclose: generating a search report for the search request, wherein the search report is rendered on a graphical user interface. However, Kitson teaches: generating a search report for the search request, wherein the search report is rendered on a graphical user interface {Kitson: fig 3A reports to the user the progress of the search on a user interface; [Col. 13, ln. 62-65] If any results take longer than the preconfigured amount of time to return, the user interface may present the user with a notification}. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the search report notification as taught by Kitson in the product listing extraction method of Jadhav and Tupakula to help users view results in a single harmonized platform from multiple suppliers (Kitson: [Col. 11, ln. 57-59]). Regarding claim 19, claim 19 is directed to a system. Claim 19 recites limitations that are parallel in nature to those addressed above for claim 8, which are directed towards a method. Therefore, claim 19 is rejected for the same reasons as set forth above for claim 8. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure: Leaman et. al. (US 20220293107 A1) was used to understand other methods for identifying product duplicates using artificial intelligence. Keck et. al. (US 20210342920 A1) was used to understand other methods for implementing machine learning to procure data across websites. Any inquiry concerning this communication or earlier communications from the examiner should be directed to KATHERINE A BARLOW whose telephone number is (571)272-5820. The examiner can normally be reached Monday-Tuesday 11am-7pm EST. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Marissa Thein can be reached at 571-272-6764. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /KATHERINE A BARLOW/ Examiner, Art Unit 3689 /VICTORIA E. FRUNZI/ Primary Examiner, Art Unit 3689 4/2/2026
Read full office action

Prosecution Timeline

May 10, 2024
Application Filed
Apr 06, 2026
Non-Final Rejection mailed — §101, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12626296
Method, User Computing Device, and Computer-Readable Non-Transitory Medium for Embedded One-Click Checkout
2y 1m to grant Granted May 12, 2026
Patent 12572966
METHODS FOR SAFE DELIVERY OF A PACKAGE
2y 2m to grant Granted Mar 10, 2026
Patent 12548052
SYSTEM, METHOD, AND NON-TRANSITORY COMPUTER-READABLE MEDIUM FOR INSERTING CODE INTO A DOCUMENT OBJECT MODEL OF A GRAPHICAL USER INTERFACE (GUI) FOR UNIFIED PRESENTATION OF DATA
2y 5m to grant Granted Feb 10, 2026
Patent 12536573
SYSTEMS AND METHODS FOR EVENT DETECTION AND RELATION TO CATALOG ITEMS
3y 12m to grant Granted Jan 27, 2026
Patent 12518310
AUTOMATIC ITEM GROUPING AND PERSONALIZED DEPARTMENT LAYOUT SYSTEM AND METHOD FOR REORDER RECOMMENDATIONS
2y 0m to grant Granted Jan 06, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
50%
Grant Probability
99%
With Interview (+53.2%)
2y 9m (~9m remaining)
Median Time to Grant
Low
PTA Risk
Based on 107 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month