Prosecution Insights
Last updated: October 22, 2026
Application No. 18/942,934

METHODS AND DEVICES FOR QUERY SPLITTING BASED ON DEVICE DISPLAY DIMENSIONS

Non-Final OA §103
Filed
Nov 11, 2024
Examiner
ZHAO, YU
Art Unit
2169
Tech Center
2100 — Computer Architecture & Software
Assignee
Shopify Inc.
OA Round
2 (Non-Final)
53%
Grant Probability
Moderate
2-3
OA Rounds
2y 2m
Est. Remaining
93%
With Interview

Examiner Intelligence

Grants 53% of resolved cases
53%
Career Allowance Rate
194 granted / 369 resolved
-2.4% vs TC avg
Strong +41% interview lift
Without
With
+40.7%
Interview Lift
resolved cases with interview
Typical timeline
4y 1m
Avg Prosecution
6 currently pending
Career history
381
Total Applications
across all art units

Statute-Specific Performance

§101
20.1%
-19.9% vs TC avg
§103
59.1%
+19.1% vs TC avg
§102
4.6%
-35.4% vs TC avg
§112
10.7%
-29.3% vs TC avg
Black line = Tech Center average estimate • Based on career data from 369 resolved cases

Office Action

§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 . Response to Amendment Acknowledgment is made of applicant’s amendment filed on 24 April 2026. Claims 1-20 are presented for examination. Claims 2, 3, 11-19 and 20 are amended. Response to Argument Applicant’s arguments filed in the amendment filed on 24 April 2026, have been considered but are moot because the arguments do not apply to any of the references being used in the current rejection. Claim Interpretation The following is a quotation of 35 U.S.C. 112(f): (f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof. The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) is invoked. As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f): (A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function; (B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and (C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function. Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f). The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f), is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function. Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f). The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f), is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function. Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f), except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f), except as otherwise indicated in an Office action. For claim 20, claim limitations “…the processing being configured to: obtain…,” “…the processing being configured to: responsive…,” have been interpreted under 35 U.S.C. 112(f) because they use a generic placeholder “configured to” coupled with functional language “obtain,” “responsive” and “responsive” without reciting sufficient structure to achieve the function. Furthermore, the generic placeholder is not preceded by a structural modifier. Since the claim limitation(s) invokes 35 U.S.C. 112(f), claim 20 has been interpreted to cover the corresponding structure described in the specification that achieves the claimed function, and equivalents thereof. Claim Rejections - 35 USC § 103 The following is a quotation of pre-AIA 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent may not be obtained though the invention is not identically disclosed or described as set forth in section 102 of this title, if the differences between the subject matter sought to be patented and the prior art are such that the subject matter as a whole would have been obvious at the time the invention was made to a person having ordinary skill in the art to which said subject matter pertains. Patentability shall not be negatived by the manner in which the invention was made. Claims 1-3, 5-8, 10-13, 15-18 and 20 are rejected under pre-AIA 35 U.S.C. 103(a) as being unpatentable over Christoph et al. (U.S. Pub. No.: US 20220342517, hereinafter Christoph), in view of Srinivasan et al. (U.S. Pub. No.: U.S. 20250045276, hereinafter Srinivasan). For claim 1, Christoph discloses a computer-implemented method comprising: obtaining a viewport size for displaying data records on a display associated with a client device (Christoph: paragraph [0018], “The display sizes may, as noted, vary among the computing devices 104A-C. And, even among similar devices, the display size may vary. For example, a first device and a second device may have the same physical display size, but each device may be configured differently so that the viewable or usable display size area for presenting information differs between the first and second devices. To illustrate further, the first device may be configured to have a resolution of 1080 pixels by 1920 pixels and the second device may be configured to have a resolution of 600 pixels by 800 pixels. As this example illustrates, differences in display size may be due to a variety of factors, such as the physical display size of a screen, the resolution configured at the device, user preference, a size of a user interface being used to view the information (e.g., the size of a user interface view or window may be re-sized on a display screen), and the like. As used herein, the phrase “display size” refers to the size of an area that is being used for the presentation of information, such as database table data.” paragraph [0019], “[0019] The database 110 may format the database table data based on (e.g., in response to) the display size being used at the display 106A. For example, the computing device 104A may provide display size information to the database 110, so that the database 110 can format the database table data (e.g., “data”) responsive to the query in a format based on the given display size. To illustrate further, the display size information (e.g., 1,920 pixels by 1080 pixels, size of window, etc.) of computing device 104A may be provided as part of the query sent to the database 110 or at other times as well (e.g., during the registration of the computing device 104A with the database management system, etc.). As used herein, responsive table data refers to table data from a database table that is formatted at least in part based on the display size of the computing device presenting the table data. Although the previous example refers to the database 110 formatting the table data based on the display size, a display controller at the computing device 104A may also format, based on the display size information of computing device 104A, the database table data.”); responsive to a user query for a plurality of data records, sending a coordinated set of requests to a data server for retrieving the plurality of data records, the coordinated set of request includes: a first request for retrieving a first subset of the plurality of data records, based on the user query and the viewport size (Christoph: paragraph [0017], “[0017] For example, the user interface 108A may send (via network 150) to the database management system 110 a request or a query for at least a portion of the database table data from Table A 102D, so that the computing device 104A/user interface 108A can perform one or more operations (e.g., present, scroll, delete, copy, move, etc.) on that data. In response to the request or the query, the database management system 110 (or more simply “database”) may provide at least a portion of the database table data to the computing device 104A including the user interface 108A to enable at least presentation of that data.” paragraph [0019], “[0019] The database 110 may format the database table data based on (e.g., in response to) the display size being used at the display 106A. WHERE “a first request…based on the user query and the viewport size” is broadly interpreted as “a request or a query for at least a portion of the database table data from Table A 102D” and “format the database table data based on (e.g., in response to) the display size being used at the display 106A.”); a second request for retrieving a set of partial data records for the plurality of data records, based on the user query and one or more critical information fields of the plurality of data records (Christoph: paragraph [0017], “[0017] For example, the user interface 108A may send (via network 150) to the database management system 110 a request or a query for at least a portion of the database table data from Table A 102D, so that the computing device 104A/user interface 108A can perform one or more operations (e.g., present, scroll, delete, copy, move, etc.) on that data. In response to the request or the query, the database management system 110 (or more simply “database”) may provide at least a portion of the database table data to the computing device 104A including the user interface 108A to enable at least presentation of that data.” paragraph [0019], “[0019] The database 110 may format the database table data based on (e.g., in response to) the display size being used at the display 106A.” paragraph [0031], “Given 1000 records in the database table and a display size large enough to present only 19 records at a time, a user may initially filter the 1000 entries based on for example, “all purchase orders on June 14 and 16 of 2018.”…” paragraph [0034], “At 504, a user interface including table data may be presented at a computing device. For example, the computing device 104A may present at least the portion of table data (or more simply data) retrieved at 502. The data may, as noted, be formatted in response to the display size of the display 106A as shown at FIG. 2A and/or the filtering of FIG. 4” WHERE “a second request…based on the user query and one or more critical information fields of the plurality of data records” is broadly interpreted as “the filtering.”); and a third request for retrieving at least a remainder of the plurality of data records, based on the user query (Christoph: paragraph [0022], “…The responsive table data provided to the computing device may be provided by the database in response to a database query or a request for the data, in response to a scrolling through one or more rows of the database table being presented at the computing device, in response to a request for more data to be presented at the computing device, and/or provided in response to other operations. ” paragraph [0038], “In response to the first user interface element 254A (which indicates that all of the data items in the database table stored at database 110 should be selected by the select all operation), the user interface 108A may provides, at 510, the selection information to the database 110. This indicates to the database 110 that all of the data items of the database table 102D have been selected. In the example of FIG. 2B, all 1000 rows are selected. In some implementations, the database may provide some (if not all) of the selected rows to the computing device 104A (if those data for the selected rows has not been previously provided to the computing device).” WHERE “a third request for retrieving at least a remainder of the plurality of data records” is broadly interpreted as “in response to a scrolling through one or more rows of the database table being presented at the computing device, in response to a request for more data to be presented at the computing device” and “In response to…the select all operation)…”); responsive to receiving at least the first subset of the plurality of data records and the set of partial data records, providing the first subset of the plurality of data records to be viewable in a viewport via the display associated with the client device (Christoph: paragraph [0031], “…Given 1000 records in the database table and a display size large enough to present only 19 records at a time, a user may initially filter the 1000 entries based on for example, “all purchase orders on June 14 and 16 of 2018.” The result set may only include 11 records as shown at FIG. 4...” paragraph [0033], “…In some embodiments, the computing device 104A may retrieve, at 502, a portion of a data table from a data store. For example, the data store may be, as noted, stored at database 110 and accessed via network 150, or the data store may be stored locally (e.g., either at the computing device or on a local area network coupled to the computing device 104A). The portion of the data table may be determined based on one or more factors, such as the display size (e.g., the 19 rows of the data table presented at FIG. 2A) and/or a quantity of filtered rows (e.g., the 11 filtered rows noted above with respect to FIG. 4)...” paragraph [0034], “…At 504, a user interface including table data may be presented at a computing device. For example, the computing device 104A may present at least the portion of table data (or more simply data) retrieved at 502. The data may, as noted, be formatted in response to the display size of the display 106A as shown at FIG. 2A and/or the filtering of FIG. 4…”); and responsive to receiving at least the remainder of the plurality of data records, providing the remainder of the plurality of data records for output via the display associated with the client device (Christoph: paragraph [0022], “…The responsive table data provided to the computing device may be provided by the database in response to a database query or a request for the data, in response to a scrolling through one or more rows of the database table being presented at the computing device, in response to a request for more data to be presented at the computing device, and/or provided in response to other operations. ” paragraph [0038], “In response to the first user interface element 254A (which indicates that all of the data items in the database table stored at database 110 should be selected by the select all operation), the user interface 108A may provides, at 510, the selection information to the database 110. This indicates to the database 110 that all of the data items of the database table 102D have been selected. In the example of FIG. 2B, all 1000 rows are selected. In some implementations, the database may provide some (if not all) of the selected rows to the computing device 104A (if those data for the selected rows has not been previously provided to the computing device).” WHERE “the remainder of the plurality of data records” is broadly interpreted as “in response to a scrolling through one or more rows of the database table being presented at the computing device, in response to a request for more data to be presented at the computing device” and “provides, at 510, the selection information to the database… database may provide some (if not all) of the selected rows to the computing device 104A (if those data for the selected rows has not been previously provided to the computing device”). However, Christoph does not explicitly disclose a coordinated set of requests. Srinivasan discloses a coordinated set of requests (Srinivasan: paragraph [0160], “Example 10. A system comprising memory and one or more processors communicatively coupled to the memory, the one or more processors configured to receive a federated query that references one or more data segments from a plurality of third-party data sources; receive an execution plan for the federated query, wherein the execution plan comprises a plurality of executable tasks for resolving the federated query, and the plurality of executable tasks comprises (i) a set of data accessing tasks for accessing the one or more data segments from the plurality of third-party data sources and (ii) a set of data processing tasks for processing the one or more data segments to generate a result set for the federated query; receive, using the set of data accessing tasks, the one or more data segments from the plurality of third-party data sources and quality evaluation data for the one or more data segments; generate, using the set of data processing tasks, the result set for the federated query based on the one or more data segments; generate quality metrics data for the one or more data segments based on the quality evaluation data; and generate an augmented result set for the federated query based on the result set and the quality metrics data” WHERE “coordinated set of requests” is broadly interpreted as “comprises a plurality of executable tasks” where each “executable tasks” retrieves data from data source(s)). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to improve upon “SELECTING ALL ITEMS OR DISPLAYED ITEMS” as taught by Christoph by implementing “QUALITY EVALUATION AND AUGMENTATION OF DATA PROVIDED BY A FEDERATED QUERY SYSTEM” as taught by Srinivasan, because it would provide Christoph’s method with the enhanced capability of “…The execution strategy may be designed to optimize the resolution of a federated query by breaking the federated query into a plurality of serializable units of work (e.g., compute tasks) that may be distributed among one or more compute nodes…” (Srinivasan et al.: paragraph [0058]) For claim 2, Christoph and Srinivasan disclose the method of claim 1, wherein the third request is a request for retrieving a second subset of the plurality of data records that is the remainder of the plurality of data records excluding the first subset of the plurality of data records (Christoph: paragraph [0022], “…The responsive table data provided to the computing device may be provided by the database in response to a database query or a request for the data, in response to a scrolling through one or more rows of the database table being presented at the computing device, in response to a request for more data to be presented at the computing device, and/or provided in response to other operations. ” paragraph [0038], “In response to the first user interface element 254A (which indicates that all of the data items in the database table stored at database 110 should be selected by the select all operation), the user interface 108A may provides, at 510, the selection information to the database 110. This indicates to the database 110 that all of the data items of the database table 102D have been selected. In the example of FIG. 2B, all 1000 rows are selected. In some implementations, the database may provide some (if not all) of the selected rows to the computing device 104A (if those data for the selected rows has not been previously provided to the computing device).”). For claim 3, Christoph and Srinivasan disclose the method of claim 1, wherein the third request is a request for retrieving the plurality of data records including the first subset of the plurality of data records (Christoph: paragraph [0038], “In response to the first user interface element 254A (which indicates that all of the data items in the database table stored at database 110 should be selected by the select all operation), the user interface 108A may provides, at 510, the selection information to the database 110. This indicates to the database 110 that all of the data items of the database table 102D have been selected. In the example of FIG. 2B, all 1000 rows are selected. In some implementations, the database may provide some (if not all) of the selected rows to the computing device 104A (if those data for the selected rows has not been previously provided to the computing device).”). For claim 5, Christoph discloses the method of claim 1, wherein the viewport is provided within an application, and the viewport size is obtained for a first page when the first page is rendered in the application (Christoph: paragraph [0016], “In the example of FIG. 1, the computing device 104A includes a display 106A. This physical display 106A may have a physical size, which in the case of a desktop computer may be specified in terms of a pixel width and pixel height (e.g., 1,920 pixels by 1080 pixels), although other sizes are possible as well. The computing device 104A may also include a user interface 108A, such as a browser, a client application, and/or other applications configured to present, access, and/or the like database table data at the database management system 110. In the example of FIG. 1, the user interface 108A presents, via the display 106A, database table data 102A (labeled Table A) obtained from one or more tables (e.g., Table A 102D) at the database management system 110” paragraph [0018], “The display sizes may…a size of a user interface being used to view the information (e.g., the size of a user interface view or window may be re-sized on a display screen), and the like. As used herein, the phrase “display size” refers to the size of an area that is being used for the presentation of information, such as database table data.” paragraph [0019], “The database 110 may format the database table data based on (e.g., in response to) the display size being used at the display 106A. For example, the computing device 104A may provide display size information to the database 110, so that the database 110 can format the database table data (e.g., “data”) responsive to the query in a format based on the given display size. To illustrate further, the display size information (e.g., 1,920 pixels by 1080 pixels, size of window, etc.) of computing device 104A may be provided as part of the query sent to the database 110 or at other times as well (e.g., during the registration of the computing device 104A with the database management system, etc.). As used herein, responsive table data refers to table data from a database table that is formatted at least in part based on the display size of the computing device presenting the table data. Although the previous example refers to the database 110 formatting the table data based on the display size, a display controller at the computing device 104A may also format, based on the display size information of computing device 104A, the database table data.”). For claim 6, Christoph and Srinivasan disclose the method of claim 1, wherein obtaining the viewport size comprises: determining the viewport size based on viewport information, wherein the viewport information comprises at least one of: dimensions of the display of the client device; orientation of the display; dimensions of a window of the application; display settings of the application or the client device; or accessibility settings of the application or the client device (Christoph: paragraph [0016], “In the example of FIG. 1, the computing device 104A includes a display 106A. This physical display 106A may have a physical size, which in the case of a desktop computer may be specified in terms of a pixel width and pixel height (e.g., 1,920 pixels by 1080 pixels), although other sizes are possible as well. The computing device 104A may also include a user interface 108A, such as a browser, a client application, and/or other applications configured to present, access, and/or the like database table data at the database management system 110. In the example of FIG. 1, the user interface 108A presents, via the display 106A, database table data 102A (labeled Table A) obtained from one or more tables (e.g., Table A 102D) at the database management system 110” paragraph [0018], “The display sizes may…a size of a user interface being used to view the information (e.g., the size of a user interface view or window may be re-sized on a display screen), and the like. As used herein, the phrase “display size” refers to the size of an area that is being used for the presentation of information, such as database table data.” paragraph [0019], “The database 110 may format the database table data based on (e.g., in response to) the display size being used at the display 106A. For example, the computing device 104A may provide display size information to the database 110, so that the database 110 can format the database table data (e.g., “data”) responsive to the query in a format based on the given display size. To illustrate further, the display size information (e.g., 1,920 pixels by 1080 pixels, size of window, etc.) of computing device 104A may be provided as part of the query sent to the database 110 or at other times as well (e.g., during the registration of the computing device 104A with the database management system, etc.). As used herein, responsive table data refers to table data from a database table that is formatted at least in part based on the display size of the computing device presenting the table data. Although the previous example refers to the database 110 formatting the table data based on the display size, a display controller at the computing device 104A may also format, based on the display size information of computing device 104A, the database table data.”). For claim 7, Christoph and Srinivasan disclose the method of claim 1, wherein obtaining the viewport size comprises determining the viewport size based on viewport information comprising dimensions of one or more user interface (UI) elements of the application (Christoph: paragraph [0016], “In the example of FIG. 1, the computing device 104A includes a display 106A. This physical display 106A may have a physical size, which in the case of a desktop computer may be specified in terms of a pixel width and pixel height (e.g., 1,920 pixels by 1080 pixels), although other sizes are possible as well. The computing device 104A may also include a user interface 108A, such as a browser, a client application, and/or other applications configured to present, access, and/or the like database table data at the database management system 110. In the example of FIG. 1, the user interface 108A presents, via the display 106A, database table data 102A (labeled Table A) obtained from one or more tables (e.g., Table A 102D) at the database management system 110” paragraph [0018], “The display sizes may…a size of a user interface being used to view the information (e.g., the size of a user interface view or window may be re-sized on a display screen), and the like. As used herein, the phrase “display size” refers to the size of an area that is being used for the presentation of information, such as database table data.” paragraph [0019], “The database 110 may format the database table data based on (e.g., in response to) the display size being used at the display 106A. For example, the computing device 104A may provide display size information to the database 110, so that the database 110 can format the database table data (e.g., “data”) responsive to the query in a format based on the given display size. To illustrate further, the display size information (e.g., 1,920 pixels by 1080 pixels, size of window, etc.) of computing device 104A may be provided as part of the query sent to the database 110 or at other times as well (e.g., during the registration of the computing device 104A with the database management system, etc.). As used herein, responsive table data refers to table data from a database table that is formatted at least in part based on the display size of the computing device presenting the table data. Although the previous example refers to the database 110 formatting the table data based on the display size, a display controller at the computing device 104A may also format, based on the display size information of computing device 104A, the database table data.”). For claim 8, Christoph and Srinivasan disclose the method of claim 1, wherein the viewport size includes a viewport width and a viewport height (Christoph: paragraph [0016], “In the example of FIG. 1, the computing device 104A includes a display 106A. This physical display 106A may have a physical size, which in the case of a desktop computer may be specified in terms of a pixel width and pixel height (e.g., 1,920 pixels by 1080 pixels), although other sizes are possible as well. The computing device 104A may also include a user interface 108A, such as a browser, a client application, and/or other applications configured to present, access, and/or the like database table data at the database management system 110. In the example of FIG. 1, the user interface 108A presents, via the display 106A, database table data 102A (labeled Table A) obtained from one or more tables (e.g., Table A 102D) at the database management system 110” paragraph [0018], “The display sizes may…a size of a user interface being used to view the information (e.g., the size of a user interface view or window may be re-sized on a display screen), and the like. As used herein, the phrase “display size” refers to the size of an area that is being used for the presentation of information, such as database table data.” paragraph [0019], “The database 110 may format the database table data based on (e.g., in response to) the display size being used at the display 106A. For example, the computing device 104A may provide display size information to the database 110, so that the database 110 can format the database table data (e.g., “data”) responsive to the query in a format based on the given display size. To illustrate further, the display size information (e.g., 1,920 pixels by 1080 pixels, size of window, etc.) of computing device 104A may be provided as part of the query sent to the database 110 or at other times as well (e.g., during the registration of the computing device 104A with the database management system, etc.). As used herein, responsive table data refers to table data from a database table that is formatted at least in part based on the display size of the computing device presenting the table data. Although the previous example refers to the database 110 formatting the table data based on the display size, a display controller at the computing device 104A may also format, based on the display size information of computing device 104A, the database table data.”). For claim 10, Christoph and Srinivasan disclose the method of claim 1, wherein the third request is sent after receiving at least the set of partial data records, and wherein the third request is generated based on information in the one or more critical information fields retrieved in the set of partial data records (Christoph: paragraph [0022], “…The responsive table data provided to the computing device may be provided by the database in response to a database query or a request for the data, in response to a scrolling through one or more rows of the database table being presented at the computing device, in response to a request for more data to be presented at the computing device, and/or provided in response to other operations. ” paragraph [0038], “In response to the first user interface element 254A (which indicates that all of the data items in the database table stored at database 110 should be selected by the select all operation), the user interface 108A may provides, at 510, the selection information to the database 110. This indicates to the database 110 that all of the data items of the database table 102D have been selected. In the example of FIG. 2B, all 1000 rows are selected. In some implementations, the database may provide some (if not all) of the selected rows to the computing device 104A (if those data for the selected rows has not been previously provided to the computing device).”) For claim 11, it is a computer product claim (“A non-transitory computer-readable medium”) having similar limitations as recited in claim 1. Thus, claim 11 is also rejected under the same rationale as cited in the rejection of rejected claim 1. Further, Christoph discloses a non-transitory computer-readable medium storing instructions that, when executed by a processing unit of a computing system, cause the computing system (Christoph: paragraph [0020], “…the computing device 104B includes a display 106B having a certain physical size, which may be different (or the same) in size when compared to the displays 106A and/or 106C…the entire data table 102D may be sent to the computing device 104B and stored in a local memory” paragraph [0041], “…The system 600 can include a processor 610, a memory 620, a storage device 630, and an input/output device 640. Each of the components 610, 620, 630 and 640 can be interconnected using a system bus 650. The processor 610 can be configured to process instructions for execution within the system 600. In some implementations, the processor 610 can be a single-threaded processor. In alternate implementations, the processor 610 can be a multi-threaded processor. The processor 610 can be further configured to process instructions stored in the memory 620 or on the storage device 630, including receiving or sending information through the input/output device 640. …”) For claim 12, it is a computer product claim having similar limitations as recited in claim 2. Thus, claim 12 is also rejected under the same rationale as cited in the rejection of rejected claim 2. For claim 13, it is a computer product claim having similar limitations as recited in claim 3. Thus, claim 13 is also rejected under the same rationale as cited in the rejection of rejected claim 3. For claim 15, it is a computer product claim having similar limitations as recited in claim 5. Thus, claim 15 is also rejected under the same rationale as cited in the rejection of rejected claim 5. For claim 16, it is a computer product claim having similar limitations as recited in claim 6. Thus, claim 16 is also rejected under the same rationale as cited in the rejection of rejected claim 6. For claim 17, it is a computer product claim having similar limitations as recited in claim 7. Thus, claim 17 is also rejected under the same rationale as cited in the rejection of rejected claim 7. For claim 18, it is a computer product claim having similar limitations as recited in claim 8. Thus, claim 18 is also rejected under the same rationale as cited in the rejection of rejected claim 8. For claim 20, it is am apparatus claim having similar limitations as recited in claim 1. Thus, claim 20 is also rejected under the same rationale as cited in the rejection of rejected claim 1. Further, Christoph discloses a processing unit communicatively coupled to a display device, the processing unit (Christoph: paragraph [0020], “…the computing device 104B includes a display 106B having a certain physical size, which may be different (or the same) in size when compared to the displays 106A and/or 106C…the entire data table 102D may be sent to the computing device 104B and stored in a local memory” paragraph [0041], “…The system 600 can include a processor 610, a memory 620, a storage device 630, and an input/output device 640. Each of the components 610, 620, 630 and 640 can be interconnected using a system bus 650. The processor 610 can be configured to process instructions for execution within the system 600. In some implementations, the processor 610 can be a single-threaded processor. In alternate implementations, the processor 610 can be a multi-threaded processor. The processor 610 can be further configured to process instructions stored in the memory 620 or on the storage device 630, including receiving or sending information through the input/output device 640…”). Claims 4, 9, 14 and 19 are rejected under pre-AIA 35 U.S.C. 103(a) as being unpatentable over Christoph et al. (U.S. Pub. No.: US 20220342517, hereinafter Christoph), in view of Srinivasan et al. (U.S. Pub. No.: U.S. 20250045276, hereinafter Srinivasan), and further in view of Sethi et al. (U.S. Pub. No.: U.S. 20120159393). For claim 4, Christoph and Srinivasan disclose the method of claim 1, further comprising: prior to sending the first request: determining a number of rows of the plurality of data records that are viewable in the viewport based on the viewport size and a row height; (Christoph: paragraph [0016], “…In the example of FIG. 1, the computing device 104A includes a display 106A. This physical display 106A may have a physical size, which in the case of a desktop computer may be specified in terms of a pixel width and pixel height (e.g., 1,920 pixels by 1080 pixels), although other sizes are possible as well. The computing device 104A may also include a user interface 108A, such as a browser, a client application, and/or other applications configured to present, access, and/or the like database table data at the database management system 110. In the example of FIG. 1, the user interface 108A presents, via the display 106A, database table data 102A (labeled Table A) obtained from one or more tables (e.g., Table A 102D) at the database management system 110.” paragraph [0024], “…In the example of FIG. 2A, the database table 102D stored at database 110 includes 1000 rows (e.g., data which may be stored as records) as indicated at 210A, but only 19 rows (as indicated by 210B) are being presented by the user interface 108A via the display 106A of the computing device 104A. In this example, the display size corresponds to 19 rows…” paragraph [0033], “…In some embodiments, the computing device 104A may retrieve, at 502, a portion of a data table from a data store. For example, the data store may be, as noted, stored at database 110 and accessed via network 150, or the data store may be stored locally (e.g., either at the computing device or on a local area network coupled to the computing device 104A). The portion of the data table may be determined based on one or more factors, such as the display size (e.g., the 19 rows of the data table presented at FIG. 2A) and/or a quantity of filtered rows (e.g., the 11 filtered rows noted above with respect to FIG. 4)...”). However, Christoph does not explicitly disclose storing the determined number of rows in a local cache. Sethi discloses storing the determined number of rows in a local cache (Sethi: paragraph [0013], “…handle large datasets without storing the entire dataset on a client device. An embodiment of the invention loads data viewable by a user at any time and binds the data to UI elements. As the user scrolls, navigates, or gestures in any direction (i.e., up/down) within a data list view to traverse a large dataset, embodiments of the invention dynamically fetch additional pages of data so as to give the user the impression that the additional pages are already loaded and available to be displayed/viewed. For example, `scroll behind` and `scroll ahead` data pages are fetched when user navigates to a currently-viewed page. Such scroll ahead and scroll behind pages include fetched data corresponding to one page of data prior to and after the currently viewed page…The fetched data corresponds to primary keys stored locally on the mobile device. The data fetching and displaying methods, systems, and computer program products serve as a mechanism to efficiently fetch portions of large datasets from servers as users of mobile devices navigate through a list view of the datasets…” paragraph [0013], “…In the exemplary data fetching and displaying systems 100 and 200 depicted in FIGS. 1 and 2, fetched rows 126 from database 130, which have been returned in response to a query/input 125, are received at mobile device 160. According to an embodiment of the invention, primary keys 166 corresponding to a dataset 124 are stored locally on the mobile device. In an embodiment, primary keys 166 of dataset 124 are stored in memory for fast access to the records database 130…”). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to improve upon “SELECTING ALL ITEMS OR DISPLAYED ITEMS” as taught by Christoph by implementing “Efficiently Handling Large Data Sets On Mobile Devices” as taught by Sethi, because it would provide Christoph’s modified method with the enhanced capability of “handle large datasets without storing the entire dataset on a client device. An embodiment of the invention loads data viewable by a user at any time and binds the data to UI elements… dynamically fetch additional pages of data so as to give the user the impression that the additional pages are already loaded and available to be displayed/viewed…” (Sethi et al.: paragraph [0013]) For claim 9, Christoph and Srinivasan disclose the method of claim 1. However, Christoph does not explicitly disclose wherein the first request, the second request and the third request all include a common timestamp. Sethi discloses storing the determined number of rows in a local cache (Sethi: paragraph [0013], “…handle large datasets without storing the entire dataset on a client device. An embodiment of the invention loads data viewable by a user at any time and binds the data to UI elements. As the user scrolls, navigates, or gestures in any direction (i.e., up/down) within a data list view to traverse a large dataset, embodiments of the invention dynamically fetch additional pages of data so as to give the user the impression that the additional pages are already loaded and available to be displayed/viewed. For example, `scroll behind` and `scroll ahead` data pages are fetched when user navigates to a currently-viewed page. Such scroll ahead and scroll behind pages include fetched data corresponding to one page of data prior to and after the currently viewed page…The fetched data corresponds to primary keys stored locally on the mobile device. The data fetching and displaying methods, systems, and computer program products serve as a mechanism to efficiently fetch portions of large datasets from servers as users of mobile devices navigate through a list view of the datasets…” paragraph [0013], “…In the exemplary data fetching and displaying systems 100 and 200 depicted in FIGS. 1 and 2, fetched rows 126 from database 130, which have been returned in response to a query/input 125, are received at mobile device 160. According to an embodiment of the invention, primary keys 166 corresponding to a dataset 124 are stored locally on the mobile device. In an embodiment, primary keys 166 of dataset 124 are stored in memory for fast access to the records database 130…” WHERE “scroll behind” “scroll ahead”, and “currently-viewed page” are fetched at the same time). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to improve upon “SELECTING ALL ITEMS OR DISPLAYED ITEMS” as taught by Christoph by implementing “Efficiently Handling Large Data Sets On Mobile Devices” as taught by Sethi, because it would provide Christoph’s modified method with the enhanced capability of “handle large datasets without storing the entire dataset on a client device. An embodiment of the invention loads data viewable by a user at any time and binds the data to UI elements… dynamically fetch additional pages of data so as to give the user the impression that the additional pages are already loaded and available to be displayed/viewed…” (Sethi et al.: paragraph [0013]) For claim 14, it is a computer product claim having similar limitations as recited in claim 4. Thus, claim 14 is also rejected under the same rationale as cited in the rejection of rejected claim 4. For claim 19, it is a computer product claim having similar limitations as recited in claim 9. Thus, claim 19 is also rejected under the same rationale as cited in the rejection of rejected claim 9. Conclusion Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a). A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action. Any inquiry concerning this communication or earlier communications from the examiner should be directed to YU ZHAO whose telephone number is (571)270-3427. The examiner can normally be reached Monday-Friday 9AM-5PM. 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, Sherief Badawi can be reached at (571) 272-9782. 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. /YU ZHAO/Primary Examiner, Art Unit 2169
Read full office action

