Claims
- 1. In a computer system, a method of defining sets of data to be retrieved from a data store, comprising the steps of:
providing a written representation of a desired data set in terms of dimensions and relation instances, the desired data set having a certain set type; and implying constraints on relation instances or dimensions by one of the set type of the desired data set and a record operator, said step of implying constraints enabling length of the written representation to be minimized.
- 2. A method as claimed in claim 1 wherein the step of providing a written representation includes employing any combination of a disjunctive expression and a conjunctive expression; and
further comprising the steps of:
performing OR-distribution on disjunctive expressions; and eliminating from disjunctive expressions, conjuncts with undefined binding variables.
- 3. A method as claimed in claim 1 wherein the step of providing a written representation includes employing any combination of disjunctive expressions and conjunctive expressions; and
further comprising the steps of:
translating conjunctive expressions to respective SQL join terms; and translating disjunctive expressions to respective SQL-union terms.
- 4. A method as claimed in claim 3 further comprising the step of rewriting the disjunctive and/or conjunctive expressions such that the SQL union operator is applied after the SQL join terms are calculated, resulting in a computationally faster implementation.
- 5. A method as claimed in claim 1 further comprising the step of automatically enforcing a record-operator where an expression in the written representation without the record-operator is equivalent to the expression with the record-operator.
- 6. A method as claimed in claim I wherein the step of providing a written representation includes employing an IN-statement and a disjunctive expression in a nested set; and
further comprising the step of applying OR-distribution within the nested set by treating the IN-statement effectively as a record-operator expression.
- 7. A method as claimed in claim I wherein the data store has a native query engine; and
further comprising the step of rewriting the written representation such that upon translation of the rewritten written representation into code for the native query engine, the code is optimized for querying the data store.
- 8. A method as claimed in claim I wherein the step of providing a written representation includes utilizing a certain symbol to specify hierarchical constraints on dimensions.
- 9. A method as claimed in claim 8 wherein the certain symbol is a colon.
- 10. A method as claimed in claim 1 wherein the step of providing a written representation includes utilizing any combination of AND and OR expressions; and
further comprising the step of performing OR-distribution in a manner that results in expressions with different sets of dimensions.
- 11. A method as claimed in claim 1 further comprising the step of grouping expressions from the written representation, based on record operator constraint.
- 12. In a computer system, apparatus for defining sets of data to be retrieved from a data store, comprising:
an input component for providing a written representation of a desired data set in terms of dimensions and relation instances, the desired data set having a certain set type; and an assembly coupled to receive the written representation, in response the assembly implying constraints on relation instances or dimensions by one of the set type of the desired data set and a record operator, said implying constraints enabling length of the written representation to be minimized.
- 13. Apparatus as claimed in claim 12 wherein the written representation includes any combination of a disjunctive expression and a conjunctive expression; and
the assembly further performs OR-distribution on disjunctive expressions and eliminates from disjunctive expressions, conjuncts with undefined binding variables.
- 14. Apparatus as claimed in claim 12 wherein the written representation includes any combination of disjunctive expressions and conjunctive expressions; and
the assembly translates conjunctive expressions to respective SQL join terms and disjunctive expressions to respective SQL-union terms.
- 15. Apparatus as claimed in claim 14 wherein the assembly rewrites the disjunctive and/or conjunctive expressions such that the SQL union operator is applied after the SQL join terms are calculated, resulting in a computationally faster implementation.
- 16. Apparatus as claimed in claim 12 wherein the assembly automatically enforces a record-operator where an expression in the written representation without the record-operator is equivalent to the expression with the record-operator.
- 17. Apparatus as claimed in claim 12 wherein the written representation includes an IN-statement and a disjunctive expression in a nested set; and
the assembly applies OR-distribution within the nested set by treating the IN-statement effectively as a record-operator expression.
- 18. Apparatus as claimed in claim 12 wherein the data store has a native query engine; and
the assembly further translates the written representation into code for the native query engine in a manner such that the code is optimized for querying the data store.
- 19. Apparatus as claimed in claim 12 wherein the written representation utilizes a certain symbol to specify hierarchical constraints on dimensions.
- 20. Apparatus as claimed in claim 19 wherein the certain symbol is a colon.
- 21. Apparatus as claimed in claim 12 wherein:
the written representation includes any combination of AND and OR expressions; and the assembly optionally performs OR-distribution in a manner that results in expressions with different sets of dimensions.
- 22. Apparatus as claimed in claim 12 wherein the assembly groups expressions from the written representation based on record operator constraint.
- 23. Apparatus as claimed in claim 12 wherein the input component includes:
an editor for composing written representations; and a search engine for enabling user browsing of dimension values and relations of the data store, to assist a user in composing desired written representations.
- 24. Apparatus as claimed in claim 23 wherein the search engine provides graphical views of dimension hierarchies for user browsing.
- 25. Apparatus as claimed in claim 23 wherein the editor employs a user interface which supports drag and drop of dimensions and relation values in written representations being composed.
RELATED APPLICATION(S)
[0001] This application claims the benefit of U.S. Provisional Application No. 60/355,158, filed Feb. 8, 2002 and U.S. Provisional Application No. 60/356,559, filed Feb. 12, 2002.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60355158 |
Feb 2002 |
US |
|
60356559 |
Feb 2002 |
US |