SYSTEM AND METHOD FOR PROVIDING A COMMON FRAMEWORK FOR REVIEWING COMPARISONS OF ELECTRONIC DOCUMENTS

Information

  • Patent Application
  • 20120133989
  • Publication Number
    20120133989
  • Date Filed
    November 29, 2011
    13 years ago
  • Date Published
    May 31, 2012
    12 years ago
Abstract
Systems and methods for providing a common framework for a document comparison review process are disclosed. Using the common framework, the comparison review process allows a reviewer to perform either an electronic-based review or a paper-based review. The different review technologies can be used interchangeably in the common framework.
Description
TECHNICAL FIELD

The present disclosure generally relates to providing a framework for reviewing and annotating comparisons of electronic documents.


BACKGROUND

Electronic documents, such as word processing documents, spreadsheets, and presentations, often undergo multiple revisions or are co-authored by multiple people who make changes to previous versions of the document. When two versions of a document are compared, the changes are typically reviewed by an individual who is skilled in the relevant field prior to accepting the changes in the latest version.


SUMMARY

Systems and methods for providing a common framework for a document comparison review process are disclosed. A reviewer can choose to review and provide annotations of a comparison document using either a paper-based method or an electronic-based method. The different review technologies are interchangeable using the common framework.


This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.





BRIEF DESCRIPTION OF THE DRAWINGS

Examples of an electronic document comparison review framework system and method are illustrated in the figures. The examples and figures are illustrative rather than limiting. The electronic document comparison review framework system and method are limited only by the claims.



FIG. 1 depicts a general environment in which a common review framework for the review process can be implemented.



FIG. 2 shows a block diagram illustrating example modules of the review framework application in relation to a comparison application.



FIG. 3A depicts a block diagram illustrating an example architecture of one embodiment of a processor or server used to run a review framework application.



FIG. 3B depicts a block diagram illustrating an example of a computer or server used to run a review framework application.



FIGS. 4A-4C depict flow diagrams illustrating example processes of providing a common review framework.



FIGS. 5A-5C depict flow diagrams illustrating example processes of providing a review framework for a reviewer using digital paper review technology.



FIGS. 6A-6C depict flow diagrams illustrating example processes of providing a review framework for electronic paper format review technology for a reviewer using an electronic device.





DETAILED DESCRIPTION

Various aspects and examples of the invention will now be described. The following description provides specific details for a thorough understanding and enabling description of these examples. One skilled in the art will understand, however, that the invention may be practiced without many of these details. Additionally, some well-known structures or functions may not be shown or described in detail, so as to avoid unnecessarily obscuring the relevant description.


The terminology used in the description presented below is intended to be interpreted in its broadest reasonable manner, even though it is being used in conjunction with a detailed description of certain specific examples of the invention. Certain terms may even be emphasized below; however, any terminology intended to be interpreted in any restricted manner will be overtly and specifically defined as such in this Detailed Description section.


In general, document comparison tools compare an earlier version of a document, for example a template or draft document, with a later modified version of the document to identify changes between the two versions and generate a redlined comparison document. For a large document, there may be several hundred or even several thousand changes between two versions of the document, resulting in a time-consuming review process.


A document comparison application is discussed in greater detail in the following document and is incorporated by reference in its entirety: U.S. Application No. 61/417,858, filed Nov. 29, 2010, entitled “SYSTEM AND METHOD FOR PRESENTING COMPARISONS OF ELECTRONIC DOCUMENTS,” filed herewith.


Typically, each change identified in the comparison document should be reviewed by an individual skilled in the relevant field to determine its importance. The review process is most often performed through handwritten annotation by the reviewer on a paper printout of the comparison document. Although working with a paper copy of the document is most common, the paper review process has significant drawbacks. The annotated paper copy generally is physically returned to an assistant for the review decisions to be acted upon, and return methods such as faxing or scanning tend to be cumbersome. Further, the results of the review are typically manually transcribed by the assistant into the master copy of the document for each change that is accepted or rejected and for any comments or changes.


The techniques described in this disclosure can be implemented to improve the review process by providing a common framework that allows a reviewer to review a comparison document using any type of medium including, but not limited to, electronically or on paper. The common framework permits a reviewer to use the reviewer's preferred format for performing the review and providing annotations, and the reviewer's format is compatible with other formats that may be selected by other reviewers.



FIG. 1 depicts a general environment 100 in which the common framework for the review process can be implemented. Example client devices 102A-N, plurality of document comparison servers 105A-N, plurality of review framework servers 106A-N, and document database 104 are coupled to a network 101. Although there can be many document databases coupled to the network 101, for clarity, only one document database 104 is shown.


The network 101 can be a telephonic network, an open network, such as the internet, or a private network, such as an intranet and/or the extranet. The network 101 can be any collection of distinct networks operating wholly or partially in conjunction to provide connectivity to the client devices and servers, and can appear as one or more networks to the serviced systems and devices.


Client devices 102A-N can be any system, device, and/or any combination of devices/systems that is able to establish a connection with another device, a server and/or other systems. The client devices 102A-N typically include display or other output functionalities to present data exchanged between the device and a user. For example, the client devices may be, but are not limited to, a server, a desktop computer, a computer cluster, a mobile computing device such as a notebook, a laptop computer, a handheld computer, a mobile phone, a smart phone, a PDA, a BlackBerry™ device, and/or an iPhone, etc.


