Method and apparatus for merging electronic documents containing markup language
First Claim
1. A method for merging a source document into a destination document to create a merged document, wherein the source document or the destination document or both contain one or more markup language tags having a start tag or an end tag or both a start tag and an end tag, the method comprising:
- comparing the source document and the destination document to identify one or more matching blocks and one or more difference blocks;
splitting all matching blocks that contain a markup language tag for which only a start tag or an end tag has been matched so that the matched markup language tags are no longer matched;
splitting all matching blocks that contain a markup language tag for which either the start tag or the end tag has been matched to a different tag in the other document so that the matched markup language tags are no longer matched;
splitting any matching blocks containing markup language tags that would create overlapping tags when merged; and
merging the matching and difference blocks so that all markup language tags contained in the merged document are well formed by;
copying, for each matching block, text from one of the following;
the source document and the destination document, in the matching block into the merged document,copying, for each difference block, the text from one of the following;
the source document and the destination document, in the difference block into the merged document if the difference block respectively contains text only from one of the following;
the source document and the destination document, andcopying, for each difference block, the text from the source document and the destination document in the difference block into the merged document if the difference block contains text from both the source document and the destination document wherein the text from the source document is copied to a first section of the merged document and the text from the destination document is copied to a second section of the merged document.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus are provided for merging two electronic documents, one or both of which contain markup language. The source document and the destination document are compared to identify the matching blocks and the difference blocks. Each of the matching blocks containing a markup language tag for which only a start tag or an end tag has been matched are identified. The identified blocks are then split so that the matched markup language tags are no longer matched. All matching blocks are also split that contain a markup language tag for which either the start tag or the end tag has been matched to a different tag in the other document. Any matching blocks containing markup language tags that would create overlapping tags when merged are then split. The matching and difference blocks are then merged into a merged document in an order that ensures that all markup language tags contained in the merged document are well formed.
52 Citations
20 Claims
-
1. A method for merging a source document into a destination document to create a merged document, wherein the source document or the destination document or both contain one or more markup language tags having a start tag or an end tag or both a start tag and an end tag, the method comprising:
-
comparing the source document and the destination document to identify one or more matching blocks and one or more difference blocks; splitting all matching blocks that contain a markup language tag for which only a start tag or an end tag has been matched so that the matched markup language tags are no longer matched; splitting all matching blocks that contain a markup language tag for which either the start tag or the end tag has been matched to a different tag in the other document so that the matched markup language tags are no longer matched; splitting any matching blocks containing markup language tags that would create overlapping tags when merged; and merging the matching and difference blocks so that all markup language tags contained in the merged document are well formed by; copying, for each matching block, text from one of the following;
the source document and the destination document, in the matching block into the merged document,copying, for each difference block, the text from one of the following;
the source document and the destination document, in the difference block into the merged document if the difference block respectively contains text only from one of the following;
the source document and the destination document, andcopying, for each difference block, the text from the source document and the destination document in the difference block into the merged document if the difference block contains text from both the source document and the destination document wherein the text from the source document is copied to a first section of the merged document and the text from the destination document is copied to a second section of the merged document. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-readable medium which stores a set of instructions which when executed performs a method for merging a source document into a destination document to create a merged document, wherein the source document or the destination document or both contain one or more markup language tags having a start tag or an end tag or both a start tag and an end tag, the method executed by the set of instructions comprising:
-
comparing the source document and the destination document to identify one or more matching blocks and one or more difference blocks; splitting all matching blocks that contain a markup language tag for which only a start tag or an end tag has been matched so that the matched markup language tags are no longer matched; splitting all matching blocks that contain a markup language tag for which either the start tag or the end tag has been matched to a different tag in the other document so that the matched markup language tags are no longer matched; splitting any matching blocks containing markup language tags that would create overlapping tags when merged; and merging the matching and difference blocks so that all markup language tags contained in the merged document are well formed by interleaving text from the source document and the destination document into the merged document wherein well formed comprises that each start tag in the markup language tags must have a corresponding end tag and each end tag in the markup language tags must have a corresponding start tag. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A system for merging a source document into a destination document to create a merged document, wherein the source document or the destination document or both contain one or more markup language tags having a start tag or an end tag or both a start tag and an end tag, the system comprising:
-
a memory storage for maintaining a database; and a processing unit coupled to the memory storage, wherein the processing unit is operative to; compare the source document and the destination document to identify one or more matching blocks and one or more difference blocks; split all matching blocks that contain a markup language tag for which only a start tag or an end tag has been matched so that the matched markup language tags are no longer matched; split all matching blocks that contain a markup language tag for which either the start tag or the end tag has been matched to a different tag in the other document so that the matched markup language tags are no longer matched; split any matching blocks containing markup language tags that would create overlapping tags when merged; and merge the matching and difference blocks so that all markup language tags contained in the merged document are well formed by interleaving text from the source document and the destination document into the merged document wherein well formed comprising the matching and the difference blocks merged in an order such that no overlapping tags are present in the merged document wherein the processing unit being operative to merge the matching and difference blocks so that all markup language tags contained in the merged document are well formed comprises the processing unit is operative to; process each matching block and difference block in order, copy, for each matching block, text from the source or destination document in the matching block into the merged document, and copy, for each difference block, the text from the source or destination document in the difference block into the merged document if the difference block contains text only from either the source or destination document. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification