DETAILED ACTION
1. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
2. This action is in response to amendment filed on 4/7/2026, in which claims 1 and 11 was amended, and claims 1 – 20 was presented for examination.
3. Claims 1 – 20 are now pending in the application.
Response to Arguments
4. Applicant's arguments filed 4/7/2026 have been fully considered but they are not persuasive. (see Remarks below).
Remarks
5.1 As per rejection of claims 1 and 11 under nonstatutory double patenting, applicants’ argue in substance in page 6 that the claims are statutory based on the amended features of “wherein the timestamp indicates when the query was originated by the software widget”.
Examiner respectfully disagrees.
In response to applicant’s argument, Examiner respectfully responds that the amended features does not make the claim statutory because the amended features only defined one of the attribute of the query. Thus the rejection is maintained.
5.2 As per amended claims 1 and 11, applicant argues in substance in pages 6 – 8 that Guedalia et al (US 2009/0307300 A1), Barraclough et al (US 2015/0347179 A1), and f McCall (US 2007/0067352 A1) does not disclose dynamically determining, by the API, a priority level for each of the multiple queries based on query attributes and software widget attributes, wherein the query attributes include: at least a timestamp associated with each respective query, wherein the timestamp indicates when the query was originated by the software widget.
Examiner respectively disagrees.
In response to applicants’ argument, Examiner respectfully responds that the combine teaching of Guedalia et al (US 2009/0307300 A1), Barraclough et al (US 2015/0347179 A1), and f McCall (US 2007/0067352 A1) specifically disclose each and every features of clams 1 and 11 including the features of dynamically determining, by the API, a priority level for each of the multiple queries based on query attributes and software widget attributes, wherein the query attributes include: at least a timestamp associated with each respective query, wherein the timestamp indicates when the query was originated by the software widget (Guedalia; para.[0032] – [0033] and para.[0039] and McCall: para.[0069 – para.[0074]).
Guedalia disclose the process of searching and updating widgets on client mobile devices. Users may select first widget to query or update another widget on the device. The query is extracted and requested operation is performed on one or more widgets (see para.[0005]). The widget request may be queued based on one or more factors (see para.[0034]). The factors may be based on the order in which the widget was selected (see para.[0039]).
Thus, prioritizing of widget based on selection order is interpreted as “timestamp indicates when the query was originated by the software”.
McCall discloses database management system. A receiving query on the database, execute the query, and return result to the requesting entity (see para.[0013] – para.[0016]). An application submitted a query, the query are the put on queue. The queue holds plurality of queries. The queries in the queue are monitored by CPU. The CPU assigned an identifier to each query in the queue which indicates the priority of each query (see para.[0068 – para.[0069]). The query may be prioritized based on time associated with the query (see para.[0074]).
Thus, the rejection is maintained.
Double Patenting
6. The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1 and 11 are rejected on the ground of nonstatutory double patenting as being unpatentable over claim 1 of U.S. Patent No. US 12,235,902 B2. Although the claims at issue are not identical, they are not patentably distinct from each other because both applications are directed to the same subject matter of assigning priority to various application executing on a mobile device based on the application metadata and query metadata. However, the patent application includes additional limitations of simultaneous submission of query for processing which was not included in claim 1 of the instant application and limitation of “a rate at which the software widget is used relative to at least an additional software widget of the software widgets, and a rate of change of software widget data displayed by the software widget” which was not included in claim 11 of the instant application. It would have been obvious to one of ordinary skill in the art before the invention was filed to includes additional attribute that such as rate of change of software widget of patent application in the instant application to further explained additional attribute associated with software widget.
Instant Application #: 19/061,247
Patent #: US 12,235,902 B2
1. A computer-implemented method for executing database queries originating from mobile applications, the method comprising: receiving, by an application programming interface (API) executing on a mobile device, multiple queries for data stored in a database maintained on the mobile device, the queries originating from software widgets of mobile applications executing on the mobile device; dynamically determining, by the API, a priority level for each of the multiple queries based on query attributes and software widget attributes, wherein the query attributes include at least a timestamp associated with each respective query, wherein the timestamp indicates when the query was originated by the software widget, and wherein the software widget attributes include visibility of a respective software widget on a display of the mobile device; storing each of the multiple queries in a data buffer along with a respective associated priority level until processing resources of the mobile device are available; and executing, by the API, the queries stored in the data buffer against the database based at least in part on the dynamically determined levels of priority.
1. A computer implemented method comprising: determining, by an application programming interface, software widgets executing on respective mobile applications on a mobile device; receiving, by the application programming interface executing on the mobile device, a plurality of queries, from the software widgets, for data from a database stored on the mobile device, the plurality of queries including two or more substantially simultaneous queries submitted to the database; determining, by the application programming interface, a software widget attribute of each respective software widget of the software widgets that submitted the two or more substantially simultaneous queries to the database, the software widget attribute including a visibility characteristic of the software widget at a first time and at least one of a rate at which the software widget is used relative to at least an additional software widget of the software widgets, and a rate of change of software widget data displayed by the software widget; determining, by the application programming interface, a level of priority for each query of the plurality of queries based on the software widget attribute of each respective software widget; adjusting, by the application programming interface, the level of priority based on a change of the visibility characteristic of the software widget at a second time; providing, by the application programming interface, each of the plurality of queries for storage in a data buffer until processing resources of the mobile device are available to process one or more of the plurality of queries; and processing each query of the plurality of queries against the database stored on the mobile device based on the level of priority that is adjusted.
11. A computer-implemented method for executing database queries originating from mobile applications, the method comprising: detecting, by an application programming interface (API) on a mobile device, substantially simultaneous queries for accessing a database stored on the mobile device, the queries generated by different software widgets within a mobile application; assigning, by the API, a priority ranking to each respective query based on a timestamp associated with the generation of the respective query, wherein the timestamp indicates when the query was originated by the software, and based on visibility of the respective software widget generating the respective query on a user interface displayed on the mobile device; buffering, by the API, the queries in a data buffer according to their respective assigned priority rankings; dynamically adjusting the priority ranking of one or more of the buffered queries in response to a change in at least one of query attributes or software widget attributes; and executing the buffered queries against the database in an order determined by their respective dynamically adjusted priority rankings.
1. A computer implemented method comprising: determining, by an application programming interface, software widgets executing on respective mobile applications on a mobile device; receiving, by the application programming interface executing on the mobile device, a plurality of queries, from the software widgets, for data from a database stored on the mobile device, the plurality of queries including two or more substantially simultaneous queries submitted to the database; determining, by the application programming interface, a software widget attribute of each respective software widget of the software widgets that submitted the two or more substantially simultaneous queries to the database, the software widget attribute including a visibility characteristic of the software widget at a first time and at least one of a rate at which the software widget is used relative to at least an additional software widget of the software widgets, and a rate of change of software widget data displayed by the software widget; determining, by the application programming interface, a level of priority for each query of the plurality of queries based on the software widget attribute of each respective software widget; adjusting, by the application programming interface, the level of priority based on a change of the visibility characteristic of the software widget at a second time; providing, by the application programming interface, each of the plurality of queries for storage in a data buffer until processing resources of the mobile device are available to process one or more of the plurality of queries; and processing each query of the plurality of queries against the database stored on the mobile device based on the level of priority that is adjusted.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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.
7. Claims 1 – 7 and 9 are rejected under 35 U.S.C. 103 as being unpatentable over Guedalia et al (US 2009/0307300 A1), in view of Barraclough et al (US 2015/0347179 A1), and further in view of McCall (US 2007/0067352 A1).
As per claim 1, Guedalia et al (US 2009/0307300 A1) discloses,
A computer-implemented method for executing database queries originating from mobile applications (para.[0005]; “receive a query from at least one of the widgets” and para.[0014]; “executing an application on a mobile device according to an embodiment. As illustrated by FIG. 1, a mobile device 100 may include one or more applications”).
the method comprising: receiving, by an application programming interface (API) executing on a mobile device (para.[0005]; “mobile device may include one or more widgets, a widget framework configured to receive a query from at least one of the widgets” and para.[0032]; “widget 405 may initiate 505 a query to the widget framework 410. For example, a widget 405 may invoke an API to initiate 505 a HTTP GET query to the widget framework”).
multiple queries for data stored in a database maintained on the mobile device (para.[0030]; “destination server 425 may process queries issued by a widget” and para.[0038]; “widget framework may transmit 610 the first query to the encapsulate application. Similarly, the second widget may request 615 an update from a specified destination server”).
the queries originating from software widgets of mobile applications executing on the mobile device (para.[0005]; “a widget framework configured to receive a query from at least one of the widgets”).
dynamically determining, by the API, a priority level for each of the multiple queries based on query attributes and software widget attributes (para.[0032]; “widget 405 may initiate 505 a query to the widget framework 410. For example, a widget 405 may invoke an API to initiate 505 a HTTP GET query to the widget framework, para.[0033]; ”encapsulator application 440 may transmit 520 the encapsulated query to the multiplexer server”, and para.[0039]; “the encapsulator application may prioritize 625 the requests ……. encapsulator application
may send … an encapsulated query to the multiplexer server”).
wherein the query attributes include at least a timestamp associated with each respective query (para.[0032]; “A user may select 500 one or more widgets 405 to execute on a mobile device 400. The widget 405 may initiate 505 a query to the widget framework” and para.[0039]; “the encapsulator application may prioritize 625 the requests based on the order in which they were selected”).
wherein the timestamp indicates when the query was originated by the software (para.[0039]; “the encapsulator application may prioritize 625 the requests based on the order in which they were selected”, where on order of selection of widget is interpreted as “timestamp indicates when the query was originated by the software” as claimed).
Guedalia does not specifically disclose wherein the software widget attributes include visibility of a respective software widget on a display of the mobile device.
However, Barraclough et al (US 2015/0347179 A1) in an analogous art discloses,
and wherein the software widget attributes include visibility of a respective software widget on a display of the mobile device (para.[0172]; “application module changing from foreground view to background view, the priority level of the application module is assigned to a lower priority level ………… the application module associated with an inactive window is assigned to the zero tier level”, where foreground and background view is interpreted as “visibility” as claimed).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of application process of the system of Barraclough into access management of application on a mobile device of the system of Guedalia to allocate resources to application executing of a mobile device, thereby enabling distribution of computing resources based on user needs.
Neither Guedalia nor Barraclough specifically disclose storing each of the multiple queries in a data buffer along with a respective associated priority level until processing resources of the mobile device are available, and executing, by the API, the queries stored in the data buffer against the database based at least in part on the dynamically determined levels of priority.
However, McCall (US 2007/0067352 A1) in an analogous art discloses,
wherein the query attributes include at least a timestamp associated with each respective query (NOTE: para.[0074]; “the most emphasis is placed on the time that port 3 received query”).
wherein the timestamp indicates when the query was originated by the software (NOTE: para.[0069]; “each query 5 in queue 12 includes an identifier, the identifier being assigned by CPU”, para.[0071]; “The application 4 that submitted query 5 was
received”, and para.[0072]; “CPU 6 is programmed to identify certain types of query
as more important than others, and assign an identifier indicative of a higher priority tier to a more important query”).
storing each of the multiple queries in a data buffer along with a respective associated priority level until processing resources of the mobile device are available (para.[0068]; “queue … holds a plurality of queries”, where queue is analogous to “buffer” as claimed, para.[0069]; “each query 5 in queue 12 includes an identifier, …. query 5. The identifier is indicative of a priority tier for that query 5, ……. prioritizing queries 5 in queue” and para.[0085]; “selected by reference to the time received query 5 was received, the application 4 that sent received query 5, the nature of received query 5, and the priority tiers of any other queries in queue”).
and executing, by the API, the queries stored in the data buffer against the database based at least in part on the dynamically determined levels of priority (para.[0069]; “prioritizing queries 5 in queue”, para.[0091]; “CPU 6 allocates a session 7 from register 12 to received query 5 at 25, and received query 5 is processed”, para.[0098]; “database 2 for processing a query 5. As soon as the query is processed”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritizing of application process of the system of Barraclough to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 2, the rejection of claim 1 is incorporated and further McCall (US 2007/0067352 A1) discloses,
wherein the query attributes include an identifier of the software widget that originated the query (para.[0085]; “the priority tier is a relative rank, and is selected by reference to the time received query 5 was received, the application 4 that sent received query”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritizing of application process of the system of Barraclough to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 3, the rejection of claim 1 is incorporated and further Barraclough et al (US 2015/0347179 A1) discloses,
wherein the software widget attributes include a rate of change of data displayed by the respective software widget (para.[0156]; “assigns a priority level to each process and upon detection of a decreased activity level of the process, assigning the process to a lower priority level”, where decreasing priority level of application with decrease in activity level is interpreted as “rate of change of data displayed by the respective software widget” as claimed).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of application process of the system of Barraclough into a prioritizing of query of the system of McCall to allocate resources to application executing on a mobile device, thereby enabling distribution of computing resources based on user needs.
As per claim 4, the rejection of claim 1 is incorporated and further Guedalia et al (US 2009/0307300 A1) discloses,
wherein the priority levels are determined based at least on part on applying a default order of preference for the query attributes and for the software widget attributes (para.[0039]; “the encapsulator application may prioritize 625 the requests based on the order in which they were selected”).
As per claim 5, the rejection of claim 1 is incorporated and further Barraclough et al (US 2015/0347179 A1) discloses,
comprising adjusting the priority level of at least one query when the respective software widget generating the at least one query becomes visible or invisible on the display of the mobile device (para.[0017]; “application assigns the lowest priority level when a window process changes from the foreground to background view. This allows the computer operating system to suspend inactive background window process and more efficiently utilize its processing capabilities when running the browser application”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of application process of the system of Barraclough into a prioritizing of query of the system of McCall to allocate resources to application executing on a mobile device, thereby enabling distribution of computing resources based on user needs.
As per claim 6, the rejection of claim 1 is incorporated and further Guedalia et al (US 2009/0307300 A1) discloses,
wherein the buffering includes storing data describing the priority level in a memory location separate from the data buffer (para.[0016]; “a library 110 may store information associated with one or more applications on a
mobile device. For example, a library 110 may store a name, application type, unique identifier, application capabilities and/or other information associated with an application”).
As per claim 7, the rejection of claim 1 is incorporated and further McCall (US 2007/0067352 A1) discloses,
comprising providing user-configurable settings to customize a weight assigned to at least one query attribute and to at least one software widget attribute in determining the level of priority (para.[0072]; “identify certain types of query as more important than others, and assign an identifier indicative of a higher priority tier to a more important query”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritizing of application process of the system of Barraclough to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 9, the rejection of claim 1 is incorporated and further McCall (US 2007/0067352 A1)
wherein processing resources of the mobile device are considered sufficiently available when execution of the buffered queries is estimated to occur without collisions (para.[0086]; “If there are any other queries 5 in queue 14, CPU 6 puts received query 5 in queue 14 at 28. If there are no other queries in queue 14, CPU 6 moves on to decision”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritizing of application process of the system of Barraclough to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
8. Claims 8 and 10 are rejected under 35 U.S.C. 103 as being unpatentable over Guedalia et al (US 2009/0307300 A1), in view of Barraclough et al (US 2015/0347179 A1), in view of McCall (US 2007/0067352 A1), and further in view of Hassan et al (US 2005/0187971 A1).
As per claim 8, the rejection of claim 1 is incorporated, Guedalia et al (US 2009/0307300 A1), Barraclough et al (US 2015/0347179 A1), and McCall (US 2007/0067352 A1) does not specifically disclose wherein the database stored on the mobile device comprises a mirrored copy of a remote enterprise database.
However, Hassan et al (US 2005/0187971 A1) in an analogous art discloses,
wherein the database stored on the mobile device comprises a mirrored copy of a remote enterprise database (para.[0015]; “Copies of the data stored in the local application database 18, along with additional related data, may also be stored in the
application database 24 associated with the server 14, referred to herein as the server application database”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate having similar copies of application on both mobile devices and server of the system of Hassan into prioritizing of query of the system of McCall and prioritizing of the application process of the system of Barraclough to provide up-to-date information to requesting entity.
As per claim 10, the rejection of claim 1 is incorporated, Guedalia et al (US 2009/0307300 A1), Barraclough et al (US 2015/0347179 A1), and McCall (US 2007/0067352 A1) does not specifically disclose wherein the executed queries are synchronized with a remote database upon successful execution.
However, Hassan et al (US 2005/0187971 A1) in an analogous art discloses,
wherein the executed queries are synchronized with a remote database upon successful execution (para.[0015]; “the data in the local application database 18 may be synchronized with the data in the server application database”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate having similar copies of application on both mobile devices and server of the system of Hassan into prioritizing of query of the system of McCall and prioritizing of the application process of the system of Barraclough to provide up-to-date information to requesting entity.
9. Claims 11 – 20 are rejected under 35 U.S.C. 103 as being unpatentable over Guedalia et al (US 2009/0307300 A1), in view of Mehra (US 2016/0065673 A1), in view of Barraclough et al (US 2015/0347179 A1), and further in view of McCall (US 2007/0067352 A1).
As per claim 11, Guedalia et al (US 2009/0307300 A1) discloses,
A computer-implemented method for executing database queries originating from mobile applications (para.[0005]; “receive a query from at least one of the widgets” and para.[0014]; “executing an application on a mobile device according to an embodiment. As illustrated by FIG. 1, a mobile device 100 may include one or more applications”).
the method comprising: detecting, by an application programming interface (API) on a mobile device (para.[0005]; “mobile device may include one or more widgets, a widget framework configured to receive a query from at least one of the widgets” and para.[0032]; “widget 405 may initiate 505 a query to the widget framework 410. …. a widget 405 may invoke an API to initiate 505 a HTTP GET query to the widget framework”).
the queries generated by different software widgets within a mobile application (para.[0005]; “a widget framework configured to receive a query from at least one of the widgets”).
assigning, by the API, a priority ranking to each respective query based on a timestamp associated with the generation of the respective query (para.[0032]; “A user may select 500 one or more widgets 405 to execute on a mobile device 400. The widget 405 may initiate 505 a query to the widget framework” and para.[0039]; “the encapsulator application may prioritize 625 the requests based on the order in which they were selected”).
wherein the timestamp indicates when the query was originated by the software (para.[0039]; “the encapsulator application may prioritize 625 the requests based on the order in which they were selected”, where on order of selection of widget is interpreted as “timestamp indicates when the query was originated by the software” as claimed).
Guedalia does not specifically disclose substantially simultaneous queries for accessing a database stored on the mobile device.
However, Mehra (US 2016/0065673 A1) in an analogous art discloses,
substantially simultaneous queries for accessing a database stored on the mobile device (para.[0121]; “determine whether two or more of the applications 403, 405, 407 are competing applications that request retrieval transmission of one or more of the data sets 425 at approximately the same time (that is, when there are two or more simultaneously pending requests for the data from the IMDG)”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate simultaneous request of the system of Mehra into access management of application on a mobile device of the system of Guedalia to resolve priority in retrieval request by multiple applications for allowing execution of an important request over request that may be open for execution delay.
Neither Guedalia et al (US 2009/0307300 A1) nor Mehra (US 2016/0065673 A1) specifically disclose based on visibility of the respective software widget generating the respective query on a user interface displayed on the mobile device.
However, Barraclough et al (US 2015/0347179 A1) in an analogous art discloses,
and based on visibility of the respective software widget generating the respective query on a user interface displayed on the mobile device (para.[0017]; “application assigns the lowest priority level when a window process changes from the foreground to background view. This allows the computer operating system to suspend inactive background window process and more efficiently utilize its processing capabilities when running the browser application”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of application process of the system of Barraclough into simultaneous request of the system of Mehra to allocate resources to application executing on a mobile device, thereby enabling distribution of computing resources based on user needs.
Neither Guedalia et al (US 2009/0307300 A1) nor Mehra (US 2016/0065673 A1) nor Barraclough et al (US 2015/0347179 A1) specifically disclose buffering, by the API, the queries in a data buffer according to their respective assigned priority rankings, dynamically adjusting the priority ranking of one or more of the buffered queries in response to a change in at least one of query attributes or software widget attributes, and executing the buffered queries against the database in an order determined by their respective dynamically adjusted priority rankings.
However, McCall (US 2007/0067352 A1) in an analogous art discloses,
assigning, by the API, a priority ranking to each respective query based on a timestamp associated with the generation of the respective query (NOTE: para.[0069]; “prioritizing queries 5 in queue” and para.[0074]; “the most emphasis is placed on the time that port 3 received query”).
wherein the timestamp indicates when the query was originated by the software (NOTE: para.[0069]; “each query 5 in queue 12 includes an identifier, the identifier being assigned by CPU”, para.[0071]; “The application 4 that submitted query 5 was
received”, and para.[0072]; “CPU 6 is programmed to identify certain types of query
as more important than others, and assign an identifier indicative of a higher priority tier to a more important query”)
buffering, by the API, the queries in a data buffer according to their respective assigned priority rankings (para.[0069]; “prioritizing queries 5 in queue”).
dynamically adjusting the priority ranking of one or more of the buffered queries in response to a change in at least one of query attributes or software widget attributes (para.[0069]; “each query 5 in queue 12 includes an identifier, …. query 5. The identifier is indicative of a priority tier for that query 5, ……. prioritizing queries 5 in queue”).
and executing the buffered queries against the database in an order determined by their respective dynamically adjusted priority rankings (para.[0069]; “prioritizing queries 5 in queue”, para.[0091]; “CPU 6 allocates a session 7 from register 12 to received query 5 at 25, and received query 5 is processed”, para.[0098]; “database 2 for processing a query 5. As soon as the query is processed”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritization of an application request of the system of Barraclough and simultaneous request of the system of Mehra to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 12, the rejection of claim 11 is incorporated and further Barraclough et al (US 2015/0347179 A1) discloses,
wherein the substantially simultaneous queries are generated when a mobile application is opened and populates multiple fields in a user interface (para.[0044]; “The request prioritizer 213 can play a very important
role in large deployments with thousands of applications accessing the same in-memory space. The request prioritizer 213 can use one or more of various different approaches when prioritizing requests”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritization of an application request of the system of Barraclough and simultaneous request of the system of Mehra to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 13, the rejection of claim 11 is incorporated and further Barraclough et al (US 2015/0347179 A1) discloses,
wherein the visibility of the respective software widget is determined based at least in part on whether the widget is located within a currently visible portion of the user interface (para.[0172]; “application module changing from foreground view to background view, the priority level of the application module is assigned to a lower priority level ………… the application module associated with an inactive window is assigned to the zero tier level”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritization of an application request of the system of Barraclough and simultaneous request of the system of Mehra to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 14, the rejection of claim 11 is incorporated and further McCall (US 2007/0067352 A1) discloses,
wherein the timestamp associated with the respective query indicates a time at which the respective query was generated by the software widget para.[0068]; “queue … holds a plurality of queries”, para.[0069]; “each query 5 in queue 12 includes an identifier, …. query 5. The identifier is indicative of a priority tier for that query 5, ……. prioritizing queries 5 in queue” and para.[0085]; “selected by reference to the time received query 5 was received, the application 4 that sent received query 5, the nature of received query 5, and the priority tiers of any other queries in queue”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritization of an application request of the system of Barraclough and simultaneous request of the system of Mehra to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 15, the rejection of claim 11 is incorporated and further Barraclough et al (US 2015/0347179 A1) discloses,
wherein the dynamically adjusted priority ranking is based at least in part on user interactions with the mobile application (para.[0017]; “application assigns the lowest priority level when a window process changes from the foreground to background view. This allows the computer operating system to suspend inactive background window process and more efficiently utilize its processing capabilities when running the browser application”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritization of an application request of the system of Barraclough and simultaneous request of the system of Mehra to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 16, the rejection of claim 11 is incorporated and further Barraclough et al (US 2015/0347179 A1) discloses,
wherein the buffered queries are executed in an order such that queries generated by visible software widgets are prioritized over queries generated by invisible software widgets (para.[0017]; “application assigns the lowest priority level when a window process changes from the foreground to background view. This allows the computer operating system to suspend inactive background window process and more efficiently utilize its processing capabilities when running the browser application”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritization of an application request of the system of Barraclough and simultaneous request of the system of Mehra to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 17, the rejection of claim 11 is incorporated and further McCall (US 2007/0067352 A1) discloses,
wherein dynamically adjusting the priority ranking of a buffered query includes evaluating a user-specified preference to prioritize queries based on the timestamp over visibility (para.[0085]; “the priority tier is a relative rank, and is selected by reference to the time received query 5 was received, the application 4 that sent received query”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritization of an application request of the system of Barraclough and simultaneous request of the system of Mehra to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 18, the rejection of claim 11 is incorporated and further McCall (US 2007/0067352 A1) discloses,
comprising adjusting the execution order of the queries in response to scrolling actions performed by the user that alter the visibility of software widgets (para.[0085]; “the priority tier is a relative rank, and is selected by reference to the time received query 5 was received, the application 4 that sent received query”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritization of an application request of the system of Barraclough and simultaneous request of the system of Mehra to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 19, the rejection of claim 11 is incorporated and further McCall (US 2007/0067352 A1) discloses,
comprising detecting collisions among the buffered queries and reordering the priority rankings to avoid future collisions (para.[0086]; “If there are any other queries 5 in queue 14, CPU 6 puts received query 5 in queue 14 at 28. If there are no other queries in queue 14, CPU 6 moves on to decision”).
Therefore, it would have been obvious to one of ordinary skill in the art before the invention was filed to incorporate prioritizing of query of the system of McCall into prioritization of an application request of the system of Barraclough and simultaneous request of the system of Mehra to manage query processing whereby query with high priority can provide immediate resources for execution without starving the other queries.
As per claim 20, the rejection of claim 11 is incorporated and further Guedalia et al (US 2009/0307300 A1) discloses,
wherein the queries are executed in real time when processing resources of the mobile device allow execution without causing loss of performance of the mobile application (para.[0032]; “user may select 500 one or more widgets 405 to execute on a mobile device 400. The widget 405 may initiate 505 a query to the widget framework 410. ….. a widget 405 may invoke an API to initiate 505 a HTTP GET query to the widget framework”).
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 AUGUSTINE KUNLE OBISESAN whose telephone number is (571)272-2020. The examiner can normally be reached 9:00am - 5:00.
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, Ajay Bhatia can be reached at (571) 272-3906. 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.
/AUGUSTINE K. OBISESAN/
Primary Examiner
Art Unit 2156
5/2/2026