Transforming an expression tree hierarchy of a database query for dynamic data of a database
AssigneeNAVEX Global, Inc.
InventorTimothy R. Norman
Life of this patent
Estimating the term…
Abstract
A system can generate an expression tree hierarchy based on a database query that refers to dynamic data of a database having a data model. The dynamic data is undefined in the data model of the database. The system can invoke a process that traverses the expression tree hierarchy to transform the expression tree hierarchy and iteratively or recursively translate multiple expression fragments of the expression tree hierarchy in accordance with the process while maintaining a contextual type stack. A particular iteration or recursion operates on a particular expression fragment of the multiple expression fragments to convert the particular expression fragment into another expression fragment for another expression tree hierarchy.
Claims20
At least one computer-readable storage medium, excluding transitory signals and carrying instructions, which, when executed by at least one data processor, cause the data processor to:
- generate an expression tree hierarchy based on a database query that refers to dynamic data of a database having a data model, wherein the dynamic data is undefined in the data model of the database,
- invoke a process that traverses the expression tree hierarchy to transform the expression tree hierarchy into another expression tree hierarchy;
- iteratively or recursively translate multiple expression fragments of the expression tree hierarchy in accordance with the process while maintaining a contextual type stack,
- wherein a particular iteration or recursion operates on a particular expression fragment of the multiple expression fragments to convert the particular expression fragment into another expression fragment for the other expression tree hierarchy.
A method for querying dynamic data in a database, the database having a data model, the method comprising:
- generating an expression tree hierarchy based on a database query that refers to dynamic data of a database having a data model,
- wherein the dynamic data includes a user-defined database column or dynamic table name, and
- wherein the expression tree hierarchy is based on the user-defined database column or the dynamic table name;
- invoking a process that traverses the expression tree hierarchy to transform the expression tree hierarchy;
- iteratively or recursively translating multiple expression fragments of the expression tree hierarchy in accordance with the process,
- wherein a particular iteration or recursion operates on a particular expression fragment of the multiple expression fragments to convert the particular expression fragment into another expression fragment for another expression tree hierarchy.
A computing system for querying dynamic data in a database, the database having a data model, the system comprising:
- one or more data processors;
- and
- a memory storing instructions that, when executed by the one or more data processors, cause the computing system to:
- generate an expression tree hierarchy based on a database query that refers to dynamic data of a database having a data model,
- invoke a process that traverses the expression tree hierarchy to transform the expression tree hierarchy into another expression tree hierarchy;
- iteratively or recursively translate multiple expression fragments of the expression tree hierarchy in accordance with the process,
- wherein a particular iteration or recursion operates on a particular expression fragment of the multiple expression fragments to convert the particular expression fragment into another expression fragment for the other expression tree hierarchy.
Dependencies are inferred from the claim text.