IP Library Granted Patent US 7,509,301
Granted Patent B2
US 7,509,301 · App. 10/854,169 · Granted Mar 24, 2009

Systems and methods for data processing

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,509,301
App. No.
10/854,169
Granted
Mar 24, 2009
Kind
B2
Abstract

Systems and methods are provided for data processing. As disclosed herein, such systems and methods may include providing a data model with a set of entity types and set of attributes for each entity type, providing customizing data for the data model, the customizing data indicating data sources for the attributes and describing data structures being provided by the data sources, querying the attribute data for at least a first attribute of the set of attributes of one of the entity types, determining from the customizing data, if a single data source for the first attribute data of the one of the entity types is available, if such a single data source is not available, determining at least first and second ones of the data sources which in combination comprise the first attribute data of the one of the entity types, generating a sub-query for each one of the at least first and second data sources, and combining the results of the sub-queries to provide a query result.

Claims (45)

1. A computer implemented method comprising:

providing a data model having a set of entity types and a set of attributes for each entity type for the set of entity types;

providing customizing data for the data model, the customizing data indicating data sources for the attributes and describing data structures being provided by the data sources;

receiving a query from an application program, the query requesting attribute data for at least a first attribute of the set of attributes of one of the entity types;

processing the query by a query processing module that determines whether data sources and data structures are available based on the customizing data in the data model;

determining, from the customizing data, if a single data source for the first attribute data of the one of the entity types is available;

if a single data source is available, providing a query result from the single data source;

if a single data source is not available, determining at least first and second ones of the data sources, which in combination, comprise the first attribute data of the one of the entity types;

generating a sub-query for each one of the at least first and second data sources, a first sub-query being generated to obtain a first tabular data from the first data source and a second sub-query being generated to obtain a second tabular data from the second data source; and

combining the results of the sub-queries from the at least first and second data sources to provide a query result;

wherein the determination of the at least first and second data sources is made by a data source descriptor, the data source descriptor allowing replacement of a data source without making any modifications to the data source descriptor.

2. The method of claim 1 , wherein one of the data structures comprises tabular data relating entity type data to attribute data of attributes of the set of attributes of the entity type, or relating second attribute data of a second attribute of the set of attributes to the first attribute data.

3. The method of claim 1 , wherein the first data source relates the entity type data of the one of the entity types to second attribute data of a second attribute of the set of attributes, and wherein the second data source relates the second attribute data to the first attribute data.

4. The method of claim 1 , the data sources being at least one of database tables, XML files, web-services, method or function calls, EDI documents, or SOAP objects.

5. A computer program product, stored on a digital storage medium, comprising:

a data model having a set of entity types and a set of attributes for each entity type of the set of entity types,

customizing data for the data model, the customizing data being indicative of data sources for the attributes and being descriptive of data structures being provided by the data sources; and

program means for performing the method of:

a) receiving a query from an application program, the query requesting attribute data for at least a first attribute of the set of attributes of one of the entity types;

b) processing the query by a query processing module that determines whether data sources and data structures are available based on the customizing data in the data model;

c) determining from the customizing data, if a single data source for the first attribute data of the one of the entity types is available;

d) if a single data source is available, providing a query result from the single data source;

e) if a single data source is not available, determining at least first and second ones of the data sources which in combination comprise the first attribute data of the one of the entity types;

f) generating a sub-query for each one of the at least first and second data sources, a first sub-query being generated to obtain a first tabular data from the first data source and a second sub-query being generated to obtain a second tabular data from the second data source; and

g) combining the results of the sub-queries from the at least first and second data sources to provide a query result,

wherein the determination of the at least first and second data sources is made by a data source descriptor, the data source descriptor allowing replacement of a data source without making any modifications to the data source descriptor.

6. The computer program product of claim 5 , wherein one of the data structures comprises tabular data relating entity type data to attribute data of attributes of the set of attributes of the entity type, or relating second attribute data of a second attribute of the set of attributes to the first attribute data.

7. The computer program product of claim 5 , wherein the first data source relates the entity type data of the one of the entity types to second attribute data of a second attribute of the set of attributes, and wherein the second data source relates the second attribute data to the first attribute data.

8. A data processing system comprising:

a central processing unit;

a memory;

a data model having a set of entity types (i) and a set of attributes (j) for each entity type of the set of entity types;

customizing data for the data model, the customizing data indicating data sources (k) for the attributes and describing data structures being provided by the data sources;

means for receiving a query from an application program, the query requesting first attribute data for at least a first attribute of the set of attributes of one of the entity types;

means for processing the query by a query processing module that determines whether data sources and data structures are available based on the customizing data in the data model;

means for determining from the customizing data, if a single data source for obtaining the first attribute data being related to the one of the entity types is available;

means for providing a query result from the single data source, if a single data source is available;

means for determining at least first and second ones of the data sources which in combination comprise the first attribute data being related to the one of the entity types, if a single data source is not available;

means for generating a sub-query for each one of the at least first and second data sources, a first sub-query being generated to obtain a first tabular data from the first data source and a second sub-query being generated to obtain a second tabular data from the second data source; and

means for combining the results of the sub-queries from the at least first and second data sources to provide the query result,

wherein the determination of the at least first and second data sources is made by a data source descriptor, the data source descriptor allowing replacement of a data source without making any modifications to the data source descriptor.

9. The data processing system of claim 8 , wherein the first sub-set of the data sources comprises internal data sources of the data processing system and the second sub-set of the data sources comprises external data sources.

10. The data processing system of claim 8 , wherein one of the data structures comprises tabular data relating entity type data to attribute data of attributes of the set of attributes of the entity type, or relating second attribute data of a second attribute of the set of attributes to the first attribute data.

11. The data processing system of claim 8 , wherein the first data source relates the entity type data of the one of the entity types to second attribute data of a second attribute of the set of attributes, and wherein the second data source relates the second attribute data to the first attribute data.

12. The data processing system of claim 8 , the data sources being at least one of database tables, XML files, web-services, method or function calls, EDI documents, or SOAP objects.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2019
From: SAP SE
To: SERVICENOW, INC.
Reel/Frame 049699/0695 →
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0334 →
CHANGE OF NAME Recorded Dec 21, 2005
From: SAP AKTIENGESELLSCHAFT
To: SAP AG
Reel/Frame 017358/0778 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2004
From: SCHMITT, WINFRIED; HOFMANN, HELMUT; BALZAR, ANDREAS
To: SAP AKTIENGESELLSCHAFT
Reel/Frame 015830/0241 →