Prosecution Insights
Last updated: July 17, 2026
Application No. 18/751,885

CLOUD CONFIGURATION INTERFACE

Non-Final OA §103
Filed
Jun 24, 2024
Priority
Nov 23, 2021 — divisional of 12/021,712
Examiner
HACKENBERG, RACHEL J
Art Unit
2454
Tech Center
2400 — Computer Networks
Assignee
NCR Voyix Corporation
OA Round
2 (Non-Final)
78%
Grant Probability
Favorable
2-3
OA Rounds
8m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 78% — above average
78%
Career Allowance Rate
243 granted / 310 resolved
+20.4% vs TC avg
Strong +26% interview lift
Without
With
+25.9%
Interview Lift
resolved cases with interview
Typical timeline
2y 9m
Avg Prosecution
23 currently pending
Career history
339
Total Applications
across all art units

Statute-Specific Performance

§101
0.2%
-39.8% vs TC avg
§103
88.9%
+48.9% vs TC avg
§102
3.8%
-36.2% vs TC avg
§112
3.7%
-36.3% vs TC avg
Black line = Tech Center average estimate • Based on career data from 310 resolved cases

Office Action

§103
DETAILED ACTION Notice of AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Response to Arguments Applicant's arguments filed 02/04/2026 have been fully considered. Applicant argues that the amendments (see below) to Claims 1, 13 overcome the 102 rejection in view of Higginson. In response to the argument, Examiner respectfully agrees. Although the argument is persuasive, Higginson still teaches on most of the limitations of Claims 1, 13. The amendments to the claims change the scope of the invention. Higginson also teaches on utilizing commands and parameters through the API to instantiate the service ([0036][0039][0051]). An updated search was conducted and a prior art was discovered to read on the amendments to the claims: US 2017/0272321 A1 (Ramos da Rocha). Higginson teaches on creating templates based on customer databases and utilizing various APIs ([0036][0038][0039]). However, Higginson does not explicitly teach on “translating”. Higginson does not explicitly teach on an interface that uses a syntax and semantics that is independent of each of a plurality of disparate cloud providers and activating an adapter selected from a plurality of adapters to translate the one or more modifications from the cloud-agnostic format into commands and parameters recognized by a target cloud provider. Ramos da Rocha teaches an interface that uses a syntax and semantics that is independent of each of a plurality of disparate cloud providers, ([0051] a user may want to implement a collection of computing resources which includes computing resources in disparate clouds. The first and second computing resources likely will have different, and possibly incompatible, respective APIs. [0068] The cloud user also inputs data indicating a selected cloud . When deploying this database server, native data formats and templates required by different clouds can differ significantly.) and activating an adapter (ie. call API) selected from a plurality of adapters to translate the one or more modifications from the cloud-agnostic format into commands and parameters recognized by a target cloud provider; ([0015] The computing resource attributes can be translated into application program interfaces (APIs ) appropriate for the selected cloud . The APIs can be called from the selected cloud to implement the selected preconfigured objects. [0068] The computing resource attributes can then be translated to one or more respective APIs of the selected cloud. The APIs are configured to implement the database server as at least the part of the selected workload. The APIs in the selected cloud can then be called to implement the database server. [0078][0079] At least a portion of the list of selected service items is translated to one or more respective APIs.) and interacting with an application programming interface (API) of the target cloud provider by sending the commands and the parameters through the API to define and instantiate an instance of the new cloud service in a cloud environment of the target cloud provider. ([0068] The provided methods and apparatus dynamically generate the appropriate computing resource attributes required by the target cloud's native format, based on the received data indicating the selected cloud and the received data the database server is at least the part of the selected workload. The computing resource attributes can then be translated to one or more respective APIs of the selected cloud.) It would have been obvious to modify Higginson per Ramos da Rocha as it would allow the modified system to automatically provide translation of designed templates into customer specific APIs allowing for expedient implementation of the services for the user with assurance of compatibility. Applicant argues that the amendments (see below) to Claim 11 overcome the 103 rejection in view of Higginson in view of Samprathi. In response to the argument, Examiner respectfully agrees. Although the argument is persuasive, Higginson still teaches on most of the limitations of Claim 11. The amendments to the claims changes the scope of the invention. Higginson also teaches on utilizing commands and parameters through the API to instantiate the service ([0036][0039][0051]). An updated search was conducted and a prior art was discovered to read on the amendments to the claims: US 2017/0272321 A1 (Ramos da Rocha). Higginson teaches on creating templates based on customer databases and utilizing various APIs for generating commands/parameter file for the target cloud ([0036][0038][0039]). However, Higginson does not explicitly teach on “translating”. Higginson does not explicitly teach on wherein the adapter translates the one or more user-provided modifications from the cloud-agnostic format into a target cloud provider format for the target cloud provider by translating the one or more properties and the one or more settings into commands and parameters recognized by the target cloud provider. Ramos da Rocha teaches wherein the adapter translates the one or more user-provided modifications from the cloud-agnostic format into a target cloud provider format for the target cloud provider ([0015] The computing resource attributes can be translated into application program interfaces (APIs ) appropriate for the selected cloud. The APIs can be called from the selected cloud to implement the selected preconfigured objects. [0051][0068] The cloud user also inputs data indicating a selected cloud. When deploying this database server, native data formats and templates required by different clouds can differ significantly. The computing resource attributes can then be translated to one or more respective APIs of the selected cloud. The APIs are configured to implement the database server as at least the part of the selected workload. The APIs in the selected cloud can then be called to implement the database server. [0078][0079] At least a portion of the list of selected service items is translated to one or more respective APIs.) by translating the one or more properties and the one or more settings into commands and parameters recognized by the target cloud provider. ([0068] The provided methods and apparatus dynamically generate the appropriate computing resource attributes required by the target cloud' s native format, based on the received data indicating the selected cloud and the received data the database server is at least the part of the selected workload. The computing resource attributes can then be translated to one or more respective APIs of the selected cloud.) It would have been obvious to modify Higginson per Ramos da Rocha as it would allow the modified system to automatically provide translation of designed templates into customer specific APIs allowing for expedient implementation of the services for the user with assurance of compatibility. Please see rejection below: Claim(s) 2-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over US 2017/0351716 Al (Higginson) in view of US 2017/0272321 A1 (Ramos da Rocha). 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. Claim(s) 2-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over US 2017/0351716 Al (Higginson) in view of US 2017/0272321 A1 (Ramos da Rocha). Regarding Claim 2: Higginson teaches A method, comprising: maintaining one or more cloud service definitions for one or more cloud services in a cloud-agnostic format (ie. general configuration database templates); ([0022] A library of catalogues may represent available databases that may be provisioned in a private cloud. The library is a link between the technical specification of each of the databases mapped against the business requirements of an organization. … The catalogue can be made up of database templates that determine the general configuration of databases in terms of software version, database type, database size, database configuration, backup configuration, etc. Each of the catalogues can be considered "transient," in that the parameters of the catalogue can be changed dynamically. [0053] FIG. 9 illustrates how a library including templates and transient templates is managed over time. The library may maintain a list of links to actual databases 904, 906, 908 in the private cloud. A template cleanup process 910 can periodically clean the template library by removing any transient templates that are no longer connected to an active database in the private cloud.) establishing a configuration session with a user; ([0044][0045] FIG. 4, a user interface 400 for a customer for selecting a database type and level. The user interface 400 can load all of the available templates for each database and level available to the customer. When the customer loads the user interface 400, the customer will see database options that are similar to what is already installed and operating on the customer database system. This allows a customer to quickly select a type of database based on its use.) receiving a cloud service identifier for a particular cloud service during the configuration session; ([0044] FIG. 4 illustrates a user interface 400 for selecting a database type and level. [0045] A customer who wants to prototype a new finance database would be able to select the finance database at the silver level. In this example, the user selects the "Finance Gold" database and moves to the next step in the provisioning process.) The user selects "Finance Gold" which is the cloud service identifier. retrieving a particular cloud service definition for the particular cloud service from the one or more cloud service definitions based on the cloud service identifier; ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. When selecting the template, the parameters of the database to be provisioned that are based on the first group of characteristics in the template can be populated with the data values from the template. For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) presenting, to the user during the configuration session, one or more references, one or more properties, and one or more settings for one or more cloud resources based on the particular cloud service definition; ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. … For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) receiving, through an interface that is cloud agnostic (ie. transient template name) and receiving ii) one or more modifications to at least one of the one or more references, the one or more properties, or the one or more settings from the user; ([0038] When a customer requests a new database to be provisioned, a PL/SQL procedure can take all of the parameters for the new database and generate a parameter file. [0039] Next, another parameter file can be constructed that includes information such as a database name, a template name, and so forth. A call can then be made to the OS code to provision the database. [0051] FIG. 8 illustrates transient templates created by the provisioning process. When the variable parameters are completed through user interface 600, a new template, referred to herein as a "transient template," will be created to store the variable parameter values provided by the customer. In some embodiments, every provisioning of a new database in the private cloud will result in the creation of a transient template.) storing the one or more modifications in association with the new cloud service identifier in a cloud service definition for the new cloud service; ([0052] For example, if the customer selects template 514, and then changes one or more of the variable parameter values, a new transient template 808 will be created to store the variable parameter values.) activating an adapter (ie. API) selected from a plurality of adapters ([0036] various APIs) to generate the one or more modifications from the cloud-agnostic format into commands and parameters recognized by a target cloud provider; ([0036] Once all the tests 210, 212, 214 have been performed on the requested template for a newly provisioned database in the private cloud 110, the cloud support platform 120 can operate through various APIs to actually provision the new database in the private cloud 110. [0038] When a customer requests a new database to be provisioned, a PL/SQL procedure can take all of the parameters for the new database and generate a parameter file. The create template process uses the EMCLI API, which reads the parameter file, generates the EMCLI command line for the action, and then runs the action.) and interacting with an application programming interface (API) of the target cloud provider by sending the commands (ie. provisioning instructions) and the parameters ([0051] parameter values) through the API to define and instantiate an instance of the new cloud service in a cloud environment of the target cloud provider. ([0036] Once all the tests 210, 212, 214 have been performed on the requested template for a newly provisioned database in the private cloud 110, the cloud support platform 120 can operate through various APIs to actually provision the new database in the private cloud 110. [0038] When a customer requests a new database to be provisioned, a PL/SQL procedure can take all of the parameters for the new database and generate a parameter file. The create template process uses the EMCLI API, which reads the parameter file, generates the EMCLI command line for the action, and then runs the action. [0039] REST API.) Higginson teaches on creating templates based on customer databases and utilizing various APIs ([0036][0038][0039]). However, Higginson does not explicitly teach on “translating”. Higginson does not explicitly teach on an interface that uses a syntax and semantics that is independent of each of a plurality of disparate cloud providers and activating an adapter selected from a plurality of adapters to translate the one or more modifications from the cloud-agnostic format into commands and parameters recognized by a target cloud provider. Ramos da Rocha teaches, in the same field of endeavor, method may further include receiving a selection of a database template from the plurality of database templates as part of a provisioning request, Abstract. Ramos da Rocha also teaches an interface that uses a syntax and semantics that is independent of each of a plurality of disparate cloud providers, ([0016] a single template can be generated and can be deployed across any of five clouds, instead of the user having to complete five different respective templates (one for each of the five clouds). In examples, implementing a single template which can be dynamically changed based on one or more target clouds for deployment can save the user's time and resources. [0051] a user may want to implement a collection of computing resources which includes computing resources in disparate clouds. The first and second computing resources likely will have different, and possibly incompatible, respective APIs. [0068] The cloud user also inputs data indicating a selected cloud. When deploying this database server, native data formats and templates required by different clouds can differ significantly.) and activating an adapter (ie. call API) selected from a plurality of adapters to translate the one or more modifications from the cloud-agnostic format into commands and parameters recognized by a target cloud provider; ([0015] The computing resource attributes can be translated into application program interfaces (APIs ) appropriate for the selected cloud. The APIs can be called from the selected cloud to implement the selected preconfigured objects. [0068] The computing resource attributes can then be translated to one or more respective APIs of the selected cloud. The APIs are configured to implement the database server as at least the part of the selected workload. The APIs in the selected cloud can then be called to implement the database server. [0078][0079] At least a portion of the list of selected service items is translated to one or more respective APIs.) and interacting with an application programming interface (API) of the target cloud provider by sending the commands and the parameters through the API to define and instantiate an instance of the new cloud service in a cloud environment of the target cloud provider. ([0068] The provided methods and apparatus dynamically generate the appropriate computing resource attributes required by the target cloud' s native format, based on the received data indicating the selected cloud and the received data the database server is at least the part of the selected workload. The computing resource attributes can then be translated to one or more respective APIs of the selected cloud.) It would have been obvious to a person having ordinary skill in the art before the effective filing date, to modify Higginson per Ramos da Rocha to include an interface that uses a syntax and semantics that is independent of each of a plurality of disparate cloud providers and activating an adapter selected from a plurality of adapters to translate the one or more modifications from the cloud-agnostic format into commands and parameters recognized by a target cloud provider. This would have been advantageous as discussed above, as it would allow the modified system to automatically provide translation of designed templates into customer specific APIs allowing for expedient implementation of the services for the user with assurance of compatibility. Regarding Claim 3: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 2 as described. Higginson teaches wherein receiving the one or more modifications further includes receiving at least one of the one or more modifications as a new cloud resource that was not defined in the particular cloud service definition for the particular cloud service. ([0052] For example, if the customer selects template 514, and then changes one or more of the variable parameter values, a new transient template 808 will be created to store the variable parameter values. In this example, the second group of characteristics 810 of the new transient template 808 are different from the second group of characteristics 516 of the template 514, including the database size, the listener port, and the home directory.) Regarding Claim 4: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 2 as described. Higginson teaches wherein receiving the one or more modifications further includes receiving at least one of the one or more modifications as a removal or a deletion of a particular one of the one or more cloud resources. ([0039] Should the customer wish to remove the provisioned database, the database itself also has a URI. The customer can make a simple REST DELETE call to that URI, then monitor that job in the same manner as described above for provisioning the database until the deletion is completed.) Regarding Claim 5: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 2 as described. Higginson teaches wherein receiving the one or more modifications further includes identifying the one or more properties as one or more hardware requirements for the new cloud service within the cloud environment. ([0025] The cloud support platform 120 can identify the physical machines that house the databases 104 and determines characteristics each of the databases 104. These characteristics of the customer database system 102 are used by the cloud support platform 120 to generate a plurality of database templates the functioning describe the hardware/software requirements of each of the databases 104 of the customer database system 102.) Regarding Claim 6: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 2 as described. Higginson teaches wherein receiving the one or more modifications further includes identifying at least one modification as new value for a particular property that is different from a default value associated with the particular property. ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. … For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs. [0051] FIG. 8 illustrates transient templates created by the provisioning process. When the variable parameters are completed through user interface 600, a new template, referred to herein as a "transient template," will be created to store the variable parameter values provided by the customer. In some embodiments, every provisioning of a new database in the private cloud will result in the creation of a transient template.) Regarding Claim 7: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 2 as described. Higginson teaches on creating templates based on customer databases ([0038][0039]). However, Higginson does not explicitly teach on “translating”. Higginson does not explicitly teach on wherein interacting further includes translating the one or more modifications from the cloud-agnostic format to a target cloud platform format recognized by a target cloud platform and providing the one or more modifications in the target cloud platform format to the target cloud provider through the API. Ramos da Rocha teaches wherein interacting further includes translating the one or more modifications from the cloud-agnostic format to a target cloud platform format recognized by a target cloud platform and providing the one or more modifications in the target cloud platform format to the target cloud provider through the API. ([0068] The provided methods and apparatus dynamically generate the appropriate computing resource attributes required by the target cloud' s native format, based on the received data indicating the selected cloud and the received data the database server is at least the part of the selected workload. The computing resource attributes can then be translated to one or more respective APIs of the selected cloud. The APIs are configured to implement the database server as at least the part of the selected workload. The APIs in the selected cloud can then be called to implement the database server.) It would have been obvious to a person having ordinary skill in the art before the effective filing date, to modify Higginson per Ramos da Rocha to include wherein interacting further includes translating the one or more modifications from the cloud-agnostic format to a target cloud platform format recognized by a target cloud platform and providing the one or more modifications in the target cloud platform format to the target cloud provider through the API. This would have been advantageous as discussed above, as it would allow the modified system to automatically provide translation of designed templates into customer specific APIs allowing for expedient implementation of the services for the user with assurance of compatibility. Regarding Claim 8: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 2 as described. Higginson teaches wherein maintaining further includes storing the one or more cloud service definitions in a service definition data structure that is independent of any specific cloud provider format. ([0022] A library of catalogues may represent available databases that may be provisioned in a private cloud. The library is a link between the technical specification of each of the databases mapped against the business requirements of an organization. … The catalogue can be made up of database templates that determine the general configuration of databases in terms of software version, database type, database size, database configuration, backup configuration, etc. Each of the catalogues can be considered "transient," in that the parameters of the catalogue can be changed dynamically. [0053] FIG. 9 illustrates how a library including templates and transient templates is managed over time. The library may maintain a list of links to actual databases 904, 906, 908 in the private cloud. A template cleanup process 910 can periodically clean the template library by removing any transient templates that are no longer connected to an active database in the private cloud.) Regarding Claim 9: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 2 as described. Higginson teaches wherein establishing further includes providing the configuration session through a user interface that includes both a command line interface (CLI) ([0038] When a customer requests a new database to be provisioned, a PL/SQL procedure can take all of the parameters for the new database and generate a parameter file. The create template process uses the EMCLI API, which reads the parameter file, generates the EMCLI command line for the action, and then runs the action.) and a graphical user interface (GUI). ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. … For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) User interface 600 is a graphical user interface. Regarding Claim 10: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 2 as described. Higginson teaches wherein presenting further includes providing the one or more references, the one or more properties, and the one or more settings for presentation as one or more selectable options within a window of a graphical user interface (GUI). ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. … For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) User interface 600 is a graphical user interface. Regarding Claim 11: Higginson teaches A system, comprising: at least one server comprising a processor and a non-transitory computer-readable storage medium; the non-transitory computer-readable storage medium comprises executable instructions; and the executable instructions when executed on the processor from the non-transitory computer-readable storage medium cause the processor to perform operations ([0125] The methods described above may be performed by hardware components or may be embodied in sequences of machine-executable instructions, which may be used to cause a machine, such as a general purpose or special-purpose processor or logic circuits programmed with the instructions to perform the methods. These machine-executable instructions may be stored on one or more machine readable mediums.) comprising: providing a user interface for defining and instantiating a cloud service within a cloud environment of a target cloud provider; ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. When selecting the template, the parameters of the database to be provisioned that are based on the first group of characteristics in the template can be populated with the data values from the template. For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) maintaining one or more cloud service definitions for one or more previously defined cloud services in a cloud-agnostic format; ([0022] A library of catalogues may represent available databases that may be provisioned in a private cloud. The library is a link between the technical specification of each of the databases mapped against the business requirements of an organization. … The catalogue can be made up of database templates that determine the general configuration of databases in terms of software version, database type, database size, database configuration, backup configuration, etc. Each of the catalogues can be considered "transient," in that the parameters of the catalogue can be changed dynamically. [0053] FIG. 9 illustrates how a library including templates and transient templates is managed over time. The library may maintain a list of links to actual databases 904, 906, 908 in the private cloud. A template cleanup process 910 can periodically clean the template library by removing any transient templates that are no longer connected to an active database in the private cloud.) presenting, to a user interacting with the user interface, a particular cloud service definition within the user interface to enable the user to select one or more modifications to at least one of: i) one or more properties of one or more cloud resources or ii) one or more settings of the one or more cloud resources; ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. … For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs. [0051] FIG. 8 illustrates transient templates created by the provisioning process. When the variable parameters are completed through user interface 600, a new template, referred to herein as a "transient template," will be created to store the variable parameter values provided by the customer. In some embodiments, every provisioning of a new database in the private cloud will result in the creation of a transient template.) recording one or more user-provided modifications to at least one of the one or more properties or the one or more settings as a new cloud service definition for the cloud service to be instantiated; ([0052] For example, if the customer selects template 514, and then changes one or more of the variable parameter values, a new transient template 808 will be created to store the variable parameter values.) activating an adapter (ie. API) selected from a plurality of adapters ([0036] various APIs), wherein the adapter generates the one or more user-provided modifications from the cloud-agnostic format into a target cloud provider format for the target cloud provider by generating the one or more properties and the one or more settings into commands and parameters recognized by the target cloud provider; ([0036] Once all the tests 210, 212, 214 have been performed on the requested template for a newly provisioned database in the private cloud 110, the cloud support platform 120 can operate through various APIs to actually provision the new database in the private cloud 110. [0038] When a customer requests a new database to be provisioned, a PL/SQL procedure can take all of the parameters for the new database and generate a parameter file. The create template process uses the EMCLI API, which reads the parameter file, generates the EMCLI command line for the action, and then runs the action. [0039] REST API.) and interacting with an application programming interface (API) of the target cloud provider and providing the one or more user-provided modifications in the target cloud provider format to the target cloud provider to instantiate the cloud service in the cloud environment. ([0036] Once all the tests 210, 212, 214 have been performed on the requested template for a newly provisioned database in the private cloud 110, the cloud support platform 120 can operate through various APIs to actually provision the new database in the private cloud 110. [0038] When a customer requests a new database to be provisioned, a PL/SQL procedure can take all of the parameters for the new database and generate a parameter file. The create template process uses the EMCLI API, which reads the parameter file, generates the EMCLI command line for the action, and then runs the action. [0039] REST API.) Higginson teaches on creating templates based on customer databases and utilizing various APIs for generating commands/parameter file for the target cloud ([0036][0038][0039]). However, Higginson does not explicitly teach on “translating”. Higginson does not explicitly teach on wherein the adapter translates the one or more user-provided modifications from the cloud-agnostic format into a target cloud provider format for the target cloud provider by translating the one or more properties and the one or more settings into commands and parameters recognized by the target cloud provider. Ramos da Rocha teaches wherein the adapter translates the one or more user-provided modifications from the cloud-agnostic format into a target cloud provider format for the target cloud provider ([0015] The computing resource attributes can be translated into application program interfaces (APIs ) appropriate for the selected cloud . The APIs can be called from the selected cloud to implement the selected preconfigured objects. [0051][0068] The cloud user also inputs data indicating a selected cloud. When deploying this database server, native data formats and templates required by different clouds can differ significantly. The computing resource attributes can then be translated to one or more respective APIs of the selected cloud. The APIs are configured to implement the database server as at least the part of the selected workload. The APIs in the selected cloud can then be called to implement the database server. [0078][0079] At least a portion of the list of selected service items is translated to one or more respective APIs.) by translating the one or more properties and the one or more settings into commands and parameters recognized by the target cloud provider. ([0016] a single template can be generated and can be deployed across any of five clouds, instead of the user having to complete five different respective templates (one for each of the five clouds). In examples, implementing a single template which can be dynamically changed based on one or more target clouds for deployment can save the user's time and resources. [0068] The provided methods and apparatus dynamically generate the appropriate computing resource attributes required by the target cloud' s native format, based on the received data indicating the selected cloud and the received data the database server is at least the part of the selected workload. The computing resource attributes can then be translated to one or more respective APIs of the selected cloud.) It would have been obvious to a person having ordinary skill in the art before the effective filing date, to modify Higginson per Ramos da Rocha to include wherein the adapter translates the one or more user-provided modifications from the cloud-agnostic format into a target cloud provider format for the target cloud provider by translating the one or more properties and the one or more settings into commands and parameters recognized by the target cloud provider. This would have been advantageous as discussed above, as it would allow the modified system to automatically provide translation of designed templates into customer specific APIs allowing for expedient implementation of the services for the user with assurance of compatibility. Regarding Claim 12: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 11 as described. Higginson teaches wherein the executable instructions associated with the providing further cause the processor to perform additional operations comprising: providing the user interface as a command line interface (CLI), a graphical user interface (GUI), or a combination of the CLI and the GUI. ([0038] When a customer requests a new database to be provisioned, a PL/SQL procedure can take all of the parameters for the new database and generate a parameter file. The create template process uses the EMCLI API, which reads the parameter file, generates the EMCLI command line for the action, and then runs the action. [0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. … For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) User interface 600 is a graphical user interface. Regarding Claim 13: Higginson teaches A method, comprising: maintaining one or more service definitions in a format independent (ie. general configuration database templates) of one or more cloud providers; ([0022] A library of catalogues may represent available databases that may be provisioned in a private cloud. The library is a link between the technical specification of each of the databases mapped against the business requirements of an organization. … The catalogue can be made up of database templates that determine the general configuration of databases in terms of software version, database type, database size, database configuration, backup configuration, etc. Each of the catalogues can be considered "transient," in that the parameters of the catalogue can be changed dynamically. [0053] FIG. 9 illustrates how a library including templates and transient templates is managed over time. The library may maintain a list of links to actual databases 904, 906, 908 in the private cloud. A template cleanup process 910 can periodically clean the template library by removing any transient templates that are no longer connected to an active database in the private cloud.) establishing a session with a user; ([0044][0045] FIG. 4, a user interface 400 for a customer for selecting a database type and level. The user interface 400 can load all of the available templates for each database and level available to the customer. When the customer loads the user interface 400, the customer will see database options that are similar to what is already installed and operating on the customer database system. This allows a customer to quickly select a type of database based on its use.) obtaining a service identifier during the session; ([0044] FIG. 4 illustrates a user interface 400 for selecting a database type and level. [0045] A customer who wants to prototype a new finance database would be able to select the finance database at the silver level. In this example, the user selects the "Finance Gold" database and moves to the next step in the provisioning process.) The user selects "Finance Gold" which is the service identifier. retrieving a definition based on the service identifier; ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. When selecting the template, the parameters of the database to be provisioned that are based on the first group of characteristics in the template can be populated with the data values from the template. For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) presenting, to the user during the session, a set of attributes associated with the definition, the set of attributes comprising one or more resource references, one or more properties, and one or more settings; ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. … For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) receiving, through an interface that is cloud agnostic (ie. domain names) from the user during the session; ([0049] For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs. These parameters include a database size, a database description, a target size, various passwords, domain names, etc.) storing the one or more modifications in association with the new identifier (ie. parameter value domain names); ([0052] For example, if the customer selects template 514, and then changes one or more of the variable parameter values, a new transient template 808 will be created to store the variable parameter values.) activating an adapter selected from a plurality of adapters to generate the one or more modifications into commands and parameters recognized by a target cloud provider; ([0036] Once all the tests 210, 212, 214 have been performed on the requested template for a newly provisioned database in the private cloud 110, the cloud support platform 120 can operate through various APIs to actually provision the new database in the private cloud 110. [0038] When a customer requests a new database to be provisioned, a PL/SQL procedure can take all of the parameters for the new database and generate a parameter file. The create template process uses the EMCLI API, which reads the parameter file, generates the EMCLI command line for the action, and then runs the action.) and using an application programming interface (API) by sending the commands and the parameters through the API to instantiate a service based on the one or more modifications. ([0036] Once all the tests 210, 212, 214 have been performed on the requested template for a newly provisioned database in the private cloud 110, the cloud support platform 120 can operate through various APIs to actually provision the new database in the private cloud 110. [0038] When a customer requests a new database to be provisioned, a PL/SQL procedure can take all of the parameters for the new database and generate a parameter file. The create template process uses the EMCLI API, which reads the parameter file, generates the EMCLI command line for the action, and then runs the action. [0039] REST API.) Higginson teaches on creating templates based on customer databases and utilizing various APIs ([0036][0038][0039]). However, Higginson does not explicitly teach on “translating”. Higginson does not explicitly teach on an interface that uses a syntax and semantics that is independent of each of a plurality of disparate cloud providers and activating an adapter selected from a plurality of adapters to translate the one or more modifications from the cloud-agnostic format into commands and parameters recognized by a target cloud provider. Ramos da Rocha also teaches an interface that uses a syntax and semantics that is independent of each of a plurality of disparate cloud providers, ([0016] a single template can be generated and can be deployed across any of five clouds, instead of the user having to complete five different respective templates (one for each of the five clouds). In examples, implementing a single template which can be dynamically changed based on one or more target clouds for deployment can save the user's time and resources. [0051] a user may want to implement a collection of computing resources which includes computing resources in disparate clouds. The first and second computing resources likely will have different, and possibly incompatible, respective APIs. [0068] The cloud user also inputs data indicating a selected cloud . When deploying this database server, native data formats and templates required by different clouds can differ significantly.) and activating an adapter (ie. call API) selected from a plurality of adapters to translate the one or more modifications from the cloud-agnostic format into commands and parameters recognized by a target cloud provider; ([0015] The computing resource attributes can be translated into application program interfaces (APIs ) appropriate for the selected cloud . The APIs can be called from the selected cloud to implement the selected preconfigured objects. [0068] The computing resource attributes can then be translated to one or more respective APIs of the selected cloud. The APIs are configured to implement the database server as at least the part of the selected workload. The APIs in the selected cloud can then be called to implement the database server. [0078][0079] At least a portion of the list of selected service items is translated to one or more respective APIs.) and interacting with an application programming interface (API) of the target cloud provider by sending the commands and the parameters through the API to define and instantiate an instance of the new cloud service in a cloud environment of the target cloud provider. ([0068] The provided methods and apparatus dynamically generate the appropriate computing resource attributes required by the target cloud' s native format, based on the received data indicating the selected cloud and the received data the database server is at least the part of the selected workload. The computing resource attributes can then be translated to one or more respective APIs of the selected cloud.) It would have been obvious to a person having ordinary skill in the art before the effective filing date, to modify Higginson per Ramos da Rocha to include an interface that uses a syntax and semantics that is independent of each of a plurality of disparate cloud providers and activating an adapter selected from a plurality of adapters to translate the one or more modifications from the cloud-agnostic format into commands and parameters recognized by a target cloud provider. This would have been advantageous as discussed above, as it would allow the modified system to automatically provide translation of designed templates into customer specific APIs allowing for expedient implementation of the services for the user with assurance of compatibility. Regarding Claim 14: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 13 as described. Higginson teaches wherein the establishing further includes providing a command line interface (CLI) for the session. ([0038] When a customer requests a new database to be provisioned, a PL/SQL procedure can take all of the parameters for the new database and generate a parameter file. The create template process uses the EMCLI API, which reads the parameter file, generates the EMCLI command line for the action, and then runs the action.) Regarding Claim 15: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 13 as described. Higginson teaches wherein the obtaining further includes receiving the service identifier as input through a graphical user interface (GUI). ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. … For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) User interface 600 is a graphical user interface.) Regarding Claim 16: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 13 as described. Higginson teaches wherein the retrieving further includes accessing the definition from a service definition data structure. ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. When selecting the template, the parameters of the database to be provisioned that are based on the first group of characteristics in the template can be populated with the data values from the template. For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) Regarding Claim 17: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 13 as described. Higginson teaches wherein the presenting further includes displaying the set of attributes as one or more selectable options in a user interface. ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template. When selecting the template, the parameters of the database to be provisioned that are based on the first group of characteristics in the template can be populated with the data values from the template. For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) Regarding Claim 18: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 13 as described. Higginson teaches wherein the receiving further includes identifying one or more changes made to one or more default values associated with the one or more properties. ([0049] FIG. 6 illustrates a user interface 600 for completing the variable parameters of a selected template, according to some embodiments. When selecting the template, the parameters of the database to be provisioned that are based on the first group of characteristics in the template can be populated with the data values from the template. For the second group of characteristics in the template, the user interface 600 can allow the customer to select values for each of the variable parameters. Each of the parameters in second group of characteristics may be set via user inputs.) The user may choose to select different parameters from the default values in the provided template. Regarding Claim 19: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 13 as described. Higginson teaches wherein the storing further includes maintaining the one or more modifications in the format independent of one or more cloud providers. ([0022] A library of catalogues may represent available databases that may be provisioned in a private cloud. The library is a link between the technical specification of each of the databases mapped against the business requirements of an organization. … The catalogue can be made up of database templates that determine the general configuration of databases in terms of software version, database type, database size, database configuration, backup configuration, etc. Each of the catalogues can be considered "transient," in that the parameters of the catalogue can be changed dynamically. [0052] For example, if the customer selects template 514, and then changes one or more of the variable parameter values, a new transient template 808 will be created to store the variable parameter values. [0053] FIG. 9 illustrates how a library including templates and transient templates is managed over time. The library may maintain a list of links to actual databases 904, 906, 908 in the private cloud. A template cleanup process 910 can periodically clean the template library by removing any transient templates that are no longer connected to an active database in the private cloud.) Regarding Claim 20: Higginson (as modified by Ramos da Rocha) teaches on the invention of Claim 13 as described. Higginson teaches on creating templates based on customer databases ([0038][0039]). However, Higginson does not explicitly teach on “translating”. Higginson does not explicitly teach on further comprising translating the one or more modifications into a specific format recognized by a target cloud provider before the using. Ramos da Rocha teaches further comprising translating the one or more modifications into a specific format recognized by a target cloud provider before the using. ([0068] The provided methods and apparatus dynamically generate the appropriate computing resource attributes required by the target cloud' s native format, based on the received data indicating the selected cloud and the received data the database server is at least the part of the selected workload. The computing resource attributes can then be translated to one or more respective APIs of the selected cloud. The APIs are configured to implement the database server as at least the part of the selected workload. The APIs in the selected cloud can then be called to implement the database server.) It would have been obvious to a person having ordinary skill in the art before the effective filing date, to modify Higginson per Ramos da Rocha to include further comprising translating the one or more modifications into a specific format recognized by a target cloud provider before the using. This would have been advantageous as discussed above, as it would allow the modified system to automatically provide translation of designed templates into customer specific APIs allowing for expedient implementation of the services for the user with assurance of compatibility. Conclusion & Contact Information 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 RACHEL J HACKENBERG whose telephone number is (571)272-5417. The examiner can normally be reached 9am-5pm M-F. 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, Glenton B Burgess can be reached at (571)272-3949. 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. /RACHEL J HACKENBERG/Primary Examiner, Art Unit 2454
Read full office action

Prosecution Timeline

Jun 24, 2024
Application Filed
Jun 12, 2025
Response after Non-Final Action
Nov 05, 2025
Non-Final Rejection mailed — §103
Feb 04, 2026
Response Filed
Apr 29, 2026
Final Rejection mailed — §103
Jun 29, 2026
Response after Non-Final Action

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12683901
APPARATUSES, METHODS AND NON-TRANSITORY COMPUTER-READABLE STORAGE MEDIUMS FOR NETWORK ACCESS
3y 4m to grant Granted Jul 14, 2026
Patent 12683887
DETECTION OF NETWORK MEASUREMENT INACCURACIES
2y 11m to grant Granted Jul 14, 2026
Patent 12676917
FACILITATING ELASTIC DISTRIBUTED COMPUTING FOR RESOURCE INTENSIVE TASKS INCLUDING SPLIT RENDERING IN ADVANCED NETWORKS
3y 10m to grant Granted Jul 07, 2026
Patent 12671750
System and Method for Improving Internet Communication by Using Intermediate Nodes
2y 0m to grant Granted Jun 30, 2026
Patent 12665874
SYSTEMS AND METHODS FOR SYNCHRONIZING HOSTNAMES AND IP ADDRESSES IN EMAIL SYSTEMS
2y 9m to grant Granted Jun 23, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

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

Prosecution Projections

2-3
Expected OA Rounds
78%
Grant Probability
99%
With Interview (+25.9%)
2y 9m (~8m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 310 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

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

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

Free tier: 3 strategy analyses per month