System and method for user edit merging with preservation of unrepresented data
First Claim
1. A computer-implemented method for preserving unrepresented data in a document exchanged between a first application and a second application for editing and displaying the document with distinct editing capabilities, comprising:
- enabling the document to be edited by a user through the first application, wherein editing the document through the first application includes displaying the contents of the document;
parsing the document to generate a tree representation of the document, wherein a root of the tree corresponds to the document and nodes of the tree correspond to one of elements and properties of the document;
associating a size with each node of the tree, wherein a size of a leaf node corresponding to an element is determined by a number of document units associated with the element, and a size of a branch node is determined by an aggregate of leaf node sizes underneath the branch node;
flagging a node when the node corresponds to unrepresented data, wherein the unrepresented data is a portion of contents in the document editable by the first application but not editable by the second application;
enabling the document to be edited by a user through the second application, wherein editing the document through the second application includes displaying the contents of the document but not allowing editing of the unrepresented data;
receiving edits on the document from the second application; and
maintaining unrepresented data for subsequent editing through the first application by observing the flagged node when exchanging the edited document between the second application and the first application.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for preserving unrepresented data in a document exchanged between applications. Applications handling the document, or computing devices executing the applications may have different capabilities with respect to a particular feature of the document such as certain formatting properties, footnotes, graphical attributes, and the like. Data associated with such features, unrepresented data, is preserved by employing a tree structure for the document and flagging nodes associated with unrepresented data. Flagged nodes are ignored, but preserved, when the document is handled by an application or computing device with different capabilities. When the document is handled again by an application or computing device that is capable of processing those features, the unrepresented data is made available along with any modifications made to the document during the previous handling.
22 Citations
18 Claims
-
1. A computer-implemented method for preserving unrepresented data in a document exchanged between a first application and a second application for editing and displaying the document with distinct editing capabilities, comprising:
-
enabling the document to be edited by a user through the first application, wherein editing the document through the first application includes displaying the contents of the document; parsing the document to generate a tree representation of the document, wherein a root of the tree corresponds to the document and nodes of the tree correspond to one of elements and properties of the document; associating a size with each node of the tree, wherein a size of a leaf node corresponding to an element is determined by a number of document units associated with the element, and a size of a branch node is determined by an aggregate of leaf node sizes underneath the branch node; flagging a node when the node corresponds to unrepresented data, wherein the unrepresented data is a portion of contents in the document editable by the first application but not editable by the second application; enabling the document to be edited by a user through the second application, wherein editing the document through the second application includes displaying the contents of the document but not allowing editing of the unrepresented data; receiving edits on the document from the second application; and maintaining unrepresented data for subsequent editing through the first application by observing the flagged node when exchanging the edited document between the second application and the first application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-readable medium having computer instructions encoded thereon for preserving unrepresented data in a document exchanged between a first application and a second application for editing and displaying the document with distinct editing capabilities, the instructions comprising:
-
enabling the document to be edited by a user through the first application, wherein editing the document through the first application includes displaying the contents of the document; generating a tree representation of the document, wherein a root node corresponds to the document and each node of the tree corresponds to one of elements and properties of the document; associating a size with each node of the tree, wherein a size of a node corresponding to an element is determined by a number of document units associated with the element, and a size of a branch node is determined by an aggregate of node sizes underneath the branch node; assigning a predetermined size to a node when the node corresponds to unrepresented data, wherein the unrepresented data is a portion of contents in the document editable by the first application but not editable by the second application; enabling the document to be edited by a user through the second application, wherein editing the document through the second application includes displaying the contents of the document but not allowing editing of the unrepresented data; receiving edits on the document from the second application; and maintaining the unrepresented data for subsequent editing by the first application by observing the nodes with the predetermined size when exchanging the edited document between the second application and the first application. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A computer-implemented method for handling a document with unrepresented data, exchanged between a first application capable of editing all data within the document and a second application incapable of editing the unrepresented data within the document, the method comprising:
-
parsing a tree representation of the document beginning with a root node, wherein the root node includes accumulated size information corresponding to a sum of sizes of all child nodes within the tree and wherein the child nodes of the tree correspond to one of elements and properties of the document a portion of which are not editable by the second application; ignoring each node with a size value of zero, wherein a size value of a leaf node corresponding to an element is determined by a number of document units associated with the element, and a size value of a branch node is determined by an aggregate of leaf node size values underneath the branch node; accumulating the size values as the tree is parsed; completing the parsing when the accumulated size values are substantially equal to the root node size value; enabling editing of the document through the second application, wherein editing the document through the second application includes displaying the contents of the document but not allowing editing of the unrepresented data; and receiving edits on the document from the second application; and exchanging the edited document between the second application and the first application. - View Dependent Claims (16, 17, 18)
-
Specification