Coarse grained client interface
AssigneeSap SE
InventorsAdam Polly, Carsten Schminke, Thomas Gauweiler
Life of this patent
Estimating the term…
Abstract
Various embodiments of the present disclosure provide a coarse grained client interface for accessing complex data structures in a storage system. Complex data structures may take the form of business objects (BOs), which may be hierarchically structured. Various embodiments allow for creating, accessing and manipulating one or more BO instances in a storage system using deeply structured data types corresponding to the entire hierarchy of a BO instance or to a substructures of a BO instance
Claims20
A method comprising:
- defining a complex data structure having a hierarchical structure;
- generating a set of deeply structured data types based on the defined complex data structure, each of the deeply structured data types corresponding to a substructure, or an entire structure, of the complex data structure;
- generating a set of deeply structured data type operations, each of the deeply structured data type operations corresponding to a deeply structured data type, and defined to operate on instances of said deeply structured data type;
- receiving, at a computing device, an access request from an application server to access a substructure or an entire structure of an instance of the complex data structure, the complex data structure instance stored in a backend system, wherein the access request includes a first deeply structured data type;
- identifying sub-elements located in said substructure or entire structure of the complex data structure instance based on a definition of the first deeply structured data type;
- sending one or more requests for data to the backend system based on the identification of said sub-elements;
- receiving the requested data from the backend system;
- creating a current-substructure data structure including information regarding the data in said substructure or entire structure of the complex data structure instance, wherein the information comprises a current state of the complex data structure instance;
- and
- sending the current-substructure data structure to the application server.
A computer system comprising:
- one or more processors;
- and
- a non-transitory computer readable medium having stored thereon one or more programs, which when executed by the one or more processors, causes the one or more processor to singly or in combination:
- define a complex data structure having a hierarchical structure;
- generate a set of deeply structured data types based on the defined complex data structure, each of the deeply structured data types corresponding to a substructure, or an entire structure, of the complex data structure;
- generate a set of deeply structured data type operations, each of the deeply structured data type operations corresponding to a deeply structured data type, and defined to operate on instances of said deeply structured data type;
- receive, at a backend module, an access request from an application server to access a substructure or an entire structure of an instance of the complex data structure, the complex data structure instance stored in a backend system, wherein the access request includes a first deeply structured data type;
- identify sub-elements located in said substructure or entire structure of the complex data structure instance based on a definition of the first deeply structured data type;
- send one or more requests for data to the backend system based on the identification of said sub-elements;
- receive the requested data from the backend system;
- create a current-substructure data structure including information regarding the data in said substructure or entire structure of the complex data structure instance, wherein the information comprises a current state of the complex data structure instance;
- and
- send the current-substructure data structure to the application server.
A non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions for:
- defining a complex data structure having a hierarchical structure;
- generating a set of deeply structured data types based on the defined complex data structure, each of the deeply structured data types corresponding to a substructure, or an entire structure, of the complex data structure;
- generating a set of deeply structured data type operations, each of the deeply structured data type operations corresponding to a deeply structured data type, and defined to operate on instances of said deeply structured data type;
- receiving, at a backend module, an access request from an application server to access a substructure or an entire structure of an instance of the complex data structure, the complex data structure instance stored in a backend system, wherein the access request includes a first deeply structured data type;
- identifying sub-elements located in said substructure or entire structure of the complex data structure instance based on a definition of the first deeply structured data type;
- sending one or more requests for data to the backend system based on the identification of said sub-elements;
- receiving the requested data from the backend system;
- creating a current-substructure data structure including information regarding the data in said substructure or entire structure of the complex data structure instance, wherein the information comprises a current state of the complex data structure instance;
- sending the current-substructure data structure to the application server;
- and
- wherein including the deeply structured data type in the access request allows for performing access operations on said substructure or entire structure of the complex data structure instance in one service call, wherein the service call is not required to include information regarding relationships between different sub-elements in said substructure or entire structure of the complex data structure instance.
Dependencies are inferred from the claim text.