Nova Patents
WO0188750A1

A document processing system and method

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.

WO0188750A1, drawing sheet 1
Sheet 1 of 2

Term

No projected expiry on record.

  1. Priority
  2. Filed
  3. Published
  4. Today

29 claims: 18 independent, 11 dependent

  1. 1
    Claims 1. A document processing system comprising means for processing a source document to provide a target document, characterised in that the processing means comprises means for merging (10) the source document (2) with at least one other source document (3) to provide the target document.
  2. 5
    A system as claimed in any of claims 2 to 4, wherein the merge means comprises means for treating a source tree as having a fixed role and the other source tree as having a movable role, in which the structure of the source tree having the fixed role is preserved and the structure of the source tree having the movable role may be changed.
  3. 8
    A system as claimed in any of claims 5 to 7, wherein the merge means comprises means for adding a non-matching node of a movable role tree to the target tree as a child of the node that represents its parent from the movable role tree.
  4. 10
    A system as claimed in any of claims 5 to 9, wherein the merge means comprises means for handling a node having more than one ancestor matching node by placing it relative to the nearest ancestor matching node.
  5. 11
    A system as claimed in any of claims 5 to 10, wherein the merge means comprises means for preserving the order of non-matching nodes of the movable role source tree unless modified by the presence of a matching node.
  6. 12
    A system as claimed in any of claims 5 to 11, wherein the merge means comprises means for operating according to a lookup policy in which the movable role source tree is treated as a resource from which nodes are selectively chosen for merging.
  7. 13
    A system as claimed in any of claims 5 to 12, wherein the merge means comprises means for recognising a placeholder node in the fixed role tree and for placing a set of nodes of the movable role source tree in the target tree in lieu of the placeholder node.
  8. 14
    A system as claimed in any preceding claim, wherein the merge means comprises means for activating merging in response to an inheriting source document indicating that it should inherit content from an inherited source document.
  9. 17
    A system as claimed in any of claims 2 to 16, wherein the merge means comprises means for recognising a flag indicating required inheritance from a plurality of inherited documents, and for merging the inheriting and the plural inherited documents.
  10. 19
    A system as claimed in any of claims 2 to 18, wherein the merge means comprises means for merging partial documents.
  11. 20
    A system as claimed in any preceding claim wherein the merge means comprises means for operating according to merge instructions dynamically generated from a rule using current parameter values.
  12. 21
    A system as claimed in any of claims 2 to 20, wherein the processing means comprises means for parsing a source document to generate the source tree.
  13. 22
    A system as claimed in any of claims 2 to 21, wherein the processing means comprises means for rendering the target tree to provide the target document.
  14. 23
    A document processing system comprising means for processing a source document to provide a target document, characterised in that, the processing means comprises:means for parsing a source document into a source tree comprising a hierarchical structure of nodes according to a block structure of the document;means for merging source trees of at least two source documents to provide a target tree of a target document in which:- matching nodes of different source trees are identified, a single node corresponding to a pair of matching nodes is placed in the target tree, other nodes are placed in the target tree with reference to said single node, one source tree is treated as having a movable role and another as having a fixed role, and the order of non-matching nodes of the movable role source tree is preserved unless modified by the presence of a matching node, the merge means comprises means for adding a non-matching node of a movable role tree to the target tree as a child of the node that represents its parent from the movable role tree, the merge means comprises means for placing said non-matching node after child nodes of a matching node in the fixed tree if the parent of said non-matching node is a matching node, and the merge means comprises means for handling a node having more than one ancestor matching node by placing it relative to the nearest ancestor matching node;the processing means comprises means for rendering the target tree to provide the target document. A method of processing a source document (2, 3, 4, 5) to provide a target document (25), the method being carried out by a data processing system and the documents are in the electronic form, characterised in that the source document (2, 3, 4, 5) is merged with at least one other source document (2, 3, 4, 5) to provide the target document (25). A method as claimed in claim 24, wherein the method merges the source documents by: parsing (6, 8, 11, 20) the source documents to generate source trees (9, 14) comprising hierarchical structures of nodes;merging the source trees to provide a target tree (21);and rendering the target tree (21) to provide the target document (25). A method as claimed in claim 25, wherein the merging step comprises:- identifying matching nodes (X, Y, Z) in at least two source trees;inserting a single node corresponding to the matching nodes in the target tree;placing other nodes in the target tree with reference to said single node.
  15. 25
    28. A method as claimed in any of claims 25 to 27, wherein merging is initiated by a flag embedded in a source document indicating that it should inherit content from at least one other source document.
  16. 26
    29. A method as claimed in any of claims 25 to 28, wherein a source document is treated as having a fixed role and another source document is treated as having a movable role in which the structure of the fixed role source tree is preserved and the structure of the movable role source tree may be changed.
  17. 27
    30. A method as claimed in any of claims 24 to 29, wherein each of said source documents comprises a separate strand of associated content, and the method is performed to combine said strands of content in a single target document.
  18. 28
    31. A method as claimed in any of claims 24 to 30, wherein a source document is the output of a database query, and the method merges said result with another source document.