7487142

Methods and Apparatus for Specifying and Processing Descriptive Queries for Data Sources

PublishedFebruary 3, 2009
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
22 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

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.

2

2. The method of claim 1 , wherein the selection mechanism selects one arbitrary member of the set of data providers or all members of the set of data providers.

3

3. The method of claim 1 , wherein the specification of a selection mechanism comprises the specification of a mapping from an assignment of values for attributes of a data provider to a numeric value and the specification of a mechanism for selecting a subset of a set of data providers given the numeric value to which the mapping maps the attribute values of each data provider in the set.

4

4. The method of claim 3 , wherein the specification of a mapping from an assignment of values for attributes of a data provider to a numeric value comprises a number-valued expression in which the names of the attributes of a data provider appear, representing the assigned values of the attributes.

5

5. The method of claim 4 , wherein the number-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.

6

6. The method of claim 3 , wherein the specification of a mechanism for selecting a subset of a set of data providers given the numeric value comprises selecting all data providers with numeric values above a given threshold.

7

7. The method of claim 3 , wherein the specification of a mechanism for selecting a subset of a set of data providers given the numeric value comprises selecting the N data providers with the highest numeric values for a specified value of N.

8

8. The method of claim 3 , wherein the specification of a mechanism for selecting a subset of a set of data providers given the numeric value comprises selecting the first N data providers found regardless of their numeric values for a specified value of N.

9

9. The method of claim 3 , wherein the specification of a mechanism for selecting a subset of a set of data providers given the numeric value comprises selecting all data providers found within a time interval T regardless of their numeric values.

10

10. The method of claim 1 , wherein a first provider kind is designated as a subkind of a second provider kind if the type of the data provided by the first provider kind is a subtype of the type of the data provided by the second provider kind, and wherein the resolving step alternatively obtains the names of data providers in the set of named data providers that belong to the provider kind specified in the descriptive query, or to any subkind of the provider kind, and for which the mapping specified in the descriptive query maps the values of the attributes of the data provider to the true value.

11

11. The method of claim 1 , wherein a first provider kind is designated as a subkind of a second provider kind if: the type of the data provided by the first provider kind is a subtype of the type of the data provided by the second provider kind; the set of activation-parameter names of the first provider kind is a subset of the set of activation parameter names of the second provider kind; and the type of each activation parameter of the first provider kind is a supertype of the type of the identically named activation parameter of the second kind; wherein the resolving step alternatively obtains the names of data providers in the set of named data providers that belong to the provider kind specified in the descriptive query, or to any subkind of the provider kind, and for which the mapping specified in the descriptive query maps the values of the attributes of the data provider to the true value.

12

12. The method of claim 1 , wherein at least one data provider comprises the application of a stream transformer to a stream of data provided by one or more other data providers.

13

13. The method of claim 12 , further comprising: providing a set of templates for the specification of provider kinds, in which one or more entities are replaced by one or more template-parameter symbols, wherein substitution of template-parameter values for the template-parameter symbols in a template results in an instance of the template, uniquely specifying a provider kind; providing a set of synthesis rules, each asserting that an instance of a specified template is synthesized by applying a specified stream transformer to the stream of data provided by the instances of one or more specified templates, provided that the instances are obtained by replacing all occurrences a given template-parameter symbol in the rule with the same template-parameter value; wherein the resolving step alternatively obtains the names of data providers, either belonging to the set of named data providers or synthesized in accordance with the set of synthesis rules, that belong to the provider kind specified in the descriptive query and for which the mapping specified in the descriptive query maps the values of the attributes of the data provider to the true value.

14

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.

15

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.

16

16. The apparatus of claim 14 , wherein the selection mechanism selects one arbitrary member of the set of data providers or all members of the set of data providers.

17

17. The apparatus of claim 14 , wherein the specification of a selection mechanism comprises the specification of a mapping from an assignment of values for attributes of a data provider to a numeric value and the specification of a mechanism for selecting a subset of a set of data providers given the numeric value to which the mapping maps the attribute values of each data provider in the set.

18

18. The apparatus of claim 17 , wherein the specification of a mapping from an assignment of values for attributes of a data provider to a numeric value comprises a number-valued expression in which the names of the attributes of a data provider appear, representing the assigned values of the attributes.

19

19. The article of manufacture of claim 15 , wherein the selection mechanism selects one arbitrary member of the set of data providers or all members of the set of data providers.

20

20. The article of manufacture of claim 15 , wherein the specification of a selection mechanism comprises the specification of a mapping from an assignment of values for attributes of a data provider to a numeric value and the specification of a mechanism for selecting a subset of a set of data providers given the numeric value to which the mapping maps the attribute values of each data provider in the set.

21

21. The article of manufacture of claim 20 , wherein the specification of a mapping from an assignment of values for attributes of a data provider to a numeric value comprises a number-valued expression in which the names of the attributes of a data provider appear, representing the assigned values of the attributes.

22

22. The article of manufacture of claim 21 , wherein the number-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.

Patent Metadata

Filing Date

Unknown

Publication Date

February 3, 2009

Inventors

Norman Howard Cohen
Paul C. Castro
Archan Misra

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “METHODS AND APPARATUS FOR SPECIFYING AND PROCESSING DESCRIPTIVE QUERIES FOR DATA SOURCES” (7487142). https://patentable.app/patents/7487142

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.

METHODS AND APPARATUS FOR SPECIFYING AND PROCESSING DESCRIPTIVE QUERIES FOR DATA SOURCES — Norman Howard Cohen | Patentable