DETAILED ACTION
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 12/11/2025 has been entered.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Priority
For the purpose of examination herein, the applicant's claim for priority based on a certified copy of an application filed in India on December 1st, 2021 and retrieved by the U.S. Patent and Trademark Office is acknowledged.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1, 6-11 and 21 are rejected under 35 U.S.C. 103 as being unpatentable over Hooton et al. (US 2017/0235436 A1) and in view of Jung et al. (US 2019/0171566 A1).
Regarding Claim 1, modified Hooton teaches:
A data management system that performs runtime generation of multi-entity reports from a multi-tenant database without intermingling of data (See Hooton ¶ [0104-0107] - describes the system allowing users of a respective storage space that stores multiple business related applications in a multi-tenant storage environment access to business related data stored in said storage via a user interface and [0294-0296] - describes the system performing runtime operations), the data management system comprising:
one or more processors (See Hooton ¶ [0060] - describes a system that is implemented by processing elements [processors] that execute instructions that are stored in a storage element);
one or more volatile memory devices (As the specification of the instant application uses random access memory [RAM] as an example of volatile memory devices, see Hooton ¶ [0345] – any of the software functions of Hooton are stored on RAM);
the multi-tenant database that stores a plurality of datasets that are respectively associated with a plurality of different database client entities associated with a database host entity, and wherein the multi-tenant database stores the plurality of datasets separately from one another (See Hooton ¶ [0104-0107] - describes the system allowing users of a respective storage space that stores multiple business related applications in a multi-tenant storage environment access to business related data stored in said storage via a user interface, wherein said data includes business related data sets such as Enterprise Resource Planning, Human Resources, payroll, accounting, time and billing, etc., thereby showing datasets by example and [0109] – the multi-tenant platform is server based and “hosts” client applications); and
one or more non-transitory computer-readable media that store instructions that, when executed by the one or more processors, cause the data management system to perform operations (See Hooton ¶ [0060] - describes a system that is implemented by processing elements that execute instructions that are stored in a storage element), the operations comprising:
receiving request data comprising a request for one or more reports associated with two or more of the database client entities (See Hooton ¶ [0092] - describes the system generating reports and displaying the data in said reports to a manager for analysis, [0097] - describes the system processing multiple types of business information, including professional services automation and payroll and [0103-0104] – a variety of clients communicating with distributed computing service/ multi-tenant business data processing platform);
accessing, based at least in part on the request data, data associated with the plurality of database client entities, wherein the data is stored in the multi-tenant database in which the plurality of datasets respectively associated with the plurality of database client entities are stored separately from one another (See Hooton ¶ [0103-0107] - describes the system allowing users [clients] of a respective storage space that stores multiple business related applications in a multi-tenant storage environment access to business related data stored in said storage via a user interface, wherein said data includes business related data sets such as Enterprise Resource Planning, Human Resources, payroll, accounting, time and billing, etc.);
merging into a temporary reporting dataset, during one or more runtime operations (See Hooton ¶ [0294-0296] - describes the system performing runtime operations and [0318 and Table T4] - describes the system using temporary data mapping in a temporary cache), at least a portion of each of two or more of the plurality of datasets that are respectively associated with the two or more of the plurality of database client entities (See Hooton ¶ [0104-0107] - the organizational data from a plurality of tenant clients and [0287] - describes the system combining data fields from various business related data sets, such as Enterprise Resource Planning, Human Resources, payroll, accounting, time and billing, etc. as shown above) wherein the one or more runtime operations are performed using the one or more volatile memory devices (See Hooton ¶ [0294-0296] - describes the system performing runtime operations, [0318 and Table T4] - describes the system using temporary data mapping in a temporary cache and [0345] – any of the software functions of Hooton are stored on RAM);
generating, during the one or more runtime operations, the one or more reports associated with the two or more of the database client entities based on the temporary reporting dataset (See Hooton ¶ [0092-0093] - describes the system generating reports and displaying the data in said reports to a manager for analysis, wherein said displayed data comprises data objects for tenant users [clients] of a multi-tenant business data processing system, [0193-0197] - describes the system classifying data objects, which include payroll as noted in ¶ [0287], and sorting them into temporary storage, wherein said sorted data objects are output in real-time to a user interface to be displayed to a user, [0294-0296] - describes the system performing runtime operations and [0318 and Table T4] - describes the system using temporary data mapping in a temporary cache);
providing the one or more reports as an output (See Hooton ¶ [0092-0093] - describes the system generating reports and displaying the data in said reports to a manager for analysis, wherein said displayed data comprises data objects for tenant users [clients] of a multi-tenant business data processing system) and
…
While Hooton teaches a system for creating reports for a professional employer organization by creating one or more data object during runtime operations (Hooton ¶ [0092-0093], [0104-0107], [0287] and [0294-0296]), Hooton does not explicitly teach responsive to termination of the one or more runtime operations, interrupting power to the one or more volatile memory devices resulting in a loss of data stored during the one or more runtime operations. This is taught by Jung (See Jung ¶ [0068] - Once the service is completed [termination of the one or more runtime operations by example] and a completion result is submitted to the CQ paired with the SQ, … and informs the host of an event over a message signaled interrupt (MSI) in step … the host then jumps to an interrupt service routine and [0090] - Since the memory controlling device may remove the MMF and file system support, data in an SSD-internal DRAM may be lost upon the power failure). It would have been obvious to one of ordinary skill in the art before the effective filing date of the instant application to include in the professional employee service providing and organizing data processing during runtime operations system of Hooton the use of power interruption and data loss after termination of runtime operations as taught by Jung to improve the performance of datacenters and high-performance computers (Colgrove ¶ [0003]), thereby improving the efficiency of Hooton’s report creating system.
Regarding Claim 6, modified Hooton teaches:
The data management system of claim 1, wherein the temporary reporting dataset is exclusively stored on one or more volatile memory devices (See Hooton ¶ [0211] - describes the system saving records of reclassification/ grouping of data objects to a master database, [0318 and Table T4] - describes the system using temporary data mapping in a temporary cache [file] and [0343] - describes the system using a memory that embodies a tangible computer readable medium).
Regarding Claim 7, modified Hooton teaches:
The data management system of claim 1, wherein the one or more runtime operations are performed iteratively over one or more iterations, and wherein the one or more runtime operations comprise validating the one or more reports after each of the one or more iterations (Hooton shows this through example at ¶ [0294-0296] - describes the system ranking runtime values of parameters of data objects through multiple iterations, wherein said iterations are sorted in a ranked order that changes dynamically with the parameters of said data objects and [0300-0301] and Table T1 - describes the system mapping said data objects into a grid [report] in a form of numerical order, which is considered as a validation step for the purpose of examination).
Regarding Claim 8, modified Hooton teaches:
The data management system of claim 1, wherein the one or more runtime operations are only performed after the request data is accessed and before the output is generated (See ¶ [0258-0262] - describes the system requesting data through a sorting update, wherein only the data essential to the sorting request is represented in the user interface and [0294-0296] - describes the system sorting data objects based on runtime values of parameters of data objects through multiple iterations).
Regarding Claim 9, modified Hooton teaches:
The data management system of claim 1, wherein:
merging, during one or more runtime operations, at least the portion of each of the two or more of the plurality of datasets comprises generating during the one or more runtime operations, one or more entity data objects, the one or more entity data objects including the first data object and the second data object (See Hooton ¶ [0092-0093] - describes the system generating reports and displaying the data in said reports to a manager for analysis, wherein said displayed data comprises data objects for tenant users [clients] of a multi-tenant business data processing system, [0104-0107] - the organizational data from a plurality of tenant clients and [0274-0287] - describes the system combining data fields from various business related data sets [objects], such as Enterprise Resource Planning, Human Resources, payroll, accounting, time and billing, etc. as shown above, wherein a new dataset based on the combined data fields is saved as a new data record to a database); and
generating, during the one or more runtime operations, the one or more reports comprises determining the one or more reports based at least in part on the one or more new entity objects (See Hooton as shown above regarding claim 1 and ¶ [0267-0268] - describes the system creating new data records based on the new data sort or classification records, wherein said new data records can then be processed/ analyzed by the system).
Regarding Claim 10, modified Hooton teaches:
The data management system of claim 1, wherein the plurality of datasets comprise a plurality of different data models (See Hooton ¶ [0325-0326] - describes the system using different data models for a suite of applications: ERP, eCommerce, CRM, etc. and Fig. 13 – showing said different models).
Regarding Claim 11, modified Hooton teaches:
The data management system of claim 1, wherein the plurality of datasets comprise a plurality of different data graphs (See Hooton ¶ [0325-0326] - describes the system using different data models for a suite of applications: ERP, eCommerce, CRM, etc. and Fig. 13 – showing said different models as data graphs).
Regarding Claim 21, modified Hooton teaches:
The data management system of claim 1, wherein the operations further comprise:
generating, during the one or more runtime operations, a hybrid class based on the two or more of the plurality of datasets that are respectively associated with the two or more of the plurality of database client entities (See Hooton ¶ [0092-0093] - describes the system generating reports and displaying the data in said reports to a manager for analysis, wherein said displayed data comprises data objects for tenant users [clients] of a multi-tenant business data processing system, [0104-0107] - the organizational data from a plurality of tenant clients and [0274-0287] - describes the system combining data fields [hybrid by example] from various business related data sets [objects], such as Enterprise Resource Planning, Human Resources, payroll, accounting, time and billing, etc. as shown above, wherein a new dataset based on the combined data fields is saved as a new data record to a database);
generating, during the one or more runtime operations, a hybrid runtime data object based on the temporary reporting dataset and the hybrid class (See Hooton as shown above regarding claim 1 and ¶ [0092-0093], [0104-0107], [0274-0287] and [0267-0268] - describes the system creating new data records based on the new data sort or classification records, wherein said new data records can then be processed/ analyzed by the system); and
generating, during the one or more runtime operations, the one or more reports associated with the two or more of the database client entities based on the hybrid runtime data object (See Hooton ¶ [0092-0093] - describes the system generating reports and displaying the data in said reports to a manager for analysis, wherein said displayed data comprises data objects for tenant users [clients] of a multi-tenant business data processing system, [0193-0197] - describes the system classifying data objects, which include payroll as noted in ¶ [0287], and sorting them into temporary storage, wherein said sorted data objects are output in real-time to a user interface to be displayed to a user, [0274-0287] - describes the system combining data fields [hybrid by example] from various business related data sets [objects], such as Enterprise Resource Planning, Human Resources, payroll, accounting, time and billing, etc. as shown above, wherein a new dataset based on the combined data fields is saved as a new data record to a database and [0294-0296] - describes the system performing runtime operations).
Claims 2-5 and 13-19 are rejected under 35 U.S.C. 103 as being unpatentable over Hooton et al. (US 2017/0235436 A1) in view of Jung et al. (US 2019/0171566 A1) and Guenther (US 2015/0228032 A1).
Regarding Claim 2, modified Hooton teaches:
The computing system of claim 1, wherein the operations comprise:
… temporary reporting … (See Hooton ¶ [0193-0197] - describes the system classifying data objects, which include payroll as noted in ¶ [0287], and sorting them into temporary storage, wherein said sorted data objects are output in real-time to a user interface to be displayed to a user).
While Hooton teaches a system for creating reports for a professional employer organization by creating one or more data object (Hooton ¶ [0092-0093], [0104-0107] and [0287]), Hooton does not explicitly teach obtaining, based at least in part on the request data, location-specific data comprising location-specific information for one or more regions associated with the one or more reports and the database host entity; and
selecting certain portions of the two or more of the plurality of datasets of the data for inclusion in the … dataset based at least in part on the location-specific information for the one or more regions. This is taught by Guenther (See ¶ [0055] - describes a payroll processing system classifying data objects regarding regulations for at least a particular country [location] and a particular entity and [0058-0069] - describes the system gathering tax related data, which is an example of location-specific information, for an employee of an employer in a particular country over a particular period of time and send said tax related data to a corresponding tax authority). It would have been obvious to one of ordinary skill in the art before the effective filing date of the instant application to include in the professional employee service providing and organizing data processing system of Hooton the ability to organize data with respect to a region and location-specific requirements of said region that said employees are operating in as taught by Guenther since they both share characteristics and capabilities, namely, they are both directed to payroll processing systems, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding Claim 3, modified Hooton teaches:
The computing system of claim 2, (See claim 2 above)
While Hooton teaches a system for creating reports for a professional employer organization by creating one or more data object (Hooton ¶ [0092-0093], [0104-0107] and [0287]), Hooton does not explicitly teach location-specific data comprises data indicating, for each of the regions, whether the region is a client region or a host reporting region. This is taught by Guenther (The specification of the instant application gives no description of a client region or a host region. For the purpose of examination, said client region is interpreted as a data object regarding a particular employee, which in context of the claim is understood as the impact of regulations on said particular employee and said host region is interpreted as a data object regarding a particular employer. Therefore, see ¶ [0058-0069] - describes the system gathering tax related data for an employee of an employer in a particular country over a particular period of time and send said tax related data to a corresponding tax authority and [0157] - describes an employer dataset used by the system). It would have been obvious to one of ordinary skill in the art before the effective filing date of the instant application to include in the professional employee service providing and organizing data processing system of Hooton the ability to organize data with respect to a region said employees are operating in as taught by Guenther since they both share characteristics and capabilities, namely, they are both directed to payroll processing systems, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding Claim 4, modified Hooton teaches:
The data management system of claim 3, wherein the … data is stored in a mapping file evaluated by a hybrid class (See Hooton ¶ [0274-0287] - describes the system combining data fields [hybrid class by example] from various business related data sets [objects], such as Enterprise Resource Planning, Human Resources, payroll, accounting, time and billing, etc. as shown above, wherein a new dataset based on the combined data fields is saved as a new data record to a database and [0318 and Table T4] - describes the system using temporary data mapping in a temporary cache).
While Hooton teaches a system for creating reports for a professional employer organization by creating one or more data object (Hooton ¶ [0092-0093], [0104-0107] and [0287]), Hooton does not explicitly teach that the data is location-specific. This is taught by Guenther (See ¶ [0055] - describes a payroll processing system classifying data objects regarding regulations for at least a particular country [location] and a particular entity and [0058-0069] - describes the system gathering tax related data, which is an example of location-specific information, for an employee of an employer in a particular country over a particular period of time and send said tax related data to a corresponding tax authority). It would have been obvious to one of ordinary skill in the art before the effective filing date of the instant application to include in the professional employee service providing and organizing data processing system of Hooton the ability to organize data with respect to a region and location-specific requirements of said region that said employees are operating in as taught by Guenther since they both share characteristics and capabilities, namely, they are both directed to payroll processing systems, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding Claim 5, modified Hooton teaches:
The data management system of claim 1 (See claim 1 above), wherein the operations comprise: ….
While Hooton teaches a system for creating reports for a professional employer organization by creating one or more data object using temporary datasets (Hooton ¶ [0092-0093], [0104-0107], [0287] and [0318 and Table T4]), Hooton does not explicitly teach subsequent to generating the one or more reports, deleting said temporary reporting dataset. This is taught by Guenther (See ¶ [0051] - describes a server deleting access to a data source through Open Data Protocol). It would have been obvious to one of ordinary skill in the art to include in the professional employee service providing and organizing data processing system of Hooton the ability to organize data with respect to selectable data fields including a region and location-specific requirements of said region that said employees are operating in as taught by Guenther since they both share characteristics and capabilities, namely, they are both directed to payroll processing systems, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding Claim 13, modified Hooton teaches:
The data management system of claim 1, wherein the operations comprise:
generating a graphical user interface comprising one or more interface elements associated with the one or more reports, wherein the one or more interface elements are configured to receive one or more inputs (See Hooton ¶ [0104] - describes the system allowing users of a respective storage space that stores multiple business related applications in a multi-tenant storage environment access to business related data stored in said storage via a user interface, wherein said interface is customizable for each tenant [user input]);
receiving the one or more inputs; and
performing, based at least in part on the one or more inputs, one or more interface operations on the one or more reports (See Hooton ¶ [0020-0024] - describes the system receiving inputs from users through a display to move data objects selected for processing);
wherein the one or more interface operations comprise …, modifying a report (See Hooton ¶ [0093] - describes the system allowing data modifications through a drag and drop user interface), or sending a report to one or more remote computing devices (See Hooton ¶ [0127] - describes the system accessing data remotely over a network via computing devices).
While Hooton teaches a system for creating reports for a professional employer organization by creating one or more data object (Hooton ¶ [0092-0093], [0104-0107] and [0287]), Hooton does not explicitly teach deleting a report. This is taught by Guenther (See ¶ [0051] - describes a server deleting access to a data source through Open Data Protocol). It would have been obvious to one of ordinary skill in the art to include in the professional employee service providing and organizing data processing system of Hooton the ability to delete datasets as taught by Guenther since the claimed invention is merely a combination of old elements, and in the combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding Claim 14, modified Hooton teaches:
The data management system of claim 1, wherein merging, during the one or more runtime operations, at least the portion of each of the two or more of the plurality of datasets into the temporary reporting dataset comprises selecting the portions of the two or more of the plurality of datasets for inclusion in the temporary reporting dataset … for one of the database client entities with respect to the database host entity (See Hooton as shown above regarding claim 1 and ¶ [0178] - describes the system allowing a user to select any property of a record, which is interpreted as “any portion” of a record for the purpose of examination).
While Hooton teaches a system for creating and sorting [merging] reports for a professional employer organization by creating one or more data object (Hooton ¶ [0092-0093], [0104-0107] and [0287]), Hooton does not explicitly teach that said creation or sorting is based at least in part on a mid-period attribute that indicates a mid-period association date. This is taught by Guenther (See ¶ [0157] - describes the system starting a new model for a payroll process [period] at any particular point in a payroll period or time interval). It would have been obvious to one of ordinary skill in the art to include in the professional employee service providing and organizing data processing system of Hooton the ability to organize data with respect to a mid-period attribute as taught by Guenther since the claimed invention is merely a combination of old elements, and in the combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding Claim 15, modified Hooton teaches:
A computer-implemented method of generating reports at runtime, the computer-implemented method comprising (See Hooton ¶ [0060] - describes a system that is implemented by processing elements that execute instructions that are stored in a storage element and [0294-0296] - describes the system performing runtime operations):
accessing, by a data management system comprising one or more processors, request data comprising a request for one or more reports associated with a database host entity (See Hooton ¶ [0060] - describes a system that is implemented by processing elements [processors] that execute instructions that are stored in a storage element and [0092-0093] - describes the system generating reports and displaying the data in said reports to a manager for analysis, wherein said displayed data comprises data objects for tenant users of a multi-tenant business data processing system [host database]);
accessing, by the data management system, based at least in part on the request data, a plurality of datasets respectively associated with a plurality of database client entities of the database host entity, wherein the plurality of datasets are stored in a multi-tenant database in which the plurality of datasets are stored separately from one another (See Hooton ¶ [0104-0107] - describes the system allowing users of a respective storage space that stores multiple business related applications in a multi-tenant storage environment access to business related data stored in said storage via a user interface, wherein said data includes business related data sets such as Enterprise Resource Planning, Human Resources, payroll, accounting, time and billing, etc., thereby showing datasets by example and [0109] – the multi-tenant platform is server based and “hosts” client applications);
accessing, by the data management system, based at least in part on the request data, … data comprising … information for one or more regions associated with the host entity (See Hooton ¶ [0290-0291] - describes the system allowing users to specify [request] data for an inventory item regarding two different shipping regions of a 50-mile radius and a 25-mile radius); and
generating, by the data management system, based at least in part on one or more runtime operations performed on the … data associated with the database client entities, the one or more reports associated with the database host entity (See Hooton ¶ [0092-0093] - describes the system generating reports and displaying the data in said reports to a manager for analysis, wherein said displayed data comprises data objects for tenant users [clients] of a multi-tenant business data processing system, [0193-0197] - describes the system classifying data objects, which include payroll as noted in ¶ [0287], and sorting them into temporary storage, wherein said sorted data objects are output in real-time to a user interface to be displayed to a user, [0294-0296] - describes the system performing runtime operations and [0318 and Table T4] - describes the system using temporary data mapping in a temporary cache); and
...
While Hooton teaches a system for creating reports for a professional employer organization by creating one or more data object during runtime operations (Hooton ¶ [0092-0093], [0104-0107], [0287] and [0294-0296]), Hooton does not explicitly teach responsive to termination of the one or more runtime operations, interrupting power to the one or more volatile memory devices resulting in a loss of data stored during the one or more runtime operations. This is taught by Jung (See Jung ¶ [0068] - Once the service is completed [termination of the one or more runtime operations by example] and a completion result is submitted to the CQ paired with the SQ, … and informs the host of an event over a message signaled interrupt (MSI) in step … the host then jumps to an interrupt service routine and [0090] - Since the memory controlling device may remove the MMF and file system support, data in an SSD-internal DRAM may be lost upon the power failure). It would have been obvious to one of ordinary skill in the art before the effective filing date of the instant application to include in the professional employee service providing and organizing data processing during runtime operations system of Hooton the use of power interruption and data loss after termination of runtime operations as taught by Jung to improve the performance of datacenters and high-performance computers (Colgrove ¶ [0003]), thereby improving the efficiency of Hooton’s report creating system.
While Hooton teaches a system for creating reports for a professional employer organization by creating one or more data object (Hooton ¶ [0092-0093], [0104-0107] and [0287]), Hooton does not explicitly teach that the data is location-specific. This is taught by Guenther (See ¶ [0055] - describes a payroll processing system classifying data objects regarding regulations for at least a particular country [location] and a particular entity and [0058-0069] - describes the system gathering tax related data, which is an example of location-specific information, for an employee of an employer in a particular country over a particular period of time and send said tax related data to a corresponding tax authority). It would have been obvious to one of ordinary skill in the art before the effective filing date of the instant application to include in the professional employee service providing and organizing data processing system of Hooton the ability to organize data with respect to a region and location-specific requirements of said region that said employees are operating in as taught by Guenther since they both share characteristics and capabilities, namely, they are both directed to payroll processing systems, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding Claim 16, modified Hooton teaches:
The computer-implemented method of claim 15, wherein generating the one or more reports comprises temporarily merging at least a portion of each of two or more of the plurality of datasets respectively associated with the plurality of database client entities into a temporary reporting dataset (See Hooton ¶ [0104-0107] - the organizational data from a plurality of tenant clients and [0287] - describes the system combining data fields from various business related data sets, such as Enterprise Resource Planning, Human Resources, payroll, accounting, time and billing, etc. as shown above and [0318 and Table T4] - describes the system using temporary data mapping in a temporary cache).
Regarding Claim 17, modified Hooton teaches:
The computer-implemented method of claim 15, wherein the plurality of client entities are respectively associated with a plurality of shards of the organizational data (As there is no special definition of shards of the organizational data in the specification of the instant application, said shards of the organizational data is interpreted as a segment/ portion of a type of business data, therefore, see Hooton ¶ [0081-0083] - describes the system using icons or cards that contain various types of business data that may be expressed as a combination value of types of said business data and [0097] - describes the system processing payroll information among other types of business/ organizational data).
Regarding Claim 18, modified Hooton teaches:
One or more tangible non-transitory computer-readable media storing computer-readable instructions that when executed by one or more processors cause the one or more processors to perform operations (See Hooton ¶ [0060] - describes a system that is implemented by processing elements [processors] that execute instructions that are stored in a storage element), the operations comprising:
receiving request data comprising a request for one or more reports associated with a database host entity (See Hooton ¶ [0092-0093] - describes the system generating reports and displaying the data in said reports to a manager for analysis, wherein said displayed data comprises data objects for tenant users of a multi-tenant business data processing system [host database]);
accessing, based at least in part on the request data, data associated with the database host entity, wherein the data comprises information associated with a plurality of database client entities of the database host entity and one or more regions associated with the entity (See Hooton ¶ [0104-0107] - describes the system allowing users of a respective storage space that stores multiple business related applications in a multi-tenant storage environment access to business related data stored in said storage via a user interface, wherein said data includes business related data sets such as Enterprise Resource Planning, Human Resources, payroll, accounting, time and billing, etc., thereby showing datasets by example, [0109] – the multi-tenant platform is server based and “hosts” client applications and [0290-0291] - describes the system allowing users to specify [request] data for an inventory item regarding two different shipping regions of a 50-mile radius and a 25-mile radius), and wherein the data is stored in a multi-tenant database in which a plurality of datasets of the data that are respectively associated with the plurality of database client entities are stored separately from one another (See Hooton ¶ [0104-0107] - describes the system allowing users of a respective storage space that stores multiple business related applications in a multi-tenant storage environment access to business related data stored in said storage via a user interface, wherein said data includes business related data sets such as Enterprise Resource Planning, Human Resources, payroll, accounting, time and billing, etc., thereby showing datasets by example and [0109] – the multi-tenant platform is server based and “hosts” client applications);
obtaining, based at least in part on the request data, … data comprising … information for the one or more regions associated with the entity (See Hooton ¶ [0290-0291] - describes the system allowing users to specify [request] data for an inventory item regarding two different shipping regions of a 50-mile radius and a 25-mile radius); and
generating, based at least in part on one or more runtime operations performed on the … data associated with the entity, output comprising the one or more reports associated with the database host entity (See Hooton ¶ [0092-0093] - describes the system generating reports and displaying the data in said reports to a manager for analysis, wherein said displayed data comprises data objects for tenant users [clients] of a multi-tenant business data processing system, [0193-0197] - describes the system classifying data objects, which include payroll as noted in ¶ [0287], and sorting them into temporary storage, wherein said sorted data objects are output in real-time to a user interface to be displayed to a user, [0294-0296] - describes the system performing runtime operations and [0318 and Table T4] - describes the system using temporary data mapping in a temporary cache); and
...
While Hooton teaches a system for creating reports for a professional employer organization by creating one or more data object during runtime operations (Hooton ¶ [0092-0093], [0104-0107], [0287] and [0294-0296]), Hooton does not explicitly teach responsive to termination of the one or more runtime operations, interrupting power to the one or more volatile memory devices resulting in a loss of data stored during the one or more runtime operations. This is taught by Jung (See Jung ¶ [0068] - Once the service is completed [termination of the one or more runtime operations by example] and a completion result is submitted to the CQ paired with the SQ, … and informs the host of an event over a message signaled interrupt (MSI) in step … the host then jumps to an interrupt service routine and [0090] - Since the memory controlling device may remove the MMF and file system support, data in an SSD-internal DRAM may be lost upon the power failure). It would have been obvious to one of ordinary skill in the art before the effective filing date of the instant application to include in the professional employee service providing and organizing data processing during runtime operations system of Hooton the use of power interruption and data loss after termination of runtime operations as taught by Jung to improve the performance of datacenters and high-performance computers (Colgrove ¶ [0003]), thereby improving the efficiency of Hooton’s report creating system.
While Hooton teaches a system for creating reports for a professional employer organization by creating one or more data object (Hooton ¶ [0092-0093], [0104-0107] and [0287]), Hooton does not explicitly teach that the data is location-specific. This is taught by Guenther (See ¶ [0055] - describes a payroll processing system classifying data objects regarding regulations for at least a particular country [location] and a particular entity and [0058-0069] - describes the system gathering tax related data, which is an example of location-specific information, for an employee of an employer in a particular country over a particular period of time and send said tax related data to a corresponding tax authority). It would have been obvious to one of ordinary skill in the art before the effective filing date of the instant application to include in the professional employee service providing and organizing data processing system of Hooton the ability to organize data with respect to a region and location-specific requirements of said region that said employees are operating in as taught by Guenther since they both share characteristics and capabilities, namely, they are both directed to payroll processing systems, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding Claim 19, modified Hooton teaches:
The one or more tangible non-transitory computer-readable media of claim 18, wherein the one or more runtime operations are performed without modifying the organizational data or the regulatory data (See Hooton ¶ [0123] - describes the system displaying results of processing raw [unmodified] business data).
Claim 20 is rejected under 35 U.S.C. 103 as being unpatentable over Hooton et al. (US 2017/0235436 A1) in view of Jung et al. (US 2019/0171566 A1), Guenther (US 2015/0228032 A1) and Redlich et al. (US 2010/0250497 A1).
Regarding Claim 20, modified Hooton teaches:
The one or more tangible non-transitory computer-readable media of claim 19, wherein the plurality of datasets are … respectively associated with the plurality of client entities (See modified Hooton regarding claims 18 and 19 above).
While Hooton teaches a system for creating reports for a professional employer organization by creating one or more data object (Hooton ¶ [0092-0093], [0104-0107] and [0287]), Hooton does not explicitly teach that said data is encrypted and configured to be encrypted or decrypted using one of a plurality of encryption keys. This is taught by Redlich (See ¶ [0096] - describes a server based system that uses password keys to decoded encrypted data and [0376] - describes the system processing at least payroll data). It would have been obvious to one of ordinary skill in the art to include in the professional employee service providing and organizing data processing system of Hooton the ability to encrypt and decrypt said data with encryption keys as taught by Redlich since the claimed invention is merely a combination of old elements, and in the combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Response to Arguments
Applicant's arguments filed 12/11/2025 have been fully considered but they are not persuasive.
Rejection under 35 U.S.C. § 112(a):
The amendments to the claims resolve the previous issues concerning 35 U.S.C. § 112(a). Therefore, this rejection is withdrawn.
Rejection under 35 U.S.C. § 101:
The amendments to independent claims 1, 15 and 18 are sufficient in that said claims may be eligible for a patent, therefore the previous rejection under 35 U.S.C. § 101 is withdrawn.
The amendments to independent claims 1, 15 and 18 now reflect an improvement to an entity’s data security and privacy by interrupting power to the one or more volatile memory devices resulting in a loss of data stored during the one or more runtime operations after termination of the one or more runtime operations in the claimed multi-tenant operating environment. This improvement shows integration into a practical application and significantly more than the abstract idea described in the previous rejection under 35 U.S.C. § 101. Therefore, the amended claims of the instant application are considered patent eligible.
Rejection under 35 U.S.C. § 103:
The amendments to independent claims 1, 15 and 18 are sufficient to overcome the Hooton and Colgrove prior art references, therefore the previous rejection under 35 U.S.C. § 103 is withdrawn. The examiner agrees with the applicant in that the previous prior art combination of Hooton and Colgrove does not teach the amended limitations of said independent claims requiring “responsive to termination of the one or more runtime operations, interrupting power to the one or more volatile memory devices resulting in a loss of data stored during the one or more runtime operations.” As such, Colgrove is no longer relied on as a prior art reference.
However, as detailed above in the current rejection under 35 U.S.C. § 103, these amended limitations are taught by the combination of Hooton in view of Jung regarding independent claim 1 and Hooton in view of Jung and Guenther regarding independent claims 15 and 18.
No new arguments are presented for dependent claims 2-11, 13-14, 16-17 and 19-20. Therefore, these dependent claims remain rejected for reasons noted above in the current rejection under 35 U.S.C. § 103 and for their dependency on their respective independent base claims 1, 15 or 18.
New dependent claim 21 is rejected for reasons noted above in the current rejection under 35 U.S.C. § 103.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MATTHEW S WERONSKI whose telephone number is (571)272-5802. The examiner can normally be reached M-F 8 am - 5 pm EST.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Fahd A. Obeid can be reached at 5712703324. 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.
/MATTHEW S WERONSKI/Examiner, Art Unit 3627
/PETER LUDWIG/Primary Examiner, Art Unit 3627