Framework for declarative expression of data processing
First Claim
1. A computer-readable storage medium containing computer-executable instructions implementing a framework for declarative expression of data processing, the framework comprising:
- an interface that is accessible by an application to access data from multiple data stores that store data in different formats;
a metadata-driven infrastructure comprisingdeclarative representations of metadata for the data supported by the framework, the declarative representations of metadata specifying classes of data with properties, class validation rules and property validation rules, and a mapping of classes to data stores; and
a data store adapter for each of the multiple data stores that provides access to data of the data store by performing conversions between data of a class mapped to the data store and data of the data store; and
a framework engine being operable to process a call from the application via the interface to access data of the multiple data stores based on the classes specified in the declarative representations by utilizing the metadata-driven infrastructure to validate data of a class and data of the properties of the class based on the declarative representation of metadata specifying class validation rules and property validation rules, to identify using the mapping a data store adapter for accessing data of the class, and to invoke the identified data store adapter to access data of the class as represented by the call from the applicationwherein the validation rules are stored in a declarative manner and the validation process is decoupled from the application.
2 Assignments
0 Petitions
Accused Products
Abstract
A framework for declarative expression of data processing is provided. The framework allows for data to be represented by its metadata in a declarative manner, allowing for the generation of code at, for example, build time. The declarative representation of the metadata facilitates the separation of the data (e.g., the raw data that is stored in a data store and that is available using, for example, a data store adapter) from the code (e.g., the code that is executed for the manipulation and validation of data) and the view (e.g., the form that the data is shown to a user, for example, through a UI).
15 Citations
14 Claims
-
1. A computer-readable storage medium containing computer-executable instructions implementing a framework for declarative expression of data processing, the framework comprising:
-
an interface that is accessible by an application to access data from multiple data stores that store data in different formats; a metadata-driven infrastructure comprising declarative representations of metadata for the data supported by the framework, the declarative representations of metadata specifying classes of data with properties, class validation rules and property validation rules, and a mapping of classes to data stores; and a data store adapter for each of the multiple data stores that provides access to data of the data store by performing conversions between data of a class mapped to the data store and data of the data store; and a framework engine being operable to process a call from the application via the interface to access data of the multiple data stores based on the classes specified in the declarative representations by utilizing the metadata-driven infrastructure to validate data of a class and data of the properties of the class based on the declarative representation of metadata specifying class validation rules and property validation rules, to identify using the mapping a data store adapter for accessing data of the class, and to invoke the identified data store adapter to access data of the class as represented by the call from the application wherein the validation rules are stored in a declarative manner and the validation process is decoupled from the application. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer-implemented method performed by a computer programmed to process a call from an application program to access data from multiple data stores storing data in different formats, the method comprising:
-
providing declarative representations of metadata for supported classes of data, the representations of metadata declared separate from logic of the application program, the declarative representation specifying properties of the classes of data and specifying class validation rules and property validation rules; providing a mapping of the supported classes of data to data stores that store data corresponding to the properties of the classes, the mapping provided separate from the application logic, the mapping identifying for each supported class of data a data store that contains the class of data; providing a data store adapter for each of the multiple data stores that provides access to data of the data store by performing conversions between data of a class mapped to the data store and data of the data store; and processing by a framework engine a call by the application program to access a supported class of data by utilizing the declarative representations of metadata; to validate class and properties based on the declarative representation of metadata specifying class validation rules and property validation rules; to identify, using the mapping of supported classes of data to the data stores, a data store adapter for accessing data of the class; and to invoke the identified data store adapter to access data of the class as represented by the call from the application program. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A computer-readable storage medium whose contents of computer-executable instructions cause a computer to provide access to supported classes of data, the data being provided by multiple data stores storing data in different formats, by performing a method comprising:
-
providing declarative representations of metadata for supported classes of data, the representations of metadata declared separate from application program logic, the declarative representation specifying properties of the classes and validation rules for the classes and properties; providing a mapping of the supported classes of data to data stores; providing a data store adapter for each of the multiple data stores that provides access to data of the data store by performing conversions between data of classes mapped to the data store and data of the data store; receiving at a framework engine a call from an application to access a particular class of data; and processing by the framework engine the call to access a particular class of data by; determining from the declarative representations of metadata any validation to perform on the particular class of data; if the declarative representation of metadata indicates that a validation is to be performed on the particular class of data, performing the validation on the particular class of data; determining from the mapping of the supported classes of data to data stores a data store containing the particular class of data; and invoking the data store adapter for the determined data store to access the particular class of data contained in the data store specified by the mapping of the supported classes of data to data stores and to perform conversions between data of the class and data of the data store. - View Dependent Claims (13, 14)
-
Specification