Electronic document processing system and method for merging source documents on a node-by-node basis to generate a target document
First Claim
1. A document processing method comprising the steps of:
- (a) parsing syntax of a plurality of source documents to generate, for each source document, a hierarchical structure source tree of nodes including a root node and dependent nodes;
(b) dynamically determining on a merge-by-merge basis which source tree is to be treated as having a fixed role for merging;
(c) merging source trees to provide a target tree, said step of merging being done on a node-by-node basis and including, (c1) considering root nodes as matching root nodes and generating a single target tree root node corresponding to said matching root nodes from at least two matching root nodes according to criteria specified by attributes of the matching root nodes;
(c2) identifying matching source nodes in the source trees, inserting a single node in the target tree corresponding to the matching source nodes, respectively, and inserting other nodes in the target tree with reference to said single node, said matching being determined independently of corresponding level within said hierarchical structure of said source trees of nodes;
(c3) wherein, during merging, a structure of the source tree having the fixed role is preserved in the target tree, and a non-matching node from a source tree having a movable role is added to the target tree as a child of a node which represents its parent node from said movable role source tree, an order of non-matching nodes of the movable role source tree being preserved unless modified by the presence of a matching node, such that all descendents of a given movable role matching node will not necessarily be descendents of a given single node representing said given movable role matching node in the target tree; and
(d) rendering the target tree to provide a target document.
5 Assignments
0 Petitions
Accused Products
Abstract
A target document (25) is generated by merging four source documents (2-5). There are three merge operations, an operation (10) for two source documents (2, 13), an operation (13) for an intermediate target document and a source document (4), and an operation (21) for a second intermediate target document and a final source document (5). In each merge operation one source document inherits from the other. An inheriting instruction is embedded within the inheriting document. Merging is performed by parsing a document (6, 8, 11, 20) into a hierarchical tree if it is not already in that form, and merging the trees. Matching nodes are identified and are combined or replaced according to a policy.
198 Citations
17 Claims
-
1. A document processing method comprising the steps of:
-
(a) parsing syntax of a plurality of source documents to generate, for each source document, a hierarchical structure source tree of nodes including a root node and dependent nodes;
(b) dynamically determining on a merge-by-merge basis which source tree is to be treated as having a fixed role for merging;
(c) merging source trees to provide a target tree, said step of merging being done on a node-by-node basis and including, (c1) considering root nodes as matching root nodes and generating a single target tree root node corresponding to said matching root nodes from at least two matching root nodes according to criteria specified by attributes of the matching root nodes;
(c2) identifying matching source nodes in the source trees, inserting a single node in the target tree corresponding to the matching source nodes, respectively, and inserting other nodes in the target tree with reference to said single node, said matching being determined independently of corresponding level within said hierarchical structure of said source trees of nodes;
(c3) wherein, during merging, a structure of the source tree having the fixed role is preserved in the target tree, and a non-matching node from a source tree having a movable role is added to the target tree as a child of a node which represents its parent node from said movable role source tree, an order of non-matching nodes of the movable role source tree being preserved unless modified by the presence of a matching node, such that all descendents of a given movable role matching node will not necessarily be descendents of a given single node representing said given movable role matching node in the target tree; and
(d) rendering the target tree to provide a target document. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A document processing system comprising:
-
(a) means for parsing syntax of a plurality of source documents to generate, for each source document, a hierarchical structure source tree of nodes including a root node and dependent nodes;
(b) means for dynamically determining on a merge-by-merge basis which source tree is to be treated as having a fixed role for merging;
(c) means for merging source trees to provide a target tree, said merging being done on a node-by-node basis;
(c1) wherein during merging the system considers root nodes as matching root nodes and generates a single target tree root node corresponding to said matching root nodes from at least two matching root nodes according to criteria specified by attributes of the matching root nodes;
(c2) wherein during merging the system identifies matching source nodes in the source trees, inserts a single node in the target tree corresponding to the matching source nodes, respectively, and inserts other nodes in the target tree with reference to said single node, said matching being determined independently of corresponding level within said hierarchical structure of said source trees of nodes;
(c3) wherein, during merging, a structure of the source tree having the fixed role is preserved in the target tree, and a non-matching node from a source tree having a movable role is added to the target tree as a child of a node which represents its parent node from said movable role source tree, an order of non-matching nodes of the movable role source tree being preserved unless modified by the presence of a matching node, such that all descendents of a given movable role matching node will not necessarily be descendents of a given single node representing said given movable role matching node in the target tree; and
(d) means for rendering the target tree to provide a target document. - View Dependent Claims (14, 15, 16, 17)
-
Specification