Prosecution Timeline

Nov 11, 2024
Application Filed
Dec 13, 2025
Non-Final Rejection (signed) — §103
Jan 26, 2026
Non-Final Rejection mailed — §103
Apr 24, 2026
Response Filed
Jun 29, 2026
Final Rejection mailed — §103
Sep 28, 2026
Response after Non-Final Action

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12762196
PROVIDING SEARCH RESULTS BASED ON A COMPOSITIONAL QUERY
3y 0m to grant Granted Oct 13, 2026
Patent 12737320
Method of Generating At-Scale Geospatial Features of Designated Attribution and Geometry
6y 2m to grant Granted Sep 15, 2026
Patent 12711157
RELATIONSHIP REPRESENTATIONS IN A DIGITAL ENVIRONMENT
2y 5m to grant Granted Aug 18, 2026
Patent 12699697
SYSTEM AND METHOD FOR PROVIDING MULTI-HUB DATASETS FOR USE WITH DATA ANALYTICS ENVIRONMENTS
3y 11m to grant Granted Aug 04, 2026
Patent 12688178
USER DATA MANAGEMENT SERVER MANAGING BIOMETRIC DATA FOR EACH DRIVER IN VEHICLE SHARING SYSTEM
2y 4m to grant Granted Jul 21, 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

2-3
Expected OA Rounds
53%
Grant Probability
93%
With Interview (+40.7%)
4y 1m (~2y 2m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 369 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