Methods and apparatus for specifying and processing descriptive queries for data sources
First Claim
Patent Images
1. A method of processing descriptive queries for data sources, comprising the steps of:
- given a set of named data providers, each distinguished by a type of data the data provider provides and a set of attributes each with a unique name and a particular type of value, and a grouping of the data providers into named provider kinds, such that data providers grouped into the same provider kind provide the same type of data and have the same set of attributes;
obtaining a descriptive query, the descriptive query comprising the name of a provider kind and a specification of a mapping from an assignment of one or more values for one or more attributes of the data provider to one of a true value and a false value; and
resolving the descriptive query, the resolving step comprising obtaining the names of data providers in the set of named data providers that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query maps the one or more values of the one or more attributes of the data provider to the true value;
wherein the mapping specification comprises a boolean-valued expression in which the names of the attributes of a data provider appear, representing the assigned values of the attributes;
wherein the boolean-valued expression is an XQuery expression evaluated in the context of an XML document that specifies the values of the attributes of the data provider;
wherein each data provider has a set of uniquely named activation parameters, each of a specified type;
wherein data providers grouped into the same provider kind have activation parameters with the same set of names, with identically named activation parameters of different data providers of the same provider kind having the same type, and wherein the descriptive query includes an assignment of values to activation parameters, with the value assigned to an activation parameter being of the type of that activation parameter, and wherein the resolving step further comprises obtaining the names of data providers in the set of named data providers, activated with the assignment of activation parameter values in the descriptive query, that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query mares the values of the attributes of the data provider to the true value;
wherein the descriptive query further comprises the specification of a selection mechanism for selecting a subset of a set of data providers; and
wherein the resolving step further comprises obtaining the names of data providers in the subset selected by the selection mechanism specified in the descriptive query from the set of data providers in the set of named data providers that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query mares the values of the attributes of the data provider to the true value.
1 Assignment
0 Petitions
Accused Products
Abstract
Improved descriptive query techniques are provided. More particularly, techniques are provided for specifying and processing descriptive queries for data providers grouped into provider kinds with hierarchical containment relationships. The query may include arbitrary boolean combinations of arbitrary tests on the values of attributes of the data providers.
24 Citations
22 Claims
-
1. A method of processing descriptive queries for data sources, comprising the steps of:
-
given a set of named data providers, each distinguished by a type of data the data provider provides and a set of attributes each with a unique name and a particular type of value, and a grouping of the data providers into named provider kinds, such that data providers grouped into the same provider kind provide the same type of data and have the same set of attributes; obtaining a descriptive query, the descriptive query comprising the name of a provider kind and a specification of a mapping from an assignment of one or more values for one or more attributes of the data provider to one of a true value and a false value; and resolving the descriptive query, the resolving step comprising obtaining the names of data providers in the set of named data providers that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query maps the one or more values of the one or more attributes of the data provider to the true value; wherein the mapping specification comprises a boolean-valued expression in which the names of the attributes of a data provider appear, representing the assigned values of the attributes; wherein the boolean-valued expression is an XQuery expression evaluated in the context of an XML document that specifies the values of the attributes of the data provider; wherein each data provider has a set of uniquely named activation parameters, each of a specified type; wherein data providers grouped into the same provider kind have activation parameters with the same set of names, with identically named activation parameters of different data providers of the same provider kind having the same type, and wherein the descriptive query includes an assignment of values to activation parameters, with the value assigned to an activation parameter being of the type of that activation parameter, and wherein the resolving step further comprises obtaining the names of data providers in the set of named data providers, activated with the assignment of activation parameter values in the descriptive query, that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query mares the values of the attributes of the data provider to the true value; wherein the descriptive query further comprises the specification of a selection mechanism for selecting a subset of a set of data providers; and wherein the resolving step further comprises obtaining the names of data providers in the subset selected by the selection mechanism specified in the descriptive query from the set of data providers in the set of named data providers that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query mares the values of the attributes of the data provider to the true value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. Apparatus for processing descriptive queries for data sources, comprising:
-
a memory; and at least one processor coupled to the memory and operative to, given a set of named data providers, each distinguished by a type of data the data provider provides and a set of attributes each with a unique name and a particular type of value, and a grouping of the data providers into named provider kinds, such that data providers grouped into the same provider kind provide the same type of data and have the same set of attributes;
(i) obtain a descriptive query, the descriptive query comprising the name of a provider kind and a specification of a mapping from an assignment of one or more values for one or more attributes of the data provider to one of a true value and a false value; and
(ii) resolve the descriptive query, the resolving step comprising obtaining the names of data providers in the set of named data providers that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query maps the one or more values of the one or more attributes of the data provider to the true value;wherein the mapping specification comprises a boolean-valued expression in which the names of the attributes of a data provider appear, representing the assigned values of the attributes; wherein the boolean-valued expression is an XQuery expression evaluated in the context of an XML document that specifies the values of the attributes of the data provider; wherein each data provider has a set of uniquely named activation parameters, each of a specified type; wherein data providers grouped into the same provider kind have activation parameters with the same set of names, with identically named activation parameters of different data providers of the same provider kind having the same type, and wherein the descriptive query includes an assignment of values to activation parameters, with the value assigned to an activation parameter being of the type of that activation parameter, and wherein the resolving step further comprises obtaining the names of data providers in the set of named data providers, activated with the assignment of activation parameter values in the descriptive query, that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query mares the values of the attributes of the data provider to the true value; wherein the descriptive query further comprises the specification of a selection mechanism for selecting a subset of a set of data providers; and wherein the resolving step further comprises obtaining the names of data providers in the subset selected by the selection mechanism specified in the descriptive query from the set of data providers in the set of named data providers that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query mares the values of the attributes of the data provider to the true value. - View Dependent Claims (16, 17, 18)
-
-
15. An article of manufacture for processing descriptive queries for data sources, comprising a machine readable medium containing one or more programs which when executed implement the steps of:
-
given a set of named data providers, each distinguished by a type of data the data provider provides and a set of attributes each with a unique name and a particular type of value, and a grouping of the data providers into named provider kinds, such that data providers grouped into the same provider kind provide the same type of data and have the same set of attributes; obtaining a descriptive query, the descriptive query comprising the name of a provider kind and a specification of a mapping from an assignment of one or more values for one or more attributes of the data provider to one of a true value and a false value; and resolving the descriptive query, the resolving step comprising obtaining the names of data providers in the set of named data providers that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query maps the one or more values of the one or more attributes of the data provider to the true value; wherein the mapping specification comprises a boolean-valued expression in which the names of the attributes of a data provider appear, representing the assigned values of the attributes; wherein the boolean-valued expression is an XQuery expression evaluated in the context of an XML document that specifies the values of the attributes of the data provider; wherein each data provider has a set of uniquely named activation parameters, each of a specified type; wherein data providers grouped into the same provider kind have activation parameters with the same set of names, with identically named activation parameters of different data providers of the same provider kind having the same type, and wherein the descriptive query includes an assignment of values to activation parameters, with the value assigned to an activation parameter being of the type of that activation parameter, and wherein the resolving step further comprises obtaining the names of data providers in the set of named data providers, activated with the assignment of activation parameter values in the descriptive query, that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query mares the values of the attributes of the data provider to the true value; wherein the descriptive query further comprises the specification of a selection mechanism for selecting a subset of a set of data providers; and wherein the resolving step further comprises obtaining the names of data providers in the subset selected by the selection mechanism specified in the descriptive query from the set of data providers in the set of named data providers that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query mares the values of the attributes of the data provider to the true value. - View Dependent Claims (19, 20, 21, 22)
-
Specification