Storage API for a common data platform
First Claim
1. A computer-readable storage medium for use in a computing system to provide an application programming interface for a data platform, the application programming interface allowing access to multiple information formats in a generic manner, and the computer-readable medium comprising:
- one or more storage elements storing computer executable instructions, the computer-executable instructions including;
a generic application programming interface (API) for a data platform, wherein the generic API includes;
a generic data access component that exposes each of stores, sessions, transactions, and query services of the data platform, wherein the data platform is associated with a data store;
a data classes component of canonical, application-independent classes that expose types and relationships of a data model of the data platform;
a domain data classes component of application-specific and framework-specific classes that expose domain-specific properties and behaviors of the data platform, wherein a domain is different from an application;
a schema class that provides access to tables of the schema, the schema class being derived from an untyped schema class;
a TableSet class providing strongly typed access to tables defined within the schema;
a StorageDomain class defining a store over which the rest of the classes in the API operate;
a StorageContext class providing a context for a session, and defining the scope for at least one of identity management, change tracking or concurrency conflict handling, with methods for refreshing or saving chances to objects within a current context;
a StorageSearcher class configured to build queries against the data store; and
a StorageView class providing an application view over a set of results from a query.
2 Assignments
0 Petitions
Accused Products
Abstract
An application program interface (API) for a data platform. The API includes a generic data access component that exposes at least one of stores, sessions, transactions, and query services of the data platform, which data platform is associated with a data store. A data classes component of the API provides canonical, application-independent classes that expose types and relationships of a data model of the data platform. The API includes a domain data classes component of application-specific and framework-specific classes that expose domain-specific properties and behaviors of the data platform. The data platform can be a common data platform that interfaces to the data store to provide data services accessible by a plurality of disparate application frameworks, which data services allow a corresponding application of the different frameworks to access the data store.
-
Citations
16 Claims
-
1. A computer-readable storage medium for use in a computing system to provide an application programming interface for a data platform, the application programming interface allowing access to multiple information formats in a generic manner, and the computer-readable medium comprising:
one or more storage elements storing computer executable instructions, the computer-executable instructions including; a generic application programming interface (API) for a data platform, wherein the generic API includes; a generic data access component that exposes each of stores, sessions, transactions, and query services of the data platform, wherein the data platform is associated with a data store; a data classes component of canonical, application-independent classes that expose types and relationships of a data model of the data platform; a domain data classes component of application-specific and framework-specific classes that expose domain-specific properties and behaviors of the data platform, wherein a domain is different from an application; a schema class that provides access to tables of the schema, the schema class being derived from an untyped schema class; a TableSet class providing strongly typed access to tables defined within the schema; a StorageDomain class defining a store over which the rest of the classes in the API operate; a StorageContext class providing a context for a session, and defining the scope for at least one of identity management, change tracking or concurrency conflict handling, with methods for refreshing or saving chances to objects within a current context; a StorageSearcher class configured to build queries against the data store; and
a StorageView class providing an application view over a set of results from a query.- View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
10. A computer-implemented method of using a generic application programming interface in exposing a data platform so as to provide access to information in a generic manner, regardless of the particular format of the information, comprising:
at a computing system, using one or more processors in executing computer-executable instructions to perform the following; access a generic API, wherein the generic API includes components that, when executed by the one or more processors perform the following; expose each of stores, sessions, transactions, and query services of the data platform, wherein the data platform associated with a data store; expose types and relationships of a data model of the data platform, and using one or more canonical, application-independent classes; and expose domain-specific properties and behaviors of the data platform, and using one or more application-specific and framework-specific classes, in which a domain is different than an application; provide access to tables of the schema through a schema class, the schema class being derived from an untyped schema class; provide strongly typed access to tables defined within the schema, wherein access is provided through a TableSet class; use a StorageDomain class that defines a store over which the rest of the classes in the API operate; provide, using a StorageContext class, a context for a session, wherein the StorageContext class further defines the scope for at least one of identity management, chance tracking or concurrency conflict handling, with methods for refreshing or saving chances to objects within a current context; build queries against the data store using a StorageSearcher class; and
provide an application view over a set of results from a query using a StorageView class.- View Dependent Claims (11, 12, 13, 14, 15)
-
16. A computer storage medium for use with a computing system to provide an application programming interface for a data platform, the application programming interface providing access to a variety of different types of data objects in a generic manner, the computer-readable medium comprising:
one or more storage elements storing computer executable instructions, the computer-executable instructions including; a generic application programming interface (API) for a data platform, wherein the generic API includes; a generic data access component that exposes each of stores, sessions, transactions, and query services of the data platform, wherein the data platform is associated with a data store; a data classes component of canonical, application-independent classes that expose types and relationships of a data model of the data platform; a domain data classes component of application-specific and framework-specific classes that expose domain-specific properties and behaviors of the data platform, wherein a domain is different from an application; a schema class that provides access to tables of the schema, and in which the schema class is a strongly typed schema class that is derived from an untyped schema class based on a target schema. a TableSet class generated from a data model schema and providing strongly typed access to tables defined within the schema; a StorageDomain class defining a store over which the rest of the classes in the API operate; a StorageContext class providing a context for a session, and defining the scope for identity management, change tracking and concurrency conflict handling, with methods for refreshing or saving changes to objects within a current context; a StorageSearcher class configured to build composable object-based queries against the data store; and
a StorageView class providing an application view over a set of results from a query, and supporting filtering, sorting, scrolling, grouping, sectioning, expanding, and collapsing of sections.
Specification