Generic hierarchical structure with hard-pegging of nodes with dependencies implemented in a relational database
First Claim
1. A computer-implemented method of managing hierarchically related and heterogeneous data structures, comprising the steps of:
- separating the data structures from hierarchical information interrelating the data structures;
representing and storing the hierarchical information as a nodal tree structure, the nodal tree structure including a first node and a plurality of second nodes, each node being in a parent-child relationship with at least one other node each of the first and second nodes including a dependency attribute indicative of a dependency relationship of the child node with its respective parent node, the dependency attribute constraining applications accessing the data structures to enforce the dependency relationship, the dependency attribute being selected from the group consisting of parent, child and independent, wherein the parent dependency attribute indicates that execution of the child node is predicated upon prior execution of its parent node, the child dependency attribute indicates that execution of the parent node is predicated upon prior execution of one of its child nodes and the independent dependency attribute indicates that neither parent nor child node is dependent upon prior execution of any other node, and storing the data structures separately from the nodal tree structure, each of the first node and the plurality of second nodes referencing one of the data structures.
3 Assignments
0 Petitions
Accused Products
Abstract
A computer-implemented method of managing hierarchically related and heterogeneous data structures includes the steps of separating the data structures from hierarchical information interrelating the data structures and representing and storing the hierarchical information as a nodal tree structure. The nodal tree structure includes a first node and a plurality of second nodes, each node being in a parent-child relationship with at least one other node. The data structures are stored separately from the nodal tree structure and each of the first node and the plurality of second nodes references one of the data structures. Each of the second nodes is a child node, and each child node has a respective parent node selected from among the first node and the plurality of second nodes. Each of the second nodes includes a dependency attribute indicative of a dependency relationship of the child node with its respective parent node. Applications accessing the data structures may be configured to enforce the dependency relationships based upon the dependency attributes. In this manner, heterogeneous but related data structures such as operation sequences, scheduling and costing data may be collectively referenced by a single hierarchical structure.
95 Citations
17 Claims
-
1. A computer-implemented method of managing hierarchically related and heterogeneous data structures, comprising the steps of:
-
separating the data structures from hierarchical information interrelating the data structures;
representing and storing the hierarchical information as a nodal tree structure, the nodal tree structure including a first node and a plurality of second nodes, each node being in a parent-child relationship with at least one other node each of the first and second nodes including a dependency attribute indicative of a dependency relationship of the child node with its respective parent node, the dependency attribute constraining applications accessing the data structures to enforce the dependency relationship, the dependency attribute being selected from the group consisting of parent, child and independent, wherein the parent dependency attribute indicates that execution of the child node is predicated upon prior execution of its parent node, the child dependency attribute indicates that execution of the parent node is predicated upon prior execution of one of its child nodes and the independent dependency attribute indicates that neither parent nor child node is dependent upon prior execution of any other node, and storing the data structures separately from the nodal tree structure, each of the first node and the plurality of second nodes referencing one of the data structures. - View Dependent Claims (2, 3, 4, 5, 6, 7)
traversing the nodal tree structure from a selected lower level-node up to a selected higher-level node in the tree structure;
accessing the cost information in the data structures referenced by each node traversed;
aggregating the accessed cost information, and presenting the aggregated cost information as a cost of carrying out said at least one activity.
-
-
3. The method of claim 1, further comprising the step of assigning a weight coefficient to selected ones of the first and the plurality of second nodes.
-
4. The method of claim 3, wherein at least some of the data structures include cost information for at least one activity, and wherein the method further comprises the steps of:
-
traversing the tree structure from a selected lower-level node to a selected higher-level node in the tree structure;
accessing the cost information in the data structures referenced by each node traversed;
aggregating the accessed cost information, the assigned weight coefficients weighting a cost contribution of each of the data structures, and presenting the aggregated cost information as a cost of said at least one activity.
-
-
5. The method of claim 1, wherein at least some of the data structures include scheduling information for an activity to be performed and wherein the method further comprises the step of:
-
traversing the tree structure in one of a top-down and bottom-up direction, and accessing the scheduling information to determine one of a completion date and a start date, respectively, of the activity and presenting one of the start and end dates of the activity.
-
-
6. The method of claim 1, wherein the data structures are of heterogeneous data types, and wherein the method further comprises the step of:
storing a first pointer in each of the first and second nodes, the first pointer including a combination of node type and node name that uniquely identifies a location of one data structure.
-
7. The method of claim 1, further comprising the step of storing each of the first and the plurality of second nodes as a row in a table of one of a relational and object-oriented database.
-
8. A machine readable medium having data stored thereon representing sequences of instructions which, when executed by a computer system, cause said computer system to perform the steps of:
-
creating a hierarchical nodal structure, including;
a first node;
a plurality of second nodes, each of the second nodes being related to the first node and to at least one other second node, each node being in a separate parent-child relationship with at least one other node each of the first and second nodes including a dependency attribute indicative of a dependency relationship of the child node with its respective parent node, the dependency attribute constraining applications accessing the data structures to enforce the dependency relationship, the dependency attribute being selected from the group consisting of parent, child and independent, wherein the parent dependency attribute indicates that execution of the child node is predicated upon prior execution of its parent node, the child dependency attribute indicates that execution of the parent node is predicated upon prior execution of one of its child nodes and the independent dependency attribute indicates that neither parent nor child node is dependent upon prior execution of any other node; and
assigning a first pointer to each of said first and second nodes, each assigned first pointer pointing to one of a plurality of data structures stored separately from said hierarchical nodal structure, wherein the stored data structures pointed to contain no hierarchical information and wherein the created hierarchical nodal structure contains no data structures. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer system for managing hierarchical information, comprising:
-
at least one processor;
at least one data storage device;
a plurality of processes spawned by said at least one processor, said processes including processing logic for storing, in said at least one data storage device, a hierarchical nodal structure, including;
a first node;
a plurality of second nodes, each of the second nodes being related to the first node and to at least one other second node; and
a plurality of data structures distinct from said hierarchical nodal structure, wherein each of the first and the plurality of second nodes includes a first pointer to one of the plurality of data structures stored in said at least one data storage device, each of the second nodes being a child node, each child node having a respective parent node selected from among the first node and the plurality of second nodes, each of the first and second nodes including a dependency attribute indicative of a dependency relationship of the child node with its respective parent node, the dependency attribute constraining applications accessing the data structures to enforce the dependency relationship, the dependency attribute being selected from the group consisting of parent, child and independent, wherein the parent dependency attribute indicates that execution of the child node is predicated upon prior execution of its parent node, the child dependency attribute indicates that execution of the parent node is predicated upon prior execution of one of its child nodes and the independent dependency attribute indicates that neither parent nor child node is dependent upon prior execution of any other node. - View Dependent Claims (16, 17)
-
Specification