Virtual product hierarchies
First Claim
1. A method for querying data arranged in a base hierarchy using a virtual hierarchy related to the base hierarchy through a plurality of change data, the method comprising:
- storing the base hierarchy and the plurality of change data in a database management system, wherein each item of change data includes an instruction to add, delete, or move a node between the base hierarchy and the virtual hierarchy, wherein each item of change data is an invertible instruction with a corresponding instruction that undoes the change, and wherein an order of the change data is maintained for a plurality of items of change data;
displaying the virtual hierarchy in a display of a computer based on an application of the change data to the base hierarchy;
receiving a query in a user interface to the database management system with respect to the virtual hierarchy;
for each change datum in the plurality of change data, identifying a corresponding inverse, thereby identifying a plurality of inverses;
using the plurality of inverses, determining a modified query with respect to the base hierarchy, wherein the query with respect to the virtual hierarchy and the modified query with respect to the base hierarchy have an identical result;
performing the modified query on the base hierarchy using the database management system, wherein the plurality of change data are arranged in an order and the modified query is determined by iteratively applying the plurality of inverses to the query in a reverse of the order; and
presenting a result of the modified query as a query result for the query against the virtual hierarchy.
10 Assignments
0 Petitions
Accused Products
Abstract
A base hierarchy of products or the like can be user-modified into a virtual hierarchy that is represented as a collection of changes to the base hierarchy rather than a new hierarchy stored in memory. The collection of changes can be used to enable user interactions such as queries, displays, and writes using the virtual hierarchy as thought it were an actual hierarchy stored in memory, with aspects of the virtual hierarchy dynamically created using a collection of procedures based on the changes and corresponding inverses. The representation of the modified hierarchy can be dynamically displayed to a user or otherwise processed in the same manner as other hierarchies and hierarchical data.
-
Citations
14 Claims
-
1. A method for querying data arranged in a base hierarchy using a virtual hierarchy related to the base hierarchy through a plurality of change data, the method comprising:
-
storing the base hierarchy and the plurality of change data in a database management system, wherein each item of change data includes an instruction to add, delete, or move a node between the base hierarchy and the virtual hierarchy, wherein each item of change data is an invertible instruction with a corresponding instruction that undoes the change, and wherein an order of the change data is maintained for a plurality of items of change data; displaying the virtual hierarchy in a display of a computer based on an application of the change data to the base hierarchy; receiving a query in a user interface to the database management system with respect to the virtual hierarchy; for each change datum in the plurality of change data, identifying a corresponding inverse, thereby identifying a plurality of inverses; using the plurality of inverses, determining a modified query with respect to the base hierarchy, wherein the query with respect to the virtual hierarchy and the modified query with respect to the base hierarchy have an identical result; performing the modified query on the base hierarchy using the database management system, wherein the plurality of change data are arranged in an order and the modified query is determined by iteratively applying the plurality of inverses to the query in a reverse of the order; and presenting a result of the modified query as a query result for the query against the virtual hierarchy. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer program product comprising computer executable code embodied in a non-transitory computer readable medium that, when executing on one or more computing devices, queries data arranged in a base hierarchy using a virtual hierarchy related to the base hierarchy through a plurality of change data by performing the steps of:
-
storing the base hierarchy and the plurality of change data in a database management system, wherein each item of change data includes an instruction to add, delete, or move a node between the base hierarchy and the virtual hierarchy, wherein each item of change data is an invertible instruction with a corresponding instruction that undoes the change, and wherein an order of the change data is maintained for a plurality of items of change data; displaying the virtual hierarchy in a display of a computer based on an application of the change data to the base hierarchy; receiving a query in a user interface to the database management system with respect to the virtual hierarchy; for each change datum in the plurality of change data, identifying a corresponding inverse, thereby identifying a plurality of inverses; using the plurality of inverses, determining a modified query with respect to the base hierarchy, wherein the query with respect to the virtual hierarchy and the modified query with respect to the base hierarchy have an identical result; performing the modified query on the base hierarchy using the database management system, wherein the plurality of change data are arranged in an order and the modified query is determined by iteratively applying the plurality of inverses to the query in a reverse of the order; and presenting a result of the modified query as a query result for the query against the virtual hierarchy. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A system comprising:
-
a processor; a database management system storing a base hierarchy and a plurality of change data, wherein each item of change data includes an instruction to add, delete, or move a node between the base hierarchy and a virtual hierarchy, wherein each item of change data is an invertible instruction with a corresponding instruction that undoes the change, and wherein an order of the change data is maintained for a plurality of items of change data; a device displaying a virtual hierarchy based on an application of a plurality of change data to the base hierarchy; and memory bearing instructions that, when executed, cause the processor to receive a query in a user interface to the database management system with respect to the virtual hierarchy, for each change datum in the plurality of change data, to identify a corresponding inverse, thereby identifying a plurality of inverses, using the plurality of inverses, to determine a modified query with respect to the base hierarchy, wherein the query with respect to the virtual hierarchy and the modified query with respect to the base hierarchy have an identical result, to perform the modified query on the base hierarchy using the database management system wherein the plurality of change data are arranged in an order and the modified query is determined by iteratively applying the plurality of inverses to the query in a reverse order, and to present a result of the modified query as a query result for the query against the virtual hierarchy. - View Dependent Claims (12, 13, 14)
-
Specification