In some embodiments, some of the client devices 102A-N have a locally accessible processor that can run a document comparison application and/or a review framework application. Thus, those client devices 102A-N need only connect to the network 101 to access documents and annotation data stored in document database 104, as needed, and to access portions of the document comparison application and/or review framework application, as needed. In one embodiment, electronic documents are stored in a different database from annotation data.


In some embodiments, some of the client devices 102A-N do not have their own local document comparison application processor and/or review framework application. Thus, those client devices 102A-N would access the document comparison application available at one or more of the document comparison servers 105A-N to request comparisons of electronic documents and/or the review framework servers 106A-N to use the common framework for reviewing a comparison document.


The document comparison application servers 105A-N can be any combination of software agents, firmware modules, and/or hardware modules for running the document comparison application, either individually or in a distributed manner with other document comparison application servers 105A-N. The document comparison application servers 105A-N are able to communicate with client devices 102A-N to receive electronic documents or locations of electronic documents to be compared. The electronic documents can be stored and retrieved in the document database 104 via the network 101. The document comparison application servers 105A-N are also able to present identified changes between two documents in a manner that allows a user to review the changes rapidly.


In one embodiment, the plurality of document comparison servers 105A-N can stream data over the network to the client devices 102A-N. For example, the changes identified between multimedia documents can be streamed over the network 101 to the client devices 102A-N.


The review framework servers 106A-N can be any combination of software agents, firmware agents, and/or hardware modules for running the review framework application, either individually or in a distributed manner with other review framework application servers 106A-N. The review framework servers 106A-N are able to communicate with client devices 102A-N and/or document comparison servers 105A-N to receive comparison documents to be reviewed. The comparison documents can be stored and retrieved in the document database 104 via the network 101.


In some embodiments, some of the review framework servers 106A-N are dedicated to providing a review framework for a particular review media, for example, digital paper or electronic review. In some embodiments, some of the review framework servers 106A-N can provide a review framework for multiple review media.


In some embodiments, a server can run both the document comparison application and the review framework application. In some embodiments, some or all of the modules of the review framework application are part of the document comparison application.


The document database 104 can store information such as electronic documents and data associated with compared electronic documents, such as review states of identified differences between two documents and annotation information and location. Document database 104 can be managed by a database management system (DBMS), for example but not limited to, Oracle, DB2, Microsoft Access, Microsoft SQL Server, PostgreSQL, MySQL, FileMaker, etc.



FIG. 2 shows a block diagram 200 illustrating example modules of the review framework application 299 in relation to a comparison application 210. The comparison application 210 integrates with and permits action on comparison review data received via the review framework 299. The comparison application 210 produces a comparison document between two electronic document including, but not limited to, word processing documents, spreadsheets, presentations, and multimedia documents. Generation of the comparison document may be only one of the features offered by the comparison application 210, and perhaps not even the major feature of the comparison application 210. For example, the Microsoft® Word software package implements document comparison and can qualify as a comparison application in this context.


In some embodiments, the comparison application 210 can include one or more of the following features. The comparison application 210 can display received annotations either overlaying or alongside the normal display of the comparison document. Annotations such as text, images, handwriting capture, or other drawings can be displayed on a screen for a user in the appropriate location of the comparison document. Audio and other media-type annotations can be indicated on the screen in the appropriate location by a button or other interactive element. Upon selection of the interactive element by the user, the audio or other media-type annotation will play.


The comparison application 210 can persist annotations alongside the comparison document when it is saved, either in the comparison document file or in another storage location. When the comparison document is re-loaded into the comparison application for a user, the comparison application 210 can retrieve the saves annotations.


The comparison application 210 can maintain and persist a review state for each proposed change and indicate the review state of the change to a user. Review states can include, but are not limited to, “unreviewed”, “reviewed and accepted”, “reviewed and rejected”, “reviewed but needs further discussion”.


The comparison application 210 can interpret command annotations applied to changes or other blocks of content in the comparison document. Command annotations are annotations that have a specific meaning associated with it (e.g., accept a change) and a specific context (e.g., apply to a particular change or block of text in the comparison document. When command annotations are detected, the review status of the change will be marked accordingly by the comparison application 210.


The comparison application 210 can automatically apply proposed changes to the base document when the review state is set to “reviewed and accepted” via command annotations received from the review process or is set to that status in another way. The application of changes can occur in the background when the base document is not visible or in the foreground when the content of the base document is visible. When the content of the base document is visible during the application of changes, the application can be configured to show the proposed change to the user before the change is actually applied.


The review framework 299 shown in FIG. 2 represents a single implementation of many possible implementations of review frameworks. Only a single review framework 299 is shown for clarity. Each implementation of the review framework 299 is targeted at a review technology or group of review technologies, for example, electronic-based or digital paper-based, that allows a comparison document to be presented to a reviewer and further allows the reviewer to interact with and annotate the comparison document.


Each review framework implementation 299 can include an export module 220, a data store 230, a review module 250, and an import module 270. The comparison application 210 identifies changes between two versions of a document to produce a comparison document. The export module 220 can be any combination of software agents, firmware, and/or hardware components able to receive the comparison document and render the content of the comparison document into an appropriate format for the particular review technology being targeted. The export module 220 also stores the location and extent of changes and other objects in the rendered version of the comparison document to the data store 230.


The data store 230 can be a database, file, or other electronic data storage artifact. The data store 230 can be located on a server computer and accessed remotely or on the computer on which the comparison application 210 is run.


In some embodiments, the data store 230 for location and/or extent information can be embedded in the electronic representation of the comparison document created by the export module. In some embodiments, the data store 230 can be embedded in the saved version of the comparison document generated by the comparison application 210.


The rendered version of the comparison document created by the export module 220 is then transferred to the reviewer in a publication/distribution process. Depending upon the technology targeted by the review framework, the publication/distribution process can also load the data onto any device to be used by the reviewer as part of the review module 250, for example, a personal computer or an iPad.


The review module 250 includes any hardware, software, or firmware needed by the reviewer to annotate the comparison document for a particular review technology. The review module 250 stores annotations entered by the reviewer. The review module 250 also electronically stores the location of each of the annotations. Annotations entered by the reviewer can include, but is not limited to, typed text, handwritten text, drawings, and voice notes. The review module 250 also performs the steps needed to return the annotation information for processing by the import module 270.


The import module 270 can be any combination of software agents, firmware, and/or hardware components able to collate the annotation information in the return data received from the review module 250 with the location information stored in the data store 230 to associate annotations with changes, characters, words, sentences, paragraphs, or other objects in the comparison document.


In general, the technologies targeted by the review framework implementation should have some basic properties as described below. The technology should have the ability to store the content of a comparison document and present it to a reviewer in a readable manner. The content of the comparison document should be able to be rendered to the reviewer. The reviewer should be able to make annotations on the comparison document using some mechanism, and the content of the annotations should be stored in electronic form. For each annotation, the technology should be capable of determining and storing the location in the comparison document to which the annotation refers. The location of each change and each character, word, sentence, paragraph, or other object in the comparison document should be determinable by the export module 220. And the information relating to all annotations from the reviewer (both content and location) should be electronically retrievable from the implementing technology and capable of return to the import module 270 via some mechanism.



FIG. 3A depicts a block diagram 300A illustrating an example architecture of one embodiment of a processor or server 302 used to run a review framework application. The processor can include an export module 304 and an import module 306, as described above.


In one embodiment, different export modules 304 can be used for different review technologies, and correspondingly, different import modules 306 can be used for different review technologies. For example, a first set of export module 304 and import module 306 can be dedicated to providing a framework for a digital paper technology, while a second set of export module 304 and import module 306 can be dedicated to providing a framework for an electronic file technology.


In some embodiments, the processor or server on which the import module 306 is executed is not the same as the computer on which the export module 304 is executed.


In some embodiments, the export module 304 and the import module 306 can form an integrated part of the comparison application.



FIG. 3B depicts a block diagram 300B illustrating an example of a computer or server 399 used to run a review framework application for allowing a reviewer to perform a review and annotation of a comparison document using one of the supported review technologies. The computer or server 399 can include the following components: one or more processors 310, memory units 320, input devices 330, an output device 340, and a network interface 360. The components of the computer 399 are coupled to a bus 350 that allows communications among the components.


The processor 310 can be used to run the review framework application. The memory 320 can include but is not limited to, RAM, ROM, and any combination of volatile and non-volatile memory. The memory 320 can store the review framework application. In one embodiment, the memory 320 can store location information of changes, characters, words, paragraphs, and other objects in the comparison document.


The input device 330 can include, but is not limited to, triggers to start and stop the review framework application, initiate other application functions, and provide review annotations to comparison documents. The output device 340 can be, but is not limited to, a display.


The network interface 360 can be one or more networking devices that enable the processor 310 to mediate data in a network with an entity that is external to the computer 399, for example a network adaptor card or a wireless network interface card.


In one embodiment, the computer 399 can communicate through the network interface 360 with a document database 370. The document database 370 can be used to store comparison documents, categorized changes, identified in the comparison documents, and review states of the changes.



FIGS. 4A-4C depict flow diagrams illustrating example processes 400A-C of providing a common review framework, according to one embodiment.



FIG. 4A illustrates an example process 400A performed by an export module in a common review framework. At block 410 the export module accesses the comparison document stored in a document database by the comparison application.


At block 412, the export module renders the content of the comparison document into an appropriate format for the particular review technology being targeted, for example, digital paper.


Then at block 414, the export module stores the location of objects including, but not limited to, changes between the two versions of the documents being compared, characters, words, sentences, and paragraphs, in the rendered version. The objects are stored in a data store.


Then at decision block 422, the export module determines if the reviewer is using an electronic device. If the reviewer is not using an electronic device to provide annotations to a comparison document (block 422—No), at block 426 the export module sends the rendered version of the comparison document to the reviewer. The process ends at block 429.


If the reviewer is using an electronic device (block 422—Yes), at block 424 the module loads the exported data onto the reviewer's electronic device, and the process ends at block 429.



FIG. 4B illustrates an example process 400B performed by a review module in a common review framework. At decision block 430, the review module determines if any annotations have been received from the reviewer. If no annotations have been received (block 430—No), the process remains at decision block 430 waiting for the reviewer to provide annotations. If annotations have been received (block 430—Yes), at block 432 the review module stores the received annotations and the location of each annotation.


At decision block 440, the review module determines if the reviewer has finished entering annotations. In one embodiment, the reviewer can click on a button to indicate that there are no further annotations to be received. If the reviewer has not finished (block 440—No), the process returns to decision block 430. If the reviewer has finished (block 440—Yes), the process continues to block 442 where the review module transfers the annotation information to a device, for example, a computer, for importing. The process ends at block 449.



FIG. 4C illustrates an example process 400C performed by an import module in a common review framework. At block 450, the import module accesses annotation information received from the review module. At block 452, the import module accesses the stored object location information in the data store.


At block 454, the import module associates the annotation information and the location information. Then at block 456, the import module presents the associated information in a standard format to the comparison application. The process ends at block 459.


Review Using Digital Paper


In one embodiment, a reviewer can use digital paper to annotate a comparison document. For example, companies such as Anoto of Lund, Sweden and LiveScribe of Oakland, Calif. in the United States produce digital paper where ordinary sheets of paper are printed with a non-repeating pattern of almost invisible dots in addition to normal printing. A smart pen is used by the reviewer that is capable of seeing the dots on the paper, for example, by using an infra-red camera to determine its location on the page and which page of a document is being worked on. The smart pen records writing on the page and other information, such as voice notes, as data in its memory, and the data can be extracted and processed. By using an appropriate color laser printer, it is possible to print both the dot pattern and normal text on plain paper.


One skilled in the art will understand that other implementations of digital paper can also be used with the disclosed techniques for establishing a review framework with minor modifications to the techniques.



FIGS. 5A-5C depict flow diagrams illustrating example processes 500A-C of providing a review framework for a reviewer using digital paper, according to one embodiment.



FIG. 5A illustrates an example process 500A performed by an export module in a review framework for a reviewer using digital paper review technology. At block 510, the export module accesses the comparison document stored in a document database by the comparison application.


Then at block 512, the export module uses a customized printing process from the comparison application to prepare the comparison document for printing. In one embodiment, the customized printing process can use a custom printer driver and/or extensions to the comparison application. The print process overlays information needed for tracking annotations (e.g., the Anoto digital paper dot pattern) on a standard printout of the comparison document. In one embodiment, the print process can also place special patterns of dots and other overlaying images on each page to act as hotspots for activating particular features of smart pen functionality, e.g. the implementation of command annotations.


Then at block 514, the export module sends the output of the print process using normal operating system print functionality to an appropriate printer for the reviewer. The physical printout should then be conveyed to the reviewer. The process ends at block 529.



FIG. 5B illustrates an example process 500B performed by a review module in a review framework for a reviewer using digital paper review technology. The review module in this implementation includes the printed copy of the comparison document and a compatible smart pen. In one embodiment, the smart pen can be loaded with a custom application to provide custom functionality for use in the review process. For example, the export module can place printed icons on each page during the print process that can be used to activate review specific functionality in the smart pen.


At decision block 530, the review module determines if any annotations have been received from the reviewer. If no annotations have been received (block 530—No), the process remains at decision block 530 until annotations are received. If annotations have been received (block 530—Yes), at block 532, the annotations and the corresponding locations of the annotations as determined by the smart pen, for example, by using a dot pattern on the paper, are stored on the smart pen. In one embodiment, the annotations can be sent using wireless networking to another storage device either as the annotations are made or at regular intervals.


At decision block 534, the review module determines if the custom review functions have been activated. If the review function has been activated (block 534—Yes), at block 536 the review module performs the review function and stores any additional annotations on the smart pen. The process continues to decision block 538.


If the review function has not been activated (block 534—No), the process continues to decision block 538 where the review module determines if the reviewer has finished making annotations to the comparison document. If the reviewer has not finished (block 538—No), the process returns to decision block 530.


If the reviewer has finished (block 538—Yes), at block 540 the review module accesses the annotation information stored on the smart pen for processing. The data stored on the smart pen can be recovered onto a personal computer or other device using one of the technologies for data transfer supported by the smart pen, for example, using a USB connection or wireless networking (e.g., Wi-Fi or Bluetooth).


At block 542, the data can then be transferred to the computer where importation of the data is to occur using one of a variety of mechanisms, such as e-mail, network file transfer, uploading to a web site, USB memory sticks, floppy disks, other removable storage devices, etc. The process ends at block 549.



FIG. 5C illustrates an example process 500C performed by an import module in a review framework for a reviewer using digital paper review technology. The import module includes software capable of interpreting the annotation data retrieved from the smart pen and associating each annotation with an object based on location information stored in the data store.


At block 550, the import module accesses annotation information received from the review module. At block 552, the import module accesses the stored object location information in the data store.


At block 554, the import module associates the annotation information and the location information. Then at block 556, the import module presents the associated information in a standard format to the comparison application. The process ends at block 559.


Review Using a Electronic Paper Formats on a Personal Computing Device


In this implementation, the review technologies that are targeted are portable personal computing devices that are capable of displaying electronic documents and allowing a user to interact with and annotate them, for example, a tablet computer, iPad, eBook reader, laptop computer, etc. Electronic documents in this implementation typically means electronic paper formats such as the PDF or XPS file formats.


Electronic paper file formats consist of data pertaining to the layout of text, images, drawings and other objects on a number of virtual pages. In general, electronic paper documents may only be viewed and printed, they may not be edited. However, it is possible to attach annotations to electronic paper documents either within the main document itself or in an additional data store. Viewer applications for various electronic paper formats exist for a very wide range of personal computing devices, particularly for the PDF format. Many viewer applications have built-in functionality for adding annotations to the document. In some embodiments, existing viewer applications can be extended with this functionality or custom viewer application can be developed with such functionality. Thus, most portable personal computing devices will fulfill the requirements described above for a review technology with either existing device software or in conjunction with custom software to be developed and installed on the device.


Different portable personal computing devices provide different ways to manipulate and annotate the electronic paper version of the comparison document, for example, using a keyboard and/or mouse, using a touchscreen activated by fingertip touches and an on-screen keyboard, using a touchscreen activated by a stylus, using handwriting recognition or an on-screen keyboard, recording voice notes or other audio, or using a scroll ball, touchpad, buttons, keypad, etc. One skilled in the art will understand that current and future portable personal computing devices can have additional ways of accepting user input and enabling annotations to be made.



FIGS. 6A-6C depict flow diagrams illustrating example processes 600A-C of providing a review framework for a reviewer using electronic paper files, according to one embodiment.



FIG. 6A illustrates an example process 600A performed by an export module in a review framework for electronic paper format review technology for a reviewer using an electronic device. At block 610, the export module accesses the comparison document stored in a document database by the comparison application.


At block 612, the export module uses a customized printing process from the comparison application to create an electronic paper file having the appropriate file format representing the comparison document.


Then at block 614, the export module uses a print process to record the location of objects to the data store. Objects include, but are not limited to, changes between the two versions of the document being compared, characters, words, sentences, and paragraphs.


Then at block 620, the export module transmits the generated electronic paper file to the portable personal computing device used by the reviewer. The transmission can be performed using a method that includes, but is not limited to, e-mail, network file copying using wired or wireless networks, and transferring the file using a portable storage device. In one embodiment, the comparison application and the export module can be configured to automatically send the electronic paper file to the appropriate device. The process ends at block 629.



FIG. 6B illustrates an example process 600B performed by a review module in a review framework for electronic paper format review technology for a reviewer using an electronic device. The review module in this implementation includes the portable personal computing device equipped with software that makes the device capable of displaying the electronic paper document and permitting annotations to be made on the document. The software can be standard software that is distributed with the personal computing device or custom software designed to support the review of comparison documents. Custom software can be installed using any method, including downloading form an application store.


At decision block 630, the review module determines if any annotations have been received from the reviewer. If no annotations have been received (block 630—No), the process remains at decision block 630 until annotations are received. If annotations have been received (block 630—Yes), at block 632, the annotations and the corresponding locations of the annotations are stored. In one embodiment, the annotations and locations of the annotations can be stored within the original electronic paper file. In one embodiment, the annotations and locations can be stored in some other file or storage location, such as in the memory or other storage device of the portable personal computing device or a remote storage location such as an internet server, with the annotation data transferred via wireless networking as or soon after the annotations are made by the reviewer.


At block 640 the review module accesses the stored annotation information for processing. The stored annotation data can be accessed using a method that includes, but is not limited to, e-mail, network file copying using wired or wireless networks, and transferring the file using a portable storage device, etc. In one embodiment, if a custom application is used on the portable personal computing device to read and annotate the comparison document, the application can return the results automatically using one or more methods listed above. At block 642, the data can then be transferred to the computer where importation of the data is to occur. The process ends at block 649.



FIG. 6C illustrates an example process 600C performed by an import module in a review framework for electronic paper format review technology for a reviewer using an electronic device. The import module includes software capable of interpreting the annotation data returned from the portable personal computing device and associating each annotation with an object based on the location information stored in the data store.


At block 650, the import module accesses annotation information received from the review module. At block 652, the import module accesses the stored object location information in the data store.


At block 654, the import module associates the annotation information and the location information. Then at block 656, the import module presents the associated information in a standard format to the comparison application. The process ends at block 659.


Unless the context clearly requires otherwise, throughout the description and the claims, the words “comprise,” “comprising,” and the like are to be construed in an inclusive sense (i.e., to say, in the sense of “including, but not limited to”), as opposed to an exclusive or exhaustive sense. As used herein, the terms “connected,” “coupled,” or any variant thereof means any connection or coupling, either direct or indirect, between two or more elements. Such a coupling or connection between the elements can be physical, logical, or a combination thereof. Additionally, the words “herein,” “above,” “below,” and words of similar import, when used in this application, refer to this application as a whole and not to any particular portions of this application. Where the context permits, words in the above Detailed Description using the singular or plural number may also include the plural or singular number respectively. The word “or,” in reference to a list of two or more items, covers all of the following interpretations of the word: any of the items in the list, all of the items in the list, and any combination of the items in the list.


The above Detailed Description of examples of the invention is not intended to be exhaustive or to limit the invention to the precise form disclosed above. While specific examples for the invention are described above for illustrative purposes, various equivalent modifications are possible within the scope of the invention, as those skilled in the relevant art will recognize. For example, while digital paper and electronic paper files are mentioned, any type of review technology may be used under the principles disclosed herein. While processes or blocks are presented in a given order in this application, alternative implementations may perform routines having steps performed in a different order, or employ systems having blocks in a different order. Some processes or blocks may be deleted, moved, added, subdivided, combined, and/or modified to provide alternative or subcombinations. Also, while processes or blocks are at times shown as being performed in series, these processes or blocks may instead be performed or implemented in parallel, or may be performed at different times. Further any specific numbers noted herein are only examples. It is understood that alternative implementations may employ differing values or ranges.


The various illustrations and teachings provided herein can also be applied to systems other than the system described above. The elements and acts of the various examples described above can be combined to provide further implementations of the invention.


Any patents and applications and other references noted above, including any that may be listed in accompanying filing papers, are incorporated herein by reference. Aspects of the invention can be modified, if necessary, to employ the systems, functions, and concepts included in such references to provide further implementations of the invention.


These and other changes can be made to the invention in light of the above Detailed Description. While the above description describes certain examples of the invention, and describes the best mode contemplated, no matter how detailed the above appears in text, the invention can be practiced in many ways. Details of the system may vary considerably in its specific implementation, while still being encompassed by the invention disclosed herein. As noted above, particular terminology used when describing certain features or aspects of the invention should not be taken to imply that the terminology is being redefined herein to be restricted to any specific characteristics, features, or aspects of the invention with which that terminology is associated. In general, the terms used in the following claims should not be construed to limit the invention to the specific examples disclosed in the specification, unless the above Detailed Description section explicitly defines such terms. Accordingly, the actual scope of the invention encompasses not only the disclosed examples, but also all equivalent ways of practicing or implementing the invention under the claims.


While certain aspects of the invention are presented below in certain claim forms, the applicant contemplates the various aspects of the invention in any number of claim forms. For example, while only one aspect of the invention is recited as a means-plus-function claim under 35 U.S.C. §112, sixth paragraph, other aspects may likewise be embodied as a means-plus-function claim, or in other forms, such as being embodied in a computer-readable medium. (Any claims intended to be treated under 35 U.S.C. §112, ¶ 6 will begin with the words “means for.”) Accordingly, the applicant reserves the right to add additional claims after filing the application to pursue such additional claim forms for other aspects of the invention.

Claims
  • 1. A system for providing a framework for reviewing a comparison document with a review technology, wherein the comparison document is generated by a comparison application, the system comprising: an export module operable to render a content of the comparison document into an appropriate format for the review technology, store locations and extent of changes and objects in the rendered comparison document in a data store, and transfer the locations and extent of changes and objects in the rendered comparison document to a reviewer;the import module operable to receive a reviewer's annotations and locations of the annotations, associate the annotations and the locations of the annotations with the objects and changes in the comparison document.
  • 2. The system of claim 1, wherein the data store is on a server computer.
  • 3. The system of claim 1, wherein the data store is embedded in the rendered comparison document.
  • 4. The system of claim 1, wherein the data store is embedded in the comparison document.
  • 5. The system of claim 1, wherein annotations include typed text, handwritten text, drawings, voice notes, and other media-type annotations.
  • 6. The system of claim 1, wherein the export module and the import module are part of the comparison application.
  • 7. The system of claim 1, wherein the export module and the import module present a common interface to the comparison application.
  • 8. The system of claim 1, wherein the export module and the import module are executed by processors on different computers.
  • 9. The system of claim 1, wherein objects include characters, words, sentences, and paragraphs.
  • 10. The system of claim 1, wherein the import module is further operable to present annotation information in a standard format to the comparison application.
  • 11. The system of claim 1, wherein the review technology is digital paper.
  • 12. The system of claim 11, wherein rendering a content of the comparison document into an appropriate format comprises performing a printing process to overlay markings needed to identify locations of objects, changes, and annotations on a printout of the comparison document;transferring the locations of objects and the changes in the rendered comparison document comprises sending an output of the printing process to a printer and conveying the printout to the reviewer;associating the annotations and the locations of the annotations with the objects and the changes in the comparison document comprises using software to interpret the annotations and the locations of the annotations obtained from a reviewer to associate the annotations and the locations of the annotations with the objects and the changes in the comparison document.
  • 13. The system of claim 1, wherein the review technology is a computing device that displays electronic paper files.
  • 14. The system of claim 13, wherein rendering a content of the comparison document into an appropriate format comprises performing a printing process to create an electronic paper file of the appropriate file format representing the comparison document and recording locations of each change and other objects to a data store;transferring the locations and extent of changes and objects in the rendered comparison document comprises transferring the electronic paper file to a computing device;associating the annotations and the locations of the annotations with the objects and changes in the comparison document comprises using software to interpret the annotations and the locations of the annotations obtained from a reviewer to associate the annotations and the locations of the annotations with the objects and changes in the comparison document.
  • 15. The system of claim 1, wherein the import module is further operable to present the annotations and the locations of the annotations in a standard format to the comparison application for display to a user.
  • 16. The system of claim 1, wherein the export module and the import module present a common interface to the comparison application so that the comparison application need not be aware of the review technology.
  • 17. A system, comprising: at least one memory component storing a software program;a processor coupled to the at least one memory component, wherein the processor is configured to execute the software program, the software program including: an export module operable to render a content of the comparison document into an appropriate format for a review technology, store locations and extent of changes and objects in the rendered comparison document, and transfer the locations and extent of changes and objects in the rendered comparison document to a reviewer; anda review module operable to receive and store electronically the reviewer's annotations and locations of the annotations within the rendered comparison document and transmit the annotations and the locations of the annotations for processing.
  • 18. The system of claim 17, wherein the review module transmits the annotations and the locations of the annotations for processing by an import module, and the software program further includes the import module operable to associate the annotations and the locations of the annotations with the objects in the comparison document.
  • 19. The system of claim 17, wherein the comparison document is generated by a comparison application.
  • 20. The system of claim 17, wherein the review technology is digital paper, and the review module comprises a printed copy of the comparison document and a smart pen.
  • 21. The system of claim 17, wherein the review technology is a computing device that displays electronic paper files, and the review module comprises the computing device having software for viewing an electronic paper file and allowing a user to make annotations on the electronic paper file.
  • 22. A system for providing a framework for reviewing a comparison document with a review technology, wherein the comparison document is generated by a comparison application, the system comprising: an export module operable to render a content of the comparison document into an appropriate format for the review technology, store locations and extent of changes and objects in the rendered comparison document in a data store, and transfer the locations and extent of changes and objects in the rendered comparison document to a reviewer;a review module operable to receive and store electronically the reviewer's annotations and locations of the annotations, and transfer the reviewer's annotations and locations of the annotations to an import module;the import module operable to associate the annotations and the locations of the annotations with the objects and changes in the comparison document.
  • 23. The system of claim 22, wherein the review technology is digital paper.
  • 24. The system of claim 23, wherein rendering a content of the comparison document into an appropriate format comprises performing a printing process to overlay markings needed to identify locations of objects, changes, and annotations on a printout of the comparison document;transferring the locations of objects and the changes in the rendered comparison document comprises sending an output of the printing process to a printer and conveying the printout to the reviewer;receiving and storing electronically the reviewer's annotations and locations of the annotations comprises identifying locations of annotations made by the reviewer with a smart pen on the printout and storing the annotations and locations of the annotations in a memory;transmitting the annotations and the locations of the annotations comprises performing data transfer of the annotations and locations of the annotations stored in the memory to a computer;associating the annotations and the locations of the annotations with the objects and the changes in the comparison document comprises using software to interpret the annotations and the locations of the annotations obtained from the memory to associate the annotations and the locations of the annotations with the objects and the changes in the comparison document.
  • 25. The system of claim 24, wherein the review module comprises a printed copy of the comparison document and a smart pen, and further wherein the memory is part of the smart pen.
  • 26. The system of claim 24, wherein transferring the annotations and the location of the annotations includes one method selected from a group consisting of: using e-mail, network file transfer, uploading to a web site, and using removable storage devices.
  • 27. The system of claim 22, wherein the review technology is a computing device that displays electronic paper files.
  • 28. The system of claim 27, wherein rendering a content of the comparison document into an appropriate format comprises performing a printing process to create an electronic paper file of the appropriate file format representing the comparison document and recording locations of each change and other objects to a data store;transferring the locations and extent of changes and objects in the rendered comparison document comprises transferring the electronic paper file to a computing device;receiving and storing electronically the reviewer's annotations and locations of the annotations comprises identifying locations of annotations made by the reviewer on a computing device with electronic paper viewing software and storing the annotations and locations of the annotations in a memory;transmitting the annotations and the locations of the annotations comprises performing data transfer of the annotations and locations of the annotations stored in the memory to a computer;associating the annotations and the locations of the annotations with the objects and changes in the comparison document comprises using software to interpret the annotations and the locations of the annotations obtained from the memory to associate the annotations and the locations of the annotations with the objects and changes in the comparison document.
  • 29. The system of claim 27, wherein the review module comprises a computing device having software for viewing the electronic paper file and allowing a user to make annotations on the electronic paper file.
  • 30. A system for providing a framework for reviewing a comparison document with two review technologies, wherein the comparison document is generated by a comparison application, the system comprising: a first export module operable to render a content of the comparison document into a first rendered comparison document for a first review technology, store locations of objects and changes in the first format in a data store, and transfer the locations of objects and the changes in the first format to a first reviewer;a first review module operable to receive and store electronically the first reviewer's annotations and locations of the first reviewer's annotations within the first rendered comparison document, and transfer the first reviewer's annotations and locations of the first reviewer's annotations to a first import module;the first import module operable to associate the first reviewer's annotations and the locations of the first reviewer's annotations with the objects in the comparison document;a second export module operable to render the content of the comparison document into a second rendered comparison document for a second review technology, store locations of objects and changes in the second format in the data store, and transfer the locations of objects and the changes in the second format to a second reviewer;a second review module operable to receive and store electronically the second reviewer's annotations and locations of the second reviewer's annotations within the second rendered comparison document, and transfer the second reviewer's annotations and locations of the second reviewer's annotations to a second import module;the second import module operable to associate the second reviewer's annotations and the locations of the second reviewer's annotations with the objects in the comparison document.
  • 31. The system of claim 30, wherein the first review technology is digital paper and the second review technology is a computing device that displays electronic paper files.
  • 32. The system of claim 30, wherein the first export module and first import module are part of a first server, and the second export module and the second import module are part of a second server.
  • 33. The system of claim 30, wherein the first export module, first import module, the second export module, and the second import module are performed on one computer.
  • 34. A method of providing a framework for reviewing a comparison document using a review technology, comprising: accessing a comparison document;rendering a content of the comparison document into a format appropriate for the review technology;recording a location and extent of changes and objects in the rendered comparison document to a data store;sending the rendered comparison document to a reviewer;receiving and storing the reviewer's annotations and locations of the annotations;associating the annotations and the locations of the annotations with the objects and changes in the comparison document.
  • 35. The method of claim 34, wherein the annotations include typed text, handwritten text, drawings, voice notes, and other media-type annotations.
  • 36. The method of claim 34, further comprising loading the rendered comparison document onto an electronic device for the reviewer to annotate the comparison document, wherein the review technology is a computing device that displays electronic documents.
  • 37. The method of claim 34, wherein objects include characters, words, sentences, and paragraphs.
  • 38. The method of claim 34, further comprising presenting annotation information in a standard format to a comparison application for display.
  • 39. A method of providing a framework for reviewing a comparison document using a review technology, comprising: rendering a content of the comparison document into an appropriate format for the review technology;storing locations and extent of changes and objects in the rendered comparison document in a data store;transferring the locations and extent of changes and objects in the rendered comparison document to a reviewer;receiving and storing electronically the reviewer's annotations and locations of the annotations;transmitting the annotations and the locations of the annotations to a computer;associating the annotations and the locations of the annotations with the objects and changes in the comparison document.
  • 40. The system of claim 39, wherein the review technology is digital paper.
  • 41. The system of claim 40, wherein rendering a content of the comparison document into an appropriate format comprises performing a printing process to overlay markings needed to identify locations of objects, changes, and annotations on a printout of the comparison document;transferring the locations and extent of changes and objects in the rendered comparison document comprises sending an output of the printing process to a printer and conveying the printout to the reviewer;receiving and storing electronically the reviewer's annotations and locations of the annotations comprises identifying locations of annotations made by the reviewer with a smart pen on the printout and storing the annotations and locations of the annotations in a memory;transmitting the annotations and the locations of the annotations comprises performing data transfer of the annotations and locations of the annotations stored in the memory to the computer;associating the annotations and the locations of the annotations with the objects and the changes in the comparison document comprises using software to interpret the annotations and the locations of the annotations obtained from the memory to associate the annotations and the locations of the annotations with the objects and the changes in the comparison document.
  • 42. The system of claim 39, wherein the review technology is a computing device that displays electronic paper files.
  • 43. The system of claim 42, wherein rendering a content of the comparison document into an appropriate format comprises performing a printing process to create an electronic paper file of the appropriate file format representing the comparison document and recording locations of each change and other objects to a data store;transferring the locations and extent of changes and objects in the rendered comparison document comprises transferring the electronic paper file to a computing device;receiving and storing electronically the reviewer's annotations and locations of the annotations comprises identifying locations of annotations made by the reviewer on a computing device with electronic paper viewing software and storing the annotations and locations of the annotations in a memory;transmitting the annotations and the locations of the annotations comprises performing data transfer of the annotations and locations of the annotations stored in the memory to a computer;associating the annotations and the locations of the annotations with the objects and changes in the comparison document comprises using software to interpret the annotations and the locations of the annotations obtained from the memory to associate the annotations and the locations of the annotations with the objects and changes in the comparison document.
CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No. 61/417,869 entitled SYSTEM AND METHOD FOR PROVIDING A COMMON FRAMEWORK FOR REVIEWING COMPARISONS OF ELECTRONIC DOCUMENTS, filed Nov. 29, 2010, and is hereby incorporated by reference in its entirety. This patent application is related to the technologies described in the following patents and applications, all of which are incorporated herein in their entireties: U.S. Provisional Application No. 61/417,853, entitled METHODS AND SYSTEMS FOR MONITORING DOCUMENTS EXCHANGED OVER EMAIL APPLICATIONS, filed Nov. 29, 2010; and U.S. Provisional Application No. 61/417,855, entitled METHODS AND SYSTEMS FOR MONITORING DOCUMENTS EXCHANGED OVER EMAIL APPLICATIONS, filed Nov. 29, 2010; and U.S. Provisional Application No. 61/417,858, entitled SYSTEM AND METHOD FOR PRESENTING COMPARISONS OF ELECTRONIC DOCUMENTS, filed Nov. 29, 2010.

Provisional Applications (4)
Number Date Country
61417869 Nov 2010 US
61417853 Nov 2010 US
61417855 Nov 2010 US
61417858 Nov 2010 US