System and method for handling user editing history based on spawning, merging data structures of directed acyclic graph
First Claim
1. A method, comprising:
- at a computer system;
formatting for display a hierarchical data structure associated with a transaction, wherein the hierarchical data structure comprises a plurality of structural elements within a single first document;
spawning, from a first sub-node in a plurality of sub-nodes to a second sub-node in the plurality of sub-nodes, a branch in a directed acyclic graph, the directed acyclic graph including;
(a) a root node corresponding to a master instance of the hierarchical data structure, (b) the plurality of sub-nodes, and (c) a plurality of branches, wherein each respective sub-node in the plurality of sub-nodes corresponds to an edited version of the hierarchical data structure in a plurality of edited versions of the hierarchical data structure in a respective edited version of the single first document, and wherein a respective sub-node in the plurality of sub-nodes is connected with another sub-node in the plurality of sub-nodes by at least one branch in the plurality of branches,wherein a respective edited version in the plurality of edited versions of the hierarchical data structure is associated with (a) a respective secondary instance of the hierarchical data structure, and (b) a respective change set corresponding to the secondary instance, andwherein the respective change set includes one or more edits, by a user associated with the respective edited version of the hierarchical data structure, to the hierarchical data structure;
obtaining (a) a first change set associated with a first edited version of the hierarchical data structure, wherein the first change set is also associated with the first sub-node and includes one or more edits, by a user associated with the first edited version of the hierarchical data structure, with respect to two or more sub-nodes in the plurality of sub-nodes, and (b) a second change set associated with a second edited version of the hierarchical data structure, wherein the second change set is associated with a third sub-node in the plurality of sub-nodes, the third sub-node having at least one common ancestor node with the first sub-node in the directed acyclic graph; and
wherein the first change set is associated with a first user and the second change set is associated with a second user and wherein the first edited version and the second edited version are in the plurality of edited versions; and
responsive to a predefined user selection;
merging a portion of the first change set with a portion of the second change set to produce a third change set while retaining the first change set and the second change set,generating an additional secondary instance of the hierarchical data structure by applying one or more edits included in the third change set to the plurality of structural elements included in the master instance of the hierarchical data structure,associating the additional secondary instance of the hierarchical data structure with an edited version of the hierarchical data structure, andassociating the edited version of the hierarchical data structure with the second sub-node in the directed acyclic graph.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods for formatting a hierarchical data structure having structural elements (“HDS”) are provided. A branch in a directed acyclic graph is spawned. The graph includes a root node and a plurality of sub-nodes respectively corresponding to master and edited versions of the HDS, respectively. An edited version of the HDS is associated with a secondary instance of the HDS, and a change set corresponding thereto. The change set includes user edits. In the method first and second change sets are obtained and, responsive to a user selection, portions thereof are merged to produce a third change set. An additional secondary instance of the HDS is generated by applying the third change set to structural elements included in the master instance of the HDS. The additional secondary instance of the HDS is associated with an edited version of the HDS which, in turn, is associated with a sub-node in the graph.
-
Citations
51 Claims
-
1. A method, comprising:
at a computer system; formatting for display a hierarchical data structure associated with a transaction, wherein the hierarchical data structure comprises a plurality of structural elements within a single first document; spawning, from a first sub-node in a plurality of sub-nodes to a second sub-node in the plurality of sub-nodes, a branch in a directed acyclic graph, the directed acyclic graph including;
(a) a root node corresponding to a master instance of the hierarchical data structure, (b) the plurality of sub-nodes, and (c) a plurality of branches, wherein each respective sub-node in the plurality of sub-nodes corresponds to an edited version of the hierarchical data structure in a plurality of edited versions of the hierarchical data structure in a respective edited version of the single first document, and wherein a respective sub-node in the plurality of sub-nodes is connected with another sub-node in the plurality of sub-nodes by at least one branch in the plurality of branches,wherein a respective edited version in the plurality of edited versions of the hierarchical data structure is associated with (a) a respective secondary instance of the hierarchical data structure, and (b) a respective change set corresponding to the secondary instance, and wherein the respective change set includes one or more edits, by a user associated with the respective edited version of the hierarchical data structure, to the hierarchical data structure; obtaining (a) a first change set associated with a first edited version of the hierarchical data structure, wherein the first change set is also associated with the first sub-node and includes one or more edits, by a user associated with the first edited version of the hierarchical data structure, with respect to two or more sub-nodes in the plurality of sub-nodes, and (b) a second change set associated with a second edited version of the hierarchical data structure, wherein the second change set is associated with a third sub-node in the plurality of sub-nodes, the third sub-node having at least one common ancestor node with the first sub-node in the directed acyclic graph; and
wherein the first change set is associated with a first user and the second change set is associated with a second user and wherein the first edited version and the second edited version are in the plurality of edited versions; and
responsive to a predefined user selection;merging a portion of the first change set with a portion of the second change set to produce a third change set while retaining the first change set and the second change set, generating an additional secondary instance of the hierarchical data structure by applying one or more edits included in the third change set to the plurality of structural elements included in the master instance of the hierarchical data structure, associating the additional secondary instance of the hierarchical data structure with an edited version of the hierarchical data structure, and associating the edited version of the hierarchical data structure with the second sub-node in the directed acyclic graph. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
18. A computer system, comprising:
-
one or more processors; memory storing one or more programs for execution by the one or more processors, the one or more programs including instructions for; formatting for display a hierarchical data structure associated with a transaction, wherein the hierarchical data structure comprises a plurality of structural elements within a single first document; spawning, from a first sub-node in a plurality of sub-nodes to a second sub-node in the plurality of sub-nodes, a branch in a directed acyclic graph, the directed acyclic graph including;
(a) a root node corresponding to a master instance of the hierarchical data structure, (b) the plurality of sub-nodes, and (c) a plurality of branches, wherein each sub-node in the plurality of sub-nodes corresponds to an edited version of the hierarchical data structure in a plurality of edited versions of the hierarchical data structure in a respective edited version of the single first document and wherein a respective sub-node in the plurality of sub-nodes is connected with another sub-node in the plurality of sub-nodes by at least one branch in the plurality of branches,wherein a respective edited version in the plurality of edited versions of the hierarchical data structure is associated with (a) a respective secondary instance of the hierarchical data structure, and (b) a respective change set corresponding to the secondary instance, and wherein the respective change set includes one or more edits, by a user associated with the respective edited version of the hierarchical data structure, to the hierarchical data structure; obtaining (a) a first change set associated with a first edited version of the hierarchical data structure, wherein the first change set is also associated with the first sub-node and includes one or more edits, by a user associated with the first edited version of the hierarchical data structure, and (b) a second change set associated with a second edited version of the hierarchical data structure, wherein the second change set is associated with a third sub-node in the plurality of sub-nodes, the third sub-node having at least one common ancestor node with the first sub-node in the directed acyclic graph, and wherein the first change set is associated with a first user and the second change set is associated with a second user and wherein the first edited version and the second edited version are in the plurality of edited versions; and responsive to a predefined user selection; merging a portion of the first change set with a portion of the second change set to produce a third change set while retaining the first change set and the second change set, generating an additional secondary instance of the hierarchical data structure by applying one or more edits included in the third change set to the plurality of structural elements included in the master instance of the hierarchical data structure, associating the additional secondary instance of the hierarchical data structure with an edited version of the hierarchical data structure, and associating the edited version of the hierarchical data structure with the second sub-node in the directed acyclic graph. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A non-transitory computer readable storage medium storing one or more programs for execution by the one or more processors of a computer system, the one or more programs including instructions for:
-
formatting for display a hierarchical data structure associated with a transaction, wherein the hierarchical data structure comprises a plurality of structural elements within a single first document; spawning, from a first sub-node in a plurality of sub-nodes to a second sub-node in the plurality of sub-nodes, a branch in a directed acyclic graph, the directed acyclic graph including;
(a) a root node corresponding to a master instance of the hierarchical data structure, (b) the plurality of sub-nodes, and (c) a plurality of branches, wherein each respective sub-node in the plurality of sub-nodes corresponds to an edited version of the hierarchical data structure in a plurality of edited versions of the hierarchical data structure in a respective edited version of the single first document, and wherein a respective sub-node in the plurality of sub-nodes is connected with another sub-node in the plurality of sub-nodes by at least one branch in the plurality of branches, whereina respective edited version in the plurality of edited versions of the hierarchical data structure is associated with (a) a respective secondary instance of the hierarchical data structure, and (b) a respective change set corresponding to the secondary instance, and the respective change set includes one or more edits, by a user associated with the respective edited version of the hierarchical data structure, to the hierarchical data structure; obtaining (a) a first change set associated with a first edited version of the hierarchical data structure, wherein the first change set is also associated with the first sub-node and includes one or more edits, by a user associated with the first edited version of the hierarchical data structure, and (b) a second change set associated with a second edited version of the hierarchical data structure, wherein the second change set is associated with a third sub-node in the plurality of sub-nodes, the third sub-node having at least one common ancestor node with the first sub-node in the directed acyclic graph, and wherein the first change set is associated with a first user and the second change set is associated with a second user and wherein the first edited version and the second edited version are in the plurality of edited versions; and responsive to a predefined user selection; merging a portion of the first change set with a portion of the second change set to produce a third change set while retaining the first change set and the second change set, generating an additional secondary instance of the hierarchical data structure by applying one or more edits included in the third change set to the plurality of structural elements included in the master instance of the hierarchical data structure, associating the secondary instance of the hierarchical data structure with an edited version of the hierarchical data structure, and associating the edited version of the hierarchical data structure with the second sub-node in the directed acyclic graph. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51)
-
Specification