Query and result rebinding
First Claim
1. A method of a computing system to reformulate a query message to form a reformulated semantically similar query message using metadata, the method comprising:
- a computing system accessing a query message that is structured to be compatible with a first data source, the query message including a set of one or more fields including at least a first particular set of one or more fields which are defined by a first schema of the first data source;
reformulating the query message so as to be structured to be compatible with a second data source, wherein the second data source does not have the first particular set of one of more fields, but does have a second particular set of one or more fields that contain similar information as the first particular set of one or more fields, the second particular set of one or more fields being defined by a second schema of the second data source,wherein reformulating includes at least the following;
accessing metadata that correlates the first particular set of one or more fields defined by the first schema and the second particular set of one or more fields defined by the second schema such that the metadata may be used to translate data and fields between the first and second set of one or more fields;
an act of using the accessed metadata and the values of the first particular set of one or more fields to populate the second particular set of one or more fields; and
creating a reformulated form of the query message which includes the populated second particular set of one or more fields such that the reformulated form of the query message may be executed against the second data source.
2 Assignments
0 Petitions
Accused Products
Abstract
The metadata-based intermediation between two data sources. A computing system accesses a query message (e.g., a query or a query response). The query message is structured to be compatible with the first data source. The computing system uses metadata either directly, or indirectly through the execution of code referenced by the metadata to convert the query message into a semantically equivalent query message that is compatible with the second data source. If the query message were a query, then a query response may be acquired and the metadata may perhaps be used again to convert the query response into a form that is compatible with the first data source. In one embodiment, the conversion using the metadata is performed with the assistance of a framework, making changes to the conversion process as simple as perhaps just editing the metadata itself.
-
Citations
20 Claims
-
1. A method of a computing system to reformulate a query message to form a reformulated semantically similar query message using metadata, the method comprising:
-
a computing system accessing a query message that is structured to be compatible with a first data source, the query message including a set of one or more fields including at least a first particular set of one or more fields which are defined by a first schema of the first data source; reformulating the query message so as to be structured to be compatible with a second data source, wherein the second data source does not have the first particular set of one of more fields, but does have a second particular set of one or more fields that contain similar information as the first particular set of one or more fields, the second particular set of one or more fields being defined by a second schema of the second data source, wherein reformulating includes at least the following; accessing metadata that correlates the first particular set of one or more fields defined by the first schema and the second particular set of one or more fields defined by the second schema such that the metadata may be used to translate data and fields between the first and second set of one or more fields; an act of using the accessed metadata and the values of the first particular set of one or more fields to populate the second particular set of one or more fields; and creating a reformulated form of the query message which includes the populated second particular set of one or more fields such that the reformulated form of the query message may be executed against the second data source. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer program product comprising one or more computer storage devices having stored thereon computer-executable instructions that are structured such that, when executed by one or more processors of a computing system, the computing system is caused to perform a method of reformulating a query message that is structured to be compatible with a first data source to form a reformulated semantically similar query message to be compatible with a second data source, the query message including a set of one or more fields including at least a first particular set of one or more fields which are defined by a first schema of the first data source, wherein the second data source does not have the first particular set of one of more fields, but does have a second particular set of one or more fields that contain similar information as the first particular set of one or more fields, the second particular set of one or more fields being defined by a second schema of the second data source, the method comprising:
-
accessing metadata that correlates the first particular set of one or more fields defined by the first schema and the second particular set of one or more fields defined by the second schema such that the metadata may be used to translate data and fields between the first and second set of one or more fields; using the accessed metadata and the values of the first particular set of one or more fields to populate the second particular set of one or more fields; and creating a reformulated form of the query message which includes the populated second particular set of one or more fields such that the reformulated form of the query message may be executed against the second data source. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A method of a computing system for intermediating between a first and second data source, the method comprising:
-
a computing system accessing a query that is structured to be compatible with a first data source, the query including a set of one or more fields including at least a first particular set of one or more fields which are defined by a first schema of the first data source; reformulating the query so as to be structured to be compatible with a second data source, wherein the second data source does not have the first particular set of one of more fields, but does have a second particular set of one or more fields that contain similar information as the first particular set of one or more fields, the second particular set of one or more fields being defined by a second schema of the second data source, wherein reformulating includes at least the following; accessing metadata that correlates the first particular set of one or more fields defined by the first schema and the second particular set of one or more fields defined by the second schema such that the metadata may be used to translate data and fields between the first and second set of one or more fields; using the accessed metadata and the values of the first particular set of one or more fields to populate the second particular set of one or more fields; and creating a reformulated form of the query message which includes the populated second particular set of one or more fields such that the reformulated form of the query message may be executed against the second data source; obtaining a query response from the second data source in response to executing the reformulated form of the query message, the query response being compatible with the second data source and comprising fields defined by the second schema; and using the metadata to reformulate the query response so as to be structured to be compatible with the first data source such that the reformulated the query response appears as if it is a response from the first data source.
-
Specification