Traditional collaborative editing tends to be performed serially. Users take turns accessing a document, editing the document, and storing their edits. To inhibit editing conflicts, the accessing user may place a lock on the file to inhibit other users from editing the document when the accessing user is editing the document. The iterative editing process can cause delays since each user may wait for a turn at editing the document. In addition, the iterative editing process may be difficult to manage. For example, each user may need to keep track of who is editing which portions of the document, which version of the document is the most recent, and when the user will have a turn.
In other types of traditional collaborative editing, each user can edit a different copy of a document. Subsequently, all of the edited copies may be merged into a single document. This large scale merge also may cause delays, lead to numerous editing conflicts, and/or be difficult to manage. For example, the user responsible for merging the documents may be required to track the relationship between the documents. The user also may be responsible for resolving conflicts among two or more of the edited copies.
It is with respect to these and other considerations that the present disclosure has been made.
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 as an aid in determining the scope of the claimed subject matter.
Embodiments of the present disclosure are generally directed to enabling a user to resolve editing conflicts arising when synchronizing a data file in a collaborative environment. Each user authoring a user copy of a data file may resolve editing conflicts between a master copy of the data file and the user copy. Updates from the user copy of the data file may be incorporated into the master copy after editing conflicts have been resolved.
According to aspects of the disclosure, an authoring application enables a user to selectively show and hide editing conflicts within a user copy of a data file. The authoring application enables free editing of the user copy regardless of whether or not editing conflicts are shown or hidden. According to other aspects, authoring application provides a contextual user interface that enables a user to resolve the displayed editing conflicts.
In some embodiments, showing editing conflicts includes annotating conflicting content. In one embodiment, annotating conflicting content indicates how the content conflicts. In another embodiment, only conflicting content inserted, revised, and/or deleted within the user copy is annotated.
These and other features and advantages will be apparent from a reading of the following detailed description and a review of the associated drawings. It is to be understood that both the foregoing general description and the following detailed description are explanatory only and are not restrictive of aspects as claimed.
In the following detailed description, references are made to the accompanying drawings that form a part hereof, and in which are shown by way of illustrations specific embodiments or examples. While the disclosure will be described in the general context of program modules that execute in conjunction with an application program that runs on an operating system on a computer system, those skilled in the art will recognize that the disclosure also may be implemented in combination with other program modules. The embodiments described herein may be combined and other embodiments may be utilized without departing from the spirit or scope of the present disclosure. The following detailed description is therefore not to be taken in a limiting sense, and the scope of the invention is defined by the appended claims and their equivalents.
In accordance with the principles of the present disclosure, a collaborative authoring application provides an authoring environment in which one or more users can edit one or more data files (e.g., word processing documents, presentation documents, spreadsheet documents, pictures or other images, sound files, software applications, executable code, etc.) via editing operations (e.g., insertion, revision, and/or deletion of content and/or metadata). Each user obtains a user copy of the data file based on a version of the data file represented by a master copy. A user may edit the user copy of the data file to create a new version of the data file and periodically synchronize the new version with the master copy.
Synchronization, as the term is used herein, refers to the sending and/or receiving of one or more version updates between the master copy of the data file and a user copy of the data file to create a common version of the data file. For example, each user periodically may send to the master copy a version update representing the new version of the data file and periodically may receive from the master copy a version update representing a current version of the master copy (e.g., which may reflect edits performed by other users).
As briefly described above, embodiments of the present disclosure are directed to enabling a user to resolve editing conflicts arising when synchronizing a data file in a collaborative environment. In general, editing conflicts may arise when the master copy of the data file changes (e.g., editing operations are performed on the master copy) between when a user copy is obtained and the user copy is synchronized with the master copy or between synchronizations. Such changes to the master copy will be referred to herein as “intervening changes.”
An editing operation performed on a user copy of the data file results in an editing conflict, as the term is used herein, when the editing operation interferes with an intervening change made to the master copy (i.e., or vice versa). For example, if a user performs an editing operation in a user copy of a data file to revise a first data unit that was deleted in a master copy of the data file by an intervening change, then the editing operation resulting in the revision of the first data unit would conflict with the editing operation resulting in the deletion of the first data unit in the master copy.
Referring now to the drawings,
The authoring system 100 also includes at least one user computing device 110 that may be communicatively coupled to the storage device 120. As the term is used herein, a user computing device 110 includes any device configured to obtain and author a user copy 155 of a data file from a master copy 150 of the data file. As the term is used herein, authoring a data file may include creating the data file and/or editing the data file via editing operations. Each of the user computing devices 110 can author the data file by creating a user copy 155 of the data file based on the master copy 150. The user device 110 may edit the user copy 155 when the user device 110 is communicatively coupled to the storage device 120 (i.e., online) or when the user device 110 is disconnected from the storage device 120 (i.e., offline).
The user copy 155 of the data file may be synchronized when the user computing device 110 communicatively couples to the storage device 120 (i.e., is online) and periodically sends to the storage device 120 one or more updates to be incorporated into the master copy 150 and, thereby, shared with other user computing devices. Synchronization of the user copy 155 also includes periodically obtaining from the storage device 120 updates from the master copy 150 that originated from other user computing devices. When a user computing device 110 is offline, the user computing device does not synchronize with the storage device 120 and, hence, the other user computing devices.
Additional details pertaining to synchronization of a user copy of a data file with a master copy can be found in co-pending application Ser. No. 11/938,082, filed Nov. 9, 2007, and entitled “Collaborative Authoring,” the disclosure of which is hereby incorporated herein in its entirety. Additional details pertaining to synchronization when the user computing device is offline can be found in co-pending application Ser. No. 11/957,010, filed Dec. 14, 2007, and entitled “Collaborative Authoring Modes,” the disclosure of which is hereby incorporated herein in its entirety.
In the example shown in
The user computing devices 110A, 110B, 110C, 110D can be a different device from the storage device 120 or can include different user accounts implemented on the storage device 120. In one embodiment, a device that acts as a storage device 120 for one data file may act as a user computing device 110 for a different data file and vice versa. In one embodiment, the storage device 120 can be a server computing device and the user computing devices 110A, 110B, 110C, 110D can be client computing devices.
According to aspects of the disclosure, updates to the data file include content updates and/or metadata updates. As the term is used herein, content updates refer to any editing operation made to the substantive content of a data file. For example, content updates for a word processing document can include added paragraphs (i.e., or sections thereof), deleted paragraphs (i.e., or section thereof), revised paragraphs (i.e., or sections thereof), and additions, deletions, and/or changes to tables, charts, images, or other such objects. In another embodiment, content updates for a presentation document can include added, deleted, and/or revised pictures, text, animations, sounds, and other such data objects.
As the term is used herein, metadata updates refer to any editing operation made to metadata of the data file. Non-limiting examples of metadata include content locks, presence information, and other such data. Presence information indicates which users have indicated an intention to edit the document. Content locks inhibit editing of any content within the lock by users that do not own the lock. For example, content locks may inhibit editing conflicts by indicating which portions of a document or other data file have been claimed by another user. In some embodiments, the content locks can prevent (i.e., bar) a user from editing a portion of a document that has been claimed by another user. In other embodiments, however, the user can choose to break the content lock and edit the portion of the data file. In such cases, the authoring application can warn the user that conflicts may arise when editing the locked portion.
As shown in
In general, the user computing devices 110 can synchronize content updates separately from metadata updates. In some embodiments, metadata updates are automatically synchronized among the storage device 120 and user computing devices 110, whereas content updates from each user computing device 110 are synchronized at the request of the respective user. In one embodiment, the authoring environment 100 may synchronize content updates only when editing conflicts do not exist (i.e., or have been resolved), but may synchronize metadata updates regardless of existing editing conflicts.
In one embodiment, an editing conflict may stem from a content update received from the master copy. In such an embodiment, changes to content 152′ and/or metadata 154′ of the user copy 155 interfere with intervening changes to the content 152 of the master copy 150. Such editing conflicts are referred to herein as mergeable conflicts. For example, in one embodiment, the same data unit may have been edited differently in the user copy and the master copy of the data file in between synchronizations. In another embodiment, the data unit may have been edited in the master copy 150 before a content lock obtained on the data unit in the user copy 155 was synchronized with the master copy 150.
In another embodiment, an editing conflict may stem from a metadata update received from the master copy 150. In such an embodiment, changes to the content 152′ and/or metadata 154′ of the user copy 155 interfere with intervening changes to the metadata 154 of the master copy 150 (e.g., the addition of content locks). Such editing conflicts are referred to herein as unmergeable conflicts. For example, the user device 110 may receive a metadata update from the master copy 150 of a data file indicating that content revised in the user copy 155 has already been locked by another user.
In one embodiment, changes to the metadata 154′ of a user copy 155 of a data file that interfere with intervening changes to the master copy 150 are overridden by the intervening changes to the master copy 150. For example, if the storage device 120 receives a metadata update from a first user device 110A (
A receive operation 306 obtains at the authoring application updates indicating intervening changes made to the master copy of the data file. For example, in one embodiment, the receive operation 306 obtains a content update indicating any intervening changes made to the content of the master copy by one or more other users authoring the data file. In another embodiment, the receive operation 306 obtains a metadata update indicating any intervening changes made to the metadata of the master copy by one or more other users authoring the data file. In another embodiment, the receive operation 306 obtains both content and metadata updates.
In one embodiment, the receive operation 306 receives updates from the master copy at predetermined intervals. In another embodiment, the receive operation 306 receives an update from the master copy when a threshold amount of editing has been performed on the master copy. In another embodiment, the receive operation 306 receives an update from the master copy in response to a request for the update. For example, the receive operation 306 may request an update from the master copy in order to update the data file before saving the data file. In such an embodiment, the receive operation 306 requests an update from the master copy when instructions to synchronize the data file are received from the user.
An update operation 308 instantiates the intervening changes into the user copy of the document (e.g., by merging the intervening changes into the user copy of the document). In one embodiment, the update operation 308 instantiates intervening metadata changes differently from intervening content changes. In one embodiment, the update operation 308 may instantiate content updates and metadata updates automatically. In another embodiment, the update operation 308 may instantiate metadata updates automatically and may instantiate content updates at the request of the user. For example, the update operation 308 may present a button or other interface tool to the user indicating the availability of updates that may be instantiated by selecting the button or other interface tool.
The update operation 308 also may determine whether any editing conflicts exist. In some embodiments, the update operation 308 may instantiate the intervening changes differently depending on whether editing conflicts are identified. For example, in one embodiment, the update operation 308 may inhibit instantiation of content updates when editing conflicts are identified, but may continue to instantiate metadata updates automatically despite the existence of editing conflicts. Advantageously, synchronizing the metadata updates despite the existence of editing conflicts may mitigate the creation of further editing conflicts. For example, synchronizing lock data may inhibit concurrent editing of the same data unit by different users.
A synchronize operation 310 attempts to synchronize the user copy with the master copy by forwarding to the master copy updates indicating changes made to the user copy of the data file. In one embodiment, the synchronize operation 310 forwards the updates for distribution to other users collaboratively authoring the data file. The synchronize operation 310 only stores the user copy as the master copy (i.e., overwrites the master copy) if no editing conflicts between the user copy and the master copy are identified. In one embodiment, the synchronize operation 310 obtains the most recent version of the master copy and determines whether editing conflicts exist between the user copy and the most recent version of the master copy.
According to aspects of the disclosure, the synchronize operation 310 may enable the user to initiate resolution of the editing conflicts at any time after the editing conflict has been identified at the discretion of the user. The synchronize operation 310 may enable the user to continue freely editing the user copy of the data file even though one or more editing conflicts have been determined to exist. In one embodiment, the synchronize operation 310 may continue to edit the user copy with editing conflicts being hidden from the user. In another embodiment, the synchronize operation 310 may continue to edit the user copy with editing conflicts being presented to the user. If editing of the user copy is continued despite the existence of one or more editing conflicts, then content updates indicating changes to the user copy may be stored locally until the editing conflicts are resolved instead of being forwarded to the master copy for synchronization as will be discussed in greater detail herein.
The synchronize operation 310 may synchronize metadata updates differently from content updates. For example, in one embodiment, the synchronize operation 310 may forward content updates only if all editing conflicts have been resolved and may forward metadata updates regardless of whether editing conflicts have been resolved. As noted above, synchronizing the metadata updates despite the existence of editing conflicts may mitigate the creation of further editing conflicts. Furthermore, ceasing to synchronize content updates when editing conflicts exist may inhibit introducing the editing conflicts into the master copy of the data file. The authoring process 300 completes and ends at a stop module 312.
In general, an authoring environment having features that are examples of inventive aspects in accordance with the principles of the disclosure can be implemented on a user computing device (e.g., a personal computer, a server computer, a notebook computer, a PDA, a Smartphone, or any other such computing device). A non-limiting embodiment of a user computing system 400 configured to implement an authoring environment and perform authoring processes, such as authoring process 300 of
In
System memory 420 typically stores an operating system 422, such as the WINDOWS® operating systems from MICROSOFT CORPORATION of Redmond, Wash., suitable for controlling the operation of the computing device 410. System memory 420 also may include a data file cache 426 in which a user copy 427 of a document can be stored. Metadata 429 of the data file also can be stored within the user cache 426.
The system memory 420 also may store one or more software applications, such as authoring applications 424 for creating and editing data files. One non-limiting example of an authoring application 424 suitable for authoring documents in accordance with the principles of the present disclosure is MICROSOFT® OFFICE WORD authoring software from MICROSOFT CORPORATION of Redmond, Wash. Other non-limiting examples of authoring applications include POWERPOINT® presentation software and VISIO® drawing and diagramming software, both also from MICROSOFT CORPORATION of Redmond, Wash.
Computing device 410 also may have input device(s) 430, such as a keyboard, mouse, pen, voice input device, touch input device, etc., for entering and manipulating data. Output device(s) 435, such as a display screen, speakers, printer, etc., also may be included. These output devices 435 are well known in the art and need not be discussed at length herein.
The computing device 410 also may contain communication connections 440 that allow the device 410 to communicate with other computing devices, for example, the storage device 120 of
An identify operation 506 determines whether editing conflicts exist between the current version of the master copy and the user copy. More specifically, the identify operation 506 determines whether any intervening changes to the master copy and any editing operations performed on the user copy since the most recent synchronization (i.e., or since the user copy was obtained) interfere with one other.
A merge operation 508 combines the user copy and the master copy into a merged version of the data file and presents the merged version to the user. In one embodiment, the merge operation 508 integrates the intervening changes into the user copy of the data file. In another embodiment, the merge operation 508 integrates the user changes into the master copy of the data file. In another embodiment, the merge operation 508 integrates the intervening changes and the user changes into the most recently synchronized version of the master copy (i.e., the version of the master copy that was obtained and edited by the user).
A first determination module 510 splits the flow of the synchronize process 500 based on whether any editing conflicts were identified by the identify operation 506 and/or whether any identified editing conflicts from previously received updates remain unresolved. If the first determination module 510 determines at least one editing conflict has been identified, then an alert operation 512 indicates the presence of the editing conflict to the user. For example, the alert operation 512 may present a message to the user indicating the existence of one or more editing conflicts. In one embodiment, the alert operation 512 also may indicate consequences of having unresolved, identified editing conflicts (e.g., the inability to fully synchronize the user copy with the master copy until the editing conflict is resolved).
A second determination module 514 enables the user to choose when to review and resolve the identified editing conflict. In the example shown, the second determination module 514 presents to the user an option of reviewing the editing conflict or continuing to edit the user copy of the data file without viewing the editing conflict. If the second determination module 514 determines the continued editing option has been selected by the user, then a continue operation 516 enables the user to edit the data file freely as will be discussed in greater detail herein.
If the second determination module 514 determines the review option has been selected by the user, however, then a review operation 518 enables the user to review and optionally to resolve the editing conflict using a resolution process that will be discussed in greater detail herein. When the review operation 518 completes, the synchronize process 500 proceeds back to the first determination module 510 to determine whether any editing conflicts remain unresolved. The operation flow described above repeats until the first determination module 510 determines no editing conflicts exist.
When the first determination module 510 determines no editing conflicts exist, then a third determination module 520 determines whether all intervening changes from the master copy have been obtained and instantiate into the user copy. For example, the third determination module 520 may determine whether any intervening changes have been made to the master copy since the most recent update. In one embodiment, the third determination module 520 compares a version number of the current version of the master copy with a version number of the version of the master copy represented by the most recently received update.
If the third determination module 520 determines additional intervening changes exist (i.e., that the most recently received update does not reflect the current state of the master copy), then the synchronize process 500 returns to the obtain operation 504 and the synchronize process 500 begins again. If the third determination module 520 determines no additional intervening changes exist (i.e., that the most recently received update reflects the current state of the master copy), however, then an indicate operation 522 provides an indication the editing conflict has been resolved. For example, in one embodiment, the indicate operation 522 may display a message to the user indicating that all editing conflicts have been resolved. In another embodiment, the indicate operation 522 may display a graphic, icon, or other indicia to the user indicating the editing conflicts have been resolved. A store operation 524 overwrites the master copy of the data file with the user copy. The synchronize process 500 completes and ends at a stop module 526.
The editing instructions indicate changes to content and/or metadata of the merged version of the user copy of the data file. For example, the editing instructions may indicate a data unit (e.g., a paragraph, a column, a table, a slide, a graphic, etc.) of the new data file should be added, deleted, or revised. The editing instructions also may indicate a change in metadata (e.g., a change in content locks, etc.). An implement operation 606 performs the editing operation on the new copy of the document.
A determination module 608 determines whether the user has indicated a desire to stop editing. For example, in a first embodiment, the determination module 608 may determine the user has chosen to resolve editing conflicts. In another embodiment, the determination module 608 determines the user has chosen to close the new copy of the data file or to synchronize the new copy with the master copy of the data file. In another embodiment, the determination module 608 may determine the user has chosen to continue editing the new copy of the data file.
If the determination module 608 determines the user has chosen to continue editing the data file, then the editing process 600 cycles back to the receive operation 604 and begins again. If the determination module 608 determines the user has chosen to stop editing the data file, however, then a save operation 610 stores any changes made by the user. Generally, the save operation 610 stores the merged version of the data file including any changes made by the user in a location other than the master copy of the data file. In one embodiment, the save operation 610 stores the merged version of the data file in local memory (e.g., a local cache). In another embodiment, the save operation 610 may store the merged version of the data file on a storage device separate from the master copy. The editing process 600 completes and ends at a stop module 612.
In some embodiments, the display operation 704 displays all conflicting edits from both the master copy and the user copy. For example, in one embodiment, the display operation 704 may display content resulting from the conflicting editing operations as merged into the user copy of the data file. In another embodiment, the display operation 704 may display content resulting from the conflicting editing operations as merged into the master copy of the data file. In another embodiment, the display operation 704 may display content resulting from the conflicting editing operations as merged into the version of the data file prior to any intervening changes.
In one embodiment, if conflicting editing operations are made to the same object (e.g., a character, a word, a paragraph, a graphic, a slide, a cell, a row, a column, etc.) within the data file, then the display operation 704 will display the object transformed by both editing operations. In another embodiment, the display operation 704 will display two copies of the object, one copy representing the version of the object found in the master copy of the data file and the other copy representing the version of the object found in the user copy of the data file.
In one embodiment, the display operation 704 displays the conflicting content as annotations to the non-conflicting content of the merged version of the data file. For example, in one embodiment, conflicting content added to the data file, either in the master copy or in the user copy, may be shown added to the non-conflicting content and annotated to indicate the conflicting content was inserted in one version of the data file. In another embodiment, conflicting content removed from the data file, either in the master copy or in the user copy, may be shown added to the non-conflicting content and annotated to indicate the conflicting content was deleted in one version of the data file. Additional disclosure relating to the display of conflicting edits will be provided herein.
An obtain operation 706 receives authoring instructions from the user. For example, the obtain operation 706 may receive user input through an input device, such as input device 430 of
If the first determination module 708 determines the user has provided instructions to return to editing, then the review process 700 completes and ends at a stop module 714 even if identified editing conflicts remain unresolved. If the first determination module 708 determines the user has not provided instructions to return to editing, however, then an implement operation 710 performs the user instructions. In general, the implement operation 710 may accept or reject each editing operation in accordance with the instructions provided by the user. For example, in one embodiment, the implement operation 710 may instantiate a conflicting editing operation into the merged version of the data file if the user provides instructions to accept the editing operation. In another embodiment, the implement operation 710 may remove the effects of a rejected editing operation from the merged version of the data file. Additional details regarding performance of the implement operation 710 are provided herein.
A second determination module 712 determines whether any identified editing conflicts remain unresolved. In one embodiment, the second determination module 712 does not determine whether any new editing conflicts have been created since the most recent identification of editing conflicts (e.g., through updates received from the master copy, through additional editing operations performed by the user, etc.). Rather, the second determination module 712 determines whether any of the editing conflicts already identified remain unresolved. In another embodiment, the second determination module 712 determines whether any new editing conflicts exist.
If the second determination module 712 determines at least one identified editing conflict remains unresolved, then the resolution process 700 cycles back to the first determination module 708. If the second determination module 712 determines the identified editing conflicts have been resolved, however, then the resolution process 700 completes and ends at the stop module 714.
In general, the user interface displayed by the authoring application on the user device, such as authoring application 130 on user device 110 of
In addition, when an editing conflict is identified, the user interface of the authoring application may be configured to toggle between showing editing conflicts and hiding editing conflicts at the discretion of the user. In general, the user interface of the authoring application enables free editing of the data file both when editing conflicts are shown and when editing conflicts are hidden. The user interface enables additional functionality enabling review and resolution of editing conflicts when the user chooses to view editing conflicts.
The user interface 800 includes an authoring window 810 in which the user copy of the data file may be displayed. In one embodiment, the authoring window 810 includes an editing area 812 in which the content of the user copy is displayed. Metadata of the data file (e.g., content locks) also may be displayed in the editing area 812. The user of the authoring application may interact with the content in the editing area 812 to add, delete, or revise the displayed content.
The user interface 850 includes the authoring window 810 of
The user interface 900 also includes a toggle interface 915 by which the user may hide identified editing conflicts. In one embodiment, selection of the toggle interface 915 also will deactivate the conflict resolution interface 920. For example, selection of the toggle interface 915 may cause the user interface 850 of
The user interface 900 includes an authoring window 910 having an editing area 912 in which the content and metadata of the data file may be displayed and/or edited. The editing area 912 also displays identified editing conflicts or content resulting from identified editing conflicts. For example, in one embodiment, the editing area 912 may display a merged version of the data file generated by merging the user copy with the master copy.
In some embodiments, the identified editing conflicts displayed within the editing area 912 are indicated via annotations to the content resulting from the conflicting editing operations. In one embodiment, the annotations indicate how of the resulting content conflicts. For example, in one embodiment, a section of content (e.g., a word, a paragraph, a table, a column, a graphic, etc.) may be annotated to indicate the section was inserted, deleted, and/or revised in the user copy and/or the master copy. Example annotations indicating such insertion, deletion, and/or revision may include a predetermined color, a strikethrough, underlining, a predetermined opacity, highlighting, or other such indicia.
The user interface 900 also can include a summary window 920 in which the authoring application may communicate information about identified editing conflicts to the user. In some embodiments, the summary window 920 can include a summary information area 922. For example, the summary information area 922 may display the number of editing conflicts identified by the authoring application and remaining unresolved. The summary information area 922 also may indicate the number of mergeable and unmergeable editing conflicts. In one embodiment, the summary information area 922 may be refreshed (i.e., updated) as the editing conflicts are resolved.
In some embodiments, the summary window 920 also may display a listing 924 of any unresolved editing conflicts. For example, in one embodiment, all conflicting content (e.g., content added, deleted, and/or revised in the user copy or the master copy) is listed within the summary window 920. In one embodiment, the listed content may be annotated to indicate an origin of the content (e.g., the user copy or the master copy). In another embodiment, the listed content may be annotated to indicate a type of editing action (e.g., revision, insertion, deletion, etc.) yielding the content.
The user interface 900 may be configured to enable a user to resolve the displayed editing conflicts. For example, the user interface 900 may enable the user to provide resolution instructions for one or more displayed editing conflicts. In one embodiment, the user interface 900 enables the user to provide resolution instructions for the displayed editing conflicts in accordance with a sequence. In another embodiment, the user interface 900 enables the user to provide resolution instructions for any displayed editing conflict selected by the user.
Examples of resolution instructions include an accept instruction by which the user indicates a given editing operation should be instantiated into the merged version of the data file and a reject instruction by which the user indicates the editing operation should not be performed on the merged version of the data file. Other examples of resolution instructions may include a next instruction by which the user proceeds to a subsequent editing conflict without resolving the currently selected editing conflict and a back instruction by which the user returns to a previous editing conflict without resolving the currently selected editing conflict.
In some embodiments, the user may provide a resolution instruction by interacting with one or more resolution interfaces 930. Non-limiting examples of resolution interfaces include buttons (e.g., an accept button, a reject button, a next button, etc.), drop-down menus, tabs, and other such interface tools. In one embodiment, the user interface 900 displays one or more resolution interfaces to the user when the editing conflicts are displayed. In another embodiment, the user interface 900 displays one or more resolution interfaces to the user when conflicting content is selected by the user.
For example, the user may provide a resolution instruction by selecting (e.g., via a cursor or other input interface) content within the editing area 912 that results from one of the conflicting editing operations and interacting with a resolution interface. In other embodiments, the user may provide a resolution instruction by selecting an editing operation displayed within the summary window 920 and interacting with a resolution interface to provide or select a resolution instruction.
For example, in
A determination module 1006 determines whether the resolution instruction indicates the selected conflicting content is to be accepted or rejected. If the determination module 1006 determines the obtain operation 1004 receives an accept instruction, then the implementation process 1000 proceeds to an accept operation 1008. If the determination module 1006 determines the obtain operation 1004 receives a reject instruction, however, then the implementation process 1000 proceeds to a reject operation 1010. Details regarding example processes for implementing the accept and reject operations 1008, 1010 are discussed below with reference to
A determination module 1106 determines whether or not the accepted content resulted in content and/or formatting being added into the data file. For example, in one embodiment, the determination module 1106 determines whether or not the accepted content includes a character, word, table, column, graphic, or other data unit to the data file. In another embodiment, the determination module 1106 determines whether the accepted content added any formatting (e.g., bold, underlining, font color, highlighting, etc.) to the data file.
If the determination module 1106 determines the accepted editing operation resulted in content and/or formatting being added, then the accept process 1100 complete and ends at the stop module 1110. If the determination module 1106 determines the accepted editing operation removes content and/or formatting from the data file, however, then a remove operation 1108 deletes the content and/or formatting from the merged version of the data file. The accept process 1100 completes and ends at the stop module 1110 after completion of the remove operation 1108.
A determination module 1206 determines whether or not the rejected editing operation would have resulted in content and/or formatting being added to the data file. For example, in one embodiment, the fourth determination module 1206 determines whether or not the rejected editing operation would have added a character, word, row, cell, or other data unit or content object to the data file. In another embodiment, the determination module 1206 determines whether the rejected editing operation would have added any formatting (e.g., bold, underlining, font color, highlighting, etc.) to the data file.
If the determination module 1206 determines the rejected editing operation would not have resulted in content and/or formatting being added to the data file, then the reject process 1200 complete and ends at the stop module 1210. If the determination module 1206 determines the rejected editing operation would have added content and/or formatting, however, then a remove operation 1208 deletes the content and/or formatting from the merged version of the data file. The reject process 1200 completes and ends at the stop module 1220 after completion of the remove operation 1208.
The principles of the present disclosure can be better understood by walking through example applications. In a first example application,
In
The authoring application enables editing of the user copy of the data file, for example, using the example authoring process 300 of
In
In one embodiment, editing of the first data unit initiates a transmission to the master copy of the data file of a request by the first user to lock the first data unit. In another embodiment, the first user may provide express instructions to lock the first data unit. For example, the first user may select the first data unit and select a lock option on the user interface 2000. Accordingly, a lock 2024 owned by the first user has been placed around the first data unit in
In
In one embodiment, the authoring application receives a metadata update from the master copy. In another embodiment, the authoring application receives a content update from the master copy. In the example application, the authoring application receives both a metadata update and a content update. The metadata update indicates the second user has released the lock 2022 on the second data unit and has obtained a lock (see lock 2028 of
When the authoring application receives the update, the authoring application determines whether any editing conflicts exist between the user copy and the received update. If no editing conflicts exist, then the authoring application instantiates the metadata updates automatically (see update operation 308 of
In one embodiment, if a metadata update conflicts with a user change, however, then the metadata update is not instantiated until the user attempts to synchronize the user copy with the master copy. In the example application, the metadata update indicates the second user has a lock on the first data unit, which conflicts with the first user's request to lock the first data unit. Accordingly, the second user's lock on the first data unit is not instantiated into the user copy automatically. In another embodiment, a release of a content lock is not instantiated until any identified editing conflicts are resolved. Accordingly, the second user's release of the lock 2022 on the second data unit is not instantiated into the user copy automatically.
If no editing conflicts exist, then the authoring application also enables the user to determine when the content updates should be instantiated (e.g., merged) into the user copy of the data file (see update operation 308 of
If the authoring application identifies an editing conflict, however, then the authoring application inhibits the user from instantiating the updates into the user copy. In one embodiment, the authoring application does not display an instantiation interface. In another embodiment, the authoring application does not display an indication of the availability of the update. In the example application, the metadata update conflicts with a user change. Accordingly, the authoring application does not provide the first user with an opportunity to instantiate the content update.
In
The authoring application then merges the user copy of the data file with the master copy of the data file (see merge operations 508 of
In another embodiment, the authoring application may determine the version of the data file represented by the master copy and may perform any content or formatting additions, deletions, and/or revisions from the user copy on unlocked data units of the master copy version of the data file (i.e., instantiates mergeable conflicts). For unmergeable conflicts, such as user edits to data units locked on the master copy (e.g., user edits performed prior to receiving the metadata update indicating the lock), the authoring application may add a duplicate data unit adjacent the locked data unit and may revise the duplicate data unit based on the revisions made in the user copy (e.g., change content, add a content lock, etc.). Accordingly, the data unit remains locked and unchanged in accordance with the state of the master copy. However, changes to the data unit by the first user are retained in the merged version of the data file until the first user chooses to remove them.
In the example shown in
Because the authoring application has identified editing conflicts, the authoring application does not continue to save to the master copy (see first determination module 510 of
The authoring application also presents a toggle interface 2015 to the first user in
One example process by which the authoring application may implement the review operation 518 of
In general, the editing area 2012 displays the merged version of the data file and enables the user to freely edit the merged version. In some embodiments, the merged version of the data file displayed in the editing area 2012 is annotated to indicate which portions of content are in conflict. For example, in one embodiment, the merged version of the data file is annotated to indicate whether the conflicting content resulted from insertions (e.g., via underlining or other formatting, text color, highlighting, or other such indicia) or deletions (e.g., via strikethroughs or other formatting, text color, highlighting, or other such indicia).
In the example shown, revisions to content are shows as a series of deletions and insertions. In other embodiments, however, revisions to content may be distinctly annotated. In other embodiments, the metadata (e.g., locks) also may be annotated to indicate which portions of metadata conflict. In the example shown in
The conflicting editing operations also are displayed by the summary window 2030. The summary area 2032 of the resolution interface indicates the number of conflicting editing operations contained within the merged version of the data file. In the example shown, the summary area 2032 indicates one conflicting editing operation has been identified. The listing 2034 of the summary window 2030 displays the conflicting content. In one embodiment, the listing 2034 displays the conflicting content separate from the non-conflicting content. In another embodiment, the listing 2034 annotates the conflicting content to indicate whether the content as inserted and/or deleted (e.g., see indicia 2036 of
The first user of the authoring application may interact with either the editing area 2012 or the summary window 2030 (
Alternatively, the first user may provide instructions to accept or reject conflicting content or portions thereof. In one embodiment, the first user may select content displayed within the editing area 2012 of the display window 2010 and may select an option on a resolution interface to provide instructions to resolve the editing operation. For example, the first user may select the content on which instructions are to be provided and may select a menu option from a resolution mention 2040 (see
In the example shown in
One example process by which the authoring application may perform the rejection of the selected portion of the conflicting content is the reject process 1200 of
Returning to the review process 700 of
Continuing with the review process 700, the authoring application obtains another set of instructions from the first user (see obtain operation 706 of
In
One example process by which the authoring application may accept the selected conflicting content includes the accept process 1100 of
Returning to the review process 700 of
Since the first user resolved all identified editing conflicts in this example application, the authoring application determines that no editing conflicts remain unresolved. Accordingly, the authoring application checks with the master copy to determine whether additional updates are available (see the second determination module 520 of
When the authoring application determines no editing conflicts exist (see first determination module 510 of
The authoring application alerts the first user when the authoring application successfully uploads the update to the master copy (see indicate operation 524 of
The second example application, in which the first user is editing a data file offline, is provided in
In the example shown, the status bar 2218 indicates the first user is editing a user copy of a data file offline (i.e., is not communicatively connected to a storage device storing a master copy of the data file). Another user has a lock 2222 on the first data unit within the editing area 2212. Accordingly, the authoring application inhibits the first user from editing the first data unit.
The authoring application enables editing of the user copy of the data file, for example, using the example authoring process 300 of
Because the first user is editing the user copy offline, the authoring application cannot synchronize a lock request for the third data unit. In one embodiment, the authoring application stores the lock request until the user logs online. In such an embodiment, the authoring application may display a lock 2224 around the third data unit. In another embodiment, the authoring application does not attempt to lock the third data unit. In one embodiment, the authoring application alerts the first user that a lock request cannot be synchronized and, accordingly, that editing the data unit may result in editing conflicts. For the purposes of this example application, the authoring application stores the lock request for later synchronization with the master copy.
In
When the authoring application receives the update, the authoring application determines whether any editing conflicts exist between the user copy and the received update. If no editing conflicts exist, then the authoring application instantiates the metadata updates automatically (see update operation 308 of
In
The authoring application then merges the user copy of the data file with the master copy of the data file (see merge operations 508 of
The first set of new content, “TBD,” which was added to the first data unit, does not result in an editing conflict. The first user did not edit the first data unit. The second set of new content, “Jump, fox, jump!”, which was added to the third data unit, results in an editing conflict since the first user attempted to lock the third data unit. The other user was able to edit the third data unit since the first user's lock request has not yet been synchronized with the master copy prior to the edit. However, since the update does not indicate the third data unit is locked by another user, the first user's lock is maintained around the third data unit.
Because the authoring application has identified an editing conflict, the authoring application does not continue to save to the master copy (see first determination module 510 of
The authoring application also presents a toggle interface 2215 to the first user in
One example process by which the authoring application may implement the review operation 518 of
In general, the editing area 2212 displays the merged version of the data file and enables the user to freely edit the merged version. In some embodiments, the merged version of the data file displayed in the editing area 2212 is annotated to indicate which portions of content are in conflict. For example, in one embodiment, the merged version of the data file is annotated to indicate whether the conflicting content resulted from insertions (e.g., via underlining or other formatting, font color, highlighting, opacity, or other such indicia) or deletions (e.g., via strikethroughs or other formatting, font color, highlighting, opacity, or other such indicia).
In the example shown, the first data unit does not contain any editing conflicts since the first data unit is locked on the server to the second user. Accordingly, the first data unit is not annotated. The second data unit also does not contain any editing conflicts so the second data unit is not annotated. Some content within the third data unit, which is shown as locked to the first user, is underlined to indicate the content has been inserted into the data unit.
In one embodiment, only conflicting content originating from the user copy is annotated. Advantageously, only annotating user created conflicts allows the user to understand the state of the master copy of the data file and differences between the master copy and the user copy. In other embodiments, however, conflicting content originating from the master copy may be annotated as well as or in place of the conflicting content from the user copy.
The conflicting editing operations also are displayed by the summary window 2230. The summary area 2232 of the resolution interface indicates the number of conflicting editing operations contained within the merged version of the data file. In the example shown, the summary area 2232 indicates one conflicting editing operation has been identified. The listing 2234 of the summary window 2230 displays the conflicting content. In one embodiment, the listing 2234 displays the conflicting content separate from the non-conflicting content. In another embodiment, the listing 2234 annotates the conflicting content to indicate whether the content as inserted and/or deleted (e.g., see indicia 2236 of
The first user of the authoring application may interact with a resolution interface (e.g., see resolution interface 2240 of
Alternatively, the first user may provide instructions to accept or reject conflicting content or portions thereof. In one embodiment, the first user may select content displayed within the editing area 2012 of the display window 2010 and may select an option on a resolution interface 2240 to provide instructions to resolve the editing operation. For example, the first user may select the content on which instructions are to be provided and may select an accept button 2242 or a reject button 2244 from an example resolution interface 2040 (see
In the example shown in
One example process by which the authoring application may accept the selected conflicting content includes the accept process 1100 of
Returning to the review process 700 of
The authoring application alerts the first user when the authoring application successfully uploads the update to the master copy (see indicate operation 524 of
Embodiments of the disclosure may be implemented as a computer process (method), a computing system, or as an article of manufacture, such as a computer program product or computer readable media. The processes (programs) can be implemented in any number of ways, including the structures described in this document. One such way is by machine operations, of devices of the type described in this document. Another optional way is for one or more of the individual operations of the methods to be performed on a computing device in conjunction with one or more human operators performing some of the operations. These human operators need not be collocated with each other, but each can be only with a machine that performs a portion of the program.
The computer program product may be a computer storage media readable by a computer system and encoding a computer program of instructions for executing a computer process. The computer program product may also be a propagated signal on a carrier readable by a computing system and encoding a computer program of instructions for executing a computer process. The term computer readable media as used herein includes both storage media and communication media.
Those skilled in the art will appreciate that the disclosure may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like. The disclosure may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices. Generally, program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types.
This application is a continuation application of U.S. Ser. No. 12/111,174, entitled CONFLICT RESOLUTION, and filed on Apr. 28, 2008, which is incorporated herein by reference in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
4855580 | Van Maanen, Jr. | Aug 1989 | A |
5107443 | Smith | Apr 1992 | A |
5142619 | Webster, III | Aug 1992 | A |
5313394 | Clapp | May 1994 | A |
5339389 | Bates | Aug 1994 | A |
5446842 | Schaeffer | Aug 1995 | A |
5486686 | Zdybel | Jan 1996 | A |
5535332 | Ishida | Jul 1996 | A |
5568640 | Nishiyama | Oct 1996 | A |
5623659 | Shi et al. | Apr 1997 | A |
5630138 | Raman | May 1997 | A |
5664186 | Bennett | Sep 1997 | A |
5671428 | Muranaga | Sep 1997 | A |
5692178 | Shaughnessy | Nov 1997 | A |
5729734 | Parker | Mar 1998 | A |
5751958 | Zweben | May 1998 | A |
5758079 | Ludwig et al. | May 1998 | A |
5781732 | Adams | Jul 1998 | A |
5781908 | Williams | Jul 1998 | A |
5787262 | Shakib | Jul 1998 | A |
5835950 | Cho et al. | Nov 1998 | A |
5893126 | Drews et al. | Apr 1999 | A |
5920694 | Carleton et al. | Jul 1999 | A |
5963931 | Fagg | Oct 1999 | A |
5966512 | Bates et al. | Oct 1999 | A |
5999208 | McNerney et al. | Dec 1999 | A |
6000945 | Sanchez-Lazer | Dec 1999 | A |
6006239 | Bhansali | Dec 1999 | A |
6026461 | Baxter et al. | Feb 2000 | A |
6049334 | Bates et al. | Apr 2000 | A |
6055546 | Pongracz | Apr 2000 | A |
6065026 | Cornelia | May 2000 | A |
6067551 | Brown | May 2000 | A |
6073161 | DeBoskey | Jun 2000 | A |
6088702 | Plantz | Jul 2000 | A |
6175853 | Stracke, Jr. | Jan 2001 | B1 |
6202085 | Benson | Mar 2001 | B1 |
6209010 | Gauthier | Mar 2001 | B1 |
6209128 | Gerard | Mar 2001 | B1 |
6240414 | Beizer | May 2001 | B1 |
6244575 | Vaartstra et al. | Jun 2001 | B1 |
6275935 | Barlow | Aug 2001 | B1 |
6317777 | Skarbo | Nov 2001 | B1 |
6324544 | Alam et al. | Nov 2001 | B1 |
6327584 | Xian | Dec 2001 | B1 |
6327611 | Everingham | Dec 2001 | B1 |
6341291 | Bentley | Jan 2002 | B1 |
6342906 | Kumar | Jan 2002 | B1 |
6351271 | Mainwaring et al. | Feb 2002 | B1 |
6363352 | Dailey | Mar 2002 | B1 |
6411965 | Klug | Jun 2002 | B2 |
6430576 | Gates et al. | Aug 2002 | B1 |
6437778 | Matsui et al. | Aug 2002 | B1 |
6438548 | Grim, III | Aug 2002 | B1 |
6438563 | Kawagoe | Aug 2002 | B1 |
6438564 | Morton et al. | Aug 2002 | B1 |
6446093 | Tabuchi | Sep 2002 | B2 |
6502113 | Crawford et al. | Dec 2002 | B1 |
6507865 | Hanson et al. | Jan 2003 | B1 |
6526434 | Carlson et al. | Feb 2003 | B1 |
6529905 | Corsberg et al. | Mar 2003 | B1 |
6560614 | Barboy | May 2003 | B1 |
6560620 | Ching | May 2003 | B1 |
6564246 | Varma et al. | May 2003 | B1 |
6574377 | Cahill | Jun 2003 | B1 |
6587870 | Takagi et al. | Jul 2003 | B2 |
6594664 | Estrada et al. | Jul 2003 | B1 |
6610104 | Lin | Aug 2003 | B1 |
6629129 | Bookspan et al. | Sep 2003 | B1 |
6662209 | Potts, Jr. | Dec 2003 | B2 |
6678882 | Hurley et al. | Jan 2004 | B1 |
6681371 | Devanbu | Jan 2004 | B1 |
6681382 | Kakumani | Jan 2004 | B1 |
6687878 | Eintracht | Feb 2004 | B1 |
6711718 | Pfeil | Mar 2004 | B2 |
6751618 | Germscheid | Jun 2004 | B1 |
6757678 | Myllymaki | Jun 2004 | B2 |
6757696 | Multer et al. | Jun 2004 | B2 |
6757767 | Kelleher | Jun 2004 | B1 |
6757871 | Sato | Jun 2004 | B1 |
6760840 | Shimbo | Jul 2004 | B1 |
6772165 | O'Carroll | Aug 2004 | B2 |
6842768 | Shaffer et al. | Jan 2005 | B1 |
6854087 | Takeo | Feb 2005 | B1 |
6925476 | Multer | Aug 2005 | B1 |
6976213 | Letourneau et al. | Dec 2005 | B1 |
6983416 | Bae | Jan 2006 | B1 |
6993522 | Chen et al. | Jan 2006 | B2 |
7007235 | Hussein | Feb 2006 | B1 |
7024429 | Ngo et al. | Apr 2006 | B2 |
7024430 | Ingraham et al. | Apr 2006 | B1 |
7035839 | Gillespie | Apr 2006 | B1 |
7039679 | Mendez | May 2006 | B2 |
7047407 | Itoh et al. | May 2006 | B2 |
7053839 | Cassel et al. | May 2006 | B2 |
7058663 | Johnston | Jun 2006 | B2 |
7065633 | Yates et al. | Jun 2006 | B1 |
7069505 | Tamano | Jun 2006 | B2 |
7086005 | Matsuda | Aug 2006 | B1 |
7089278 | Churchill et al. | Aug 2006 | B1 |
7099919 | Kusumoto et al. | Aug 2006 | B2 |
7110936 | Hiew | Sep 2006 | B2 |
7111237 | Chan | Sep 2006 | B2 |
7117278 | Avery | Oct 2006 | B2 |
7124151 | Choi | Oct 2006 | B1 |
7124164 | Chemtob | Oct 2006 | B1 |
7124362 | Tischer | Oct 2006 | B2 |
7127501 | Beir | Oct 2006 | B1 |
7149776 | Roy | Dec 2006 | B1 |
7155465 | Lee et al. | Dec 2006 | B2 |
7185277 | Bernstein | Feb 2007 | B1 |
7200668 | Mak | Apr 2007 | B2 |
7203708 | Liu et al. | Apr 2007 | B2 |
7209948 | Srinivasa | Apr 2007 | B2 |
7225189 | McCormack | May 2007 | B1 |
7237006 | Prell | Jun 2007 | B1 |
7240091 | Hopmann et al. | Jul 2007 | B1 |
7242389 | Stern | Jul 2007 | B1 |
7249314 | Walker | Jul 2007 | B2 |
7293049 | Kadyk et al. | Nov 2007 | B2 |
7310657 | Nakamura | Dec 2007 | B2 |
7315978 | Giles et al. | Jan 2008 | B2 |
7328243 | Yeager | Feb 2008 | B2 |
7346705 | Hullot et al. | Mar 2008 | B2 |
7356393 | Schlatre et al. | Apr 2008 | B1 |
7401291 | Ramaley | Jul 2008 | B2 |
7478129 | Chemtob | Jan 2009 | B1 |
7487471 | Wu | Feb 2009 | B2 |
7496577 | Williamson | Feb 2009 | B2 |
7529780 | Braginsky et al. | May 2009 | B1 |
7536641 | Rosenstein et al. | May 2009 | B2 |
7565603 | Jones et al. | Jul 2009 | B1 |
7577906 | Friedrichowitz | Aug 2009 | B2 |
7594163 | Slack-Smith | Sep 2009 | B2 |
7603357 | Gourdol | Oct 2009 | B1 |
7610287 | Dean et al. | Oct 2009 | B1 |
7647292 | Hayashi | Jan 2010 | B2 |
7650336 | Herrmann | Jan 2010 | B1 |
7664750 | Frees | Feb 2010 | B2 |
7694217 | Croft | Apr 2010 | B2 |
7698660 | Sanchez et al. | Apr 2010 | B2 |
7714222 | Taub | May 2010 | B2 |
7761784 | Parks | Jul 2010 | B2 |
7769810 | Kaufman | Aug 2010 | B1 |
7779347 | Christiansen et al. | Aug 2010 | B2 |
7788326 | Buchheit et al. | Aug 2010 | B2 |
7792788 | Melmon | Sep 2010 | B2 |
7797274 | Strathearn et al. | Sep 2010 | B2 |
7801951 | Fishkin et al. | Sep 2010 | B2 |
7818678 | Massand | Oct 2010 | B2 |
7831679 | Apacible et al. | Nov 2010 | B2 |
7839532 | Brawn | Nov 2010 | B2 |
7912811 | Hodel-Widmer | Mar 2011 | B2 |
7933952 | Parker et al. | Apr 2011 | B2 |
7941399 | Bailor | May 2011 | B2 |
7949633 | Shaver et al. | May 2011 | B1 |
7962853 | Bedi et al. | Jun 2011 | B2 |
7966556 | Bourdev | Jun 2011 | B1 |
8019780 | Pinkerton et al. | Sep 2011 | B1 |
8028229 | Bailor et al. | Sep 2011 | B2 |
8082277 | O'Brien et al. | Dec 2011 | B1 |
8122341 | Dayan et al. | Feb 2012 | B1 |
8352870 | Bailor et al. | Jan 2013 | B2 |
8453052 | Newman et al. | May 2013 | B1 |
9071615 | Sanchez et al. | Jun 2015 | B2 |
20010018697 | Kunitake | Aug 2001 | A1 |
20010042075 | Tabuchi | Nov 2001 | A1 |
20020007287 | Straube | Jan 2002 | A1 |
20020022122 | Hirata | Feb 2002 | A1 |
20020059325 | Beizer et al. | May 2002 | A1 |
20020065848 | Walker | May 2002 | A1 |
20020069192 | Aegerter | Jun 2002 | A1 |
20020083183 | Pujare et al. | Jun 2002 | A1 |
20020188598 | Myllymaki | Dec 2002 | A1 |
20030028600 | Parker | Feb 2003 | A1 |
20030093760 | Suzuki | May 2003 | A1 |
20030097410 | Atkins | May 2003 | A1 |
20030097638 | Tamano | May 2003 | A1 |
20030105979 | Itoh et al. | Jun 2003 | A1 |
20030115481 | Baird | Jun 2003 | A1 |
20030140067 | Sesek et al. | Jul 2003 | A1 |
20030159105 | Hiebert | Aug 2003 | A1 |
20030167281 | Cohen et al. | Sep 2003 | A1 |
20030172113 | Cameron | Sep 2003 | A1 |
20030172168 | Mak et al. | Sep 2003 | A1 |
20030208534 | Carmichael | Nov 2003 | A1 |
20040003090 | Deeds | Jan 2004 | A1 |
20040039829 | Bucher | Feb 2004 | A1 |
20040068505 | Lee | Apr 2004 | A1 |
20040085354 | Massand | May 2004 | A1 |
20040107224 | Bera | Jun 2004 | A1 |
20040122870 | Park et al. | Jun 2004 | A1 |
20040122898 | Srinivasa | Jun 2004 | A1 |
20040122912 | Kim et al. | Jun 2004 | A1 |
20040133858 | Barnett | Jul 2004 | A1 |
20040143630 | Kaufmann et al. | Jul 2004 | A1 |
20040161150 | Cukierman et al. | Aug 2004 | A1 |
20040172395 | Edelstein | Sep 2004 | A1 |
20040177343 | McVoy et al. | Sep 2004 | A1 |
20040199550 | Ito | Oct 2004 | A1 |
20040205539 | Mak | Oct 2004 | A1 |
20040205653 | Hadfield | Oct 2004 | A1 |
20040225715 | Gottfried | Nov 2004 | A1 |
20040230903 | Elza | Nov 2004 | A1 |
20040237033 | Woolf et al. | Nov 2004 | A1 |
20040239700 | Baschy | Dec 2004 | A1 |
20040243644 | Steere et al. | Dec 2004 | A1 |
20040250201 | Caspi | Dec 2004 | A1 |
20050004985 | Stochosky | Jan 2005 | A1 |
20050004990 | Durazo | Jan 2005 | A1 |
20050022122 | Barrus et al. | Jan 2005 | A1 |
20050033811 | Bhogal et al. | Feb 2005 | A1 |
20050033813 | Bhogal et al. | Feb 2005 | A1 |
20050039116 | Slack-Smith | Feb 2005 | A1 |
20050044492 | Ramaley et al. | Feb 2005 | A1 |
20050064858 | Makela et al. | Mar 2005 | A1 |
20050071386 | Wolfgang et al. | Mar 2005 | A1 |
20050083907 | Fishler | Apr 2005 | A1 |
20050097440 | Lusk | May 2005 | A1 |
20050132288 | Kirn et al. | Jun 2005 | A1 |
20050138110 | Redlich et al. | Jun 2005 | A1 |
20050177617 | Banginwar et al. | Aug 2005 | A1 |
20050198132 | Vellante et al. | Sep 2005 | A1 |
20050198385 | Aust et al. | Sep 2005 | A1 |
20050203962 | Zhou et al. | Sep 2005 | A1 |
20050210392 | Koide | Sep 2005 | A1 |
20050216524 | Gomes et al. | Sep 2005 | A1 |
20050223012 | Ohkohchi | Oct 2005 | A1 |
20050223066 | Buchheit et al. | Oct 2005 | A1 |
20050234943 | Clarke | Oct 2005 | A1 |
20050240858 | Croft | Oct 2005 | A1 |
20050251738 | Hirano et al. | Nov 2005 | A1 |
20050256907 | Novik et al. | Nov 2005 | A1 |
20050262203 | Buchheit et al. | Nov 2005 | A1 |
20050289512 | Matsusaka | Dec 2005 | A1 |
20060010240 | Chuah | Jan 2006 | A1 |
20060015539 | Wolf et al. | Jan 2006 | A1 |
20060015811 | Tanaka et al. | Jan 2006 | A1 |
20060020360 | Wu | Jan 2006 | A1 |
20060026502 | Dutta | Feb 2006 | A1 |
20060031264 | Bosworth et al. | Feb 2006 | A1 |
20060041579 | Miyashita et al. | Feb 2006 | A1 |
20060041596 | Stirbu et al. | Feb 2006 | A1 |
20060047656 | Dehlinger et al. | Mar 2006 | A1 |
20060053194 | Schneider | Mar 2006 | A1 |
20060053195 | Schneider | Mar 2006 | A1 |
20060053380 | Spataro et al. | Mar 2006 | A1 |
20060080432 | Spataro | Apr 2006 | A1 |
20060085402 | Brown | Apr 2006 | A1 |
20060095514 | Wang et al. | May 2006 | A1 |
20060101328 | Albornoz | May 2006 | A1 |
20060106879 | Zondervan et al. | May 2006 | A1 |
20060112343 | Ducheneaut et al. | May 2006 | A1 |
20060123010 | Landry et al. | Jun 2006 | A1 |
20060123033 | Livshits | Jun 2006 | A1 |
20060136511 | Ngo et al. | Jun 2006 | A1 |
20060136809 | Fernstrom | Jun 2006 | A1 |
20060174207 | Deshpande | Aug 2006 | A1 |
20060200755 | Melmon | Sep 2006 | A1 |
20060218476 | Gombert | Sep 2006 | A1 |
20060242549 | Schwier | Oct 2006 | A1 |
20060248038 | Kaplan | Nov 2006 | A1 |
20060259524 | Horton | Nov 2006 | A1 |
20060265377 | Raman et al. | Nov 2006 | A1 |
20070016650 | Gilbert et al. | Jan 2007 | A1 |
20070050720 | Sharp et al. | Mar 2007 | A1 |
20070055926 | Christiansen et al. | Mar 2007 | A1 |
20070066293 | Peng | Mar 2007 | A1 |
20070073809 | Sangem et al. | Mar 2007 | A1 |
20070118598 | Bedi | May 2007 | A1 |
20070118794 | Hollander et al. | May 2007 | A1 |
20070130334 | Carley | Jun 2007 | A1 |
20070136662 | Khaba | Jun 2007 | A1 |
20070156672 | Wolff et al. | Jul 2007 | A1 |
20070186157 | Walker | Aug 2007 | A1 |
20070186171 | Junuzovic | Aug 2007 | A1 |
20070198952 | Pittenger | Aug 2007 | A1 |
20070203917 | Du | Aug 2007 | A1 |
20070226320 | Hager | Sep 2007 | A1 |
20070226604 | Chalasani | Sep 2007 | A1 |
20070271502 | Bedi | Nov 2007 | A1 |
20070283321 | Hegde | Dec 2007 | A1 |
20080028300 | Krieger | Jan 2008 | A1 |
20080052634 | Fishkin et al. | Feb 2008 | A1 |
20080059187 | Roitblat et al. | Mar 2008 | A1 |
20080059539 | Chin | Mar 2008 | A1 |
20080072141 | Hodel-Widmer | Mar 2008 | A1 |
20080086718 | Bostic | Apr 2008 | A1 |
20080097993 | Nanba | Apr 2008 | A1 |
20080098294 | Le | Apr 2008 | A1 |
20080114740 | Vergottini | May 2008 | A1 |
20080114884 | Hewes et al. | May 2008 | A1 |
20080126953 | Davidson et al. | May 2008 | A1 |
20080147590 | Bechtel | Jun 2008 | A1 |
20080177782 | Poston | Jul 2008 | A1 |
20080180740 | Kimura et al. | Jul 2008 | A1 |
20080195800 | Lee | Aug 2008 | A1 |
20080222159 | Aranha et al. | Sep 2008 | A1 |
20080235579 | Champion et al. | Sep 2008 | A1 |
20080256113 | Rasmussen et al. | Oct 2008 | A1 |
20080256114 | Rasmussen et al. | Oct 2008 | A1 |
20080263032 | Vailaya et al. | Oct 2008 | A1 |
20080270386 | Ohi et al. | Oct 2008 | A1 |
20080294895 | Bodner | Nov 2008 | A1 |
20080320384 | Nagarajan | Dec 2008 | A1 |
20090006936 | Parker | Jan 2009 | A1 |
20090006946 | Hanson | Jan 2009 | A1 |
20090006948 | Parker | Jan 2009 | A1 |
20090063489 | Neumann | Mar 2009 | A1 |
20090094231 | Marvit et al. | Apr 2009 | A1 |
20090094242 | Lo et al. | Apr 2009 | A1 |
20090125518 | Bailor et al. | May 2009 | A1 |
20090150761 | Sawicki et al. | Jun 2009 | A1 |
20090157811 | Bailor et al. | Jun 2009 | A1 |
20090171987 | Coppinger et al. | Jul 2009 | A1 |
20090193331 | Croft | Jul 2009 | A1 |
20090228473 | Kannan et al. | Sep 2009 | A1 |
20090235158 | Rosenstein et al. | Sep 2009 | A1 |
20090249224 | Davis et al. | Oct 2009 | A1 |
20090254572 | Redlich et al. | Oct 2009 | A1 |
20090271696 | Bailor et al. | Oct 2009 | A1 |
20090282041 | Skaria et al. | Nov 2009 | A1 |
20090282462 | Skaria | Nov 2009 | A1 |
20090327294 | Bailor | Dec 2009 | A1 |
20100023562 | Kreuch et al. | Jan 2010 | A1 |
20100070464 | Aymeloglu et al. | Mar 2010 | A1 |
20100088676 | Yuan | Apr 2010 | A1 |
20100095198 | Bultrowicz et al. | Apr 2010 | A1 |
20100131836 | Dukhon et al. | May 2010 | A1 |
20100153857 | Sanchez et al. | Jun 2010 | A1 |
20100169092 | Backes et al. | Jul 2010 | A1 |
20100278453 | King | Nov 2010 | A1 |
20100281074 | Bailor et al. | Nov 2010 | A1 |
20110055702 | Jakobson | Mar 2011 | A1 |
20110184906 | Bailor et al. | Jul 2011 | A1 |
20110209052 | Parker et al. | Aug 2011 | A1 |
20120254315 | Skaria et al. | Oct 2012 | A1 |
20120278276 | Bailor et al. | Nov 2012 | A1 |
20130151466 | Skaria et al. | Jun 2013 | A1 |
20130297559 | Bailor et al. | Nov 2013 | A1 |
20140373108 | Bailor et al. | Dec 2014 | A1 |
20150067467 | Bailor et al. | Mar 2015 | A1 |
20150212996 | Plante et al. | Jul 2015 | A1 |
20150256574 | Sanchez et al. | Sep 2015 | A1 |
Number | Date | Country |
---|---|---|
1276568 | Dec 2000 | CN |
1489075 | Apr 2004 | CN |
1804836 | Jul 2006 | CN |
1971553 | May 2007 | CN |
101042702 | Sep 2007 | CN |
19844071 | Apr 1999 | DE |
1132847 | Sep 2001 | EP |
1290575 | Jun 2005 | EP |
1657649 | May 2006 | EP |
1681652 | Jul 2006 | EP |
1681652 | Jul 2006 | EP |
01113849 | May 1989 | JP |
07085020 | Mar 1995 | JP |
11161535 | Jun 1999 | JP |
2000076109 | Mar 2000 | JP |
2000259623 | Sep 2000 | JP |
2001-265704 | Sep 2001 | JP |
2001290690 | Oct 2001 | JP |
2002288029 | Oct 2002 | JP |
2003233520 | Aug 2003 | JP |
200478535 | Mar 2004 | JP |
2004065193 | Mar 2004 | JP |
2004265193 | Sep 2004 | JP |
2004326176 | Nov 2004 | JP |
2005074724 | Mar 2005 | JP |
2005267021 | Sep 2005 | JP |
2005301838 | Oct 2005 | JP |
2005310158 | Nov 2005 | JP |
2006195972 | Jul 2006 | JP |
2006236350 | Sep 2006 | JP |
2007115131 | May 2007 | JP |
2007-518146 | Jul 2007 | JP |
2007518330 | Jul 2007 | JP |
2007257629 | Oct 2007 | JP |
2008210192 | Sep 2008 | JP |
2009009410 | Jan 2009 | JP |
10-0331685 | Apr 2002 | KR |
1020060026409 | Mar 2006 | KR |
1020060034786 | Apr 2006 | KR |
10-2006-0047218 | May 2006 | KR |
1020070023640 | Feb 2007 | KR |
1020080014747 | Feb 2008 | KR |
2250492 | Apr 2005 | RU |
2272316 | Apr 2005 | RU |
50695 | Jan 2006 | RU |
2005135951 | May 2007 | RU |
2304803 | Aug 2007 | RU |
2327206 | Jun 2008 | RU |
2344468 | Jan 2009 | RU |
2359321 | Jun 2009 | RU |
200424868 | Nov 2004 | TW |
1248002 | Jan 2006 | TW |
200627221 | Aug 2006 | TW |
200627259 | Aug 2006 | TW |
200627274 | Aug 2006 | TW |
I276325 | Mar 2007 | TW |
200817998 | Apr 2008 | TW |
200910880 | Mar 2009 | TW |
WO 0125986 | Apr 2001 | WO |
WO 0133362 | May 2001 | WO |
WO 0188750 | Nov 2001 | WO |
WO 02033575 | Apr 2002 | WO |
03058374 | Jul 2003 | WO |
WO 2005114467 | Dec 2005 | WO |
WO 2007034858 | Mar 2007 | WO |
2007064480 | Jun 2007 | WO |
WO 2007062949 | Jun 2007 | WO |
2008063833 | May 2008 | WO |
2009005922 | Jan 2009 | WO |
WO 2009061638 | May 2009 | WO |
WO 2009076010 | Jun 2009 | WO |
WO 2009079116 | Jun 2009 | WO |
WO 2009134548 | Nov 2009 | WO |
2009158172 | Dec 2009 | WO |
WO 2009154842 | Dec 2009 | WO |
WO 2009158108 | Dec 2009 | WO |
Entry |
---|
Antonovich, Michael, “Office and SharePoint 2007 User's Guide: Integrating SharePoint with Excel, Outlook, and Word,” Feb. 2009, Apress, Section 6.5. |
U.S. Appl. No. 12/276,874, Office Action mailed Sep. 10, 2013, 24 pgs. |
Japanese Notice of Rejection in Application 2010-533160, mailed Aug. 20, 2013, 4 pgs. |
U.S. Appl. No. 12/117,025, Notice of Allowance mailed Nov. 22, 2013, 13 pgs. |
Japanese Final Rejection in Application 2010-536967, mailed Oct. 9, 2013, 6 pgs. |
Chinese Decision on Rejection in Application 200980147769.3, mailed Nov. 7, 2013, 9 pgs. |
Chinese Notice of Allowance in Application 201080019470.2, mailed Aug. 7, 2013, 4 pgs. |
U.S. Appl. No. 12/117,025, Notice of Allowance mailed Jan. 8, 2014, 11 pgs. |
Chinese Notice of Allowance in Application 2008801212195.0, mailed Sep. 5, 2013, 4 pgs. |
Chinese Notice of Allowance in Application 200980116872.1, mailed Dec. 26, 2013, 4 pgs. |
Chinese Notice of Allowance in Application 200980124935.8, mailed Nov. 11, 2013, 4 pgs. |
U.S. Appl. No. 13/539,473, Notice of Allowance mailed Sep. 4, 2014, 8 pgs. |
U.S. Appl. No. 13/760,224, Amendment and Response filed Sep. 8, 2014, 11 pgs. |
U.S. Appl. No. 13/539,473, Supplemental Notice of Allowance mailed Sep. 30, 2014, 2 pgs. |
U.S. Appl. No. 12/276,874, Amendment and Response filed Sep. 30, 2014, 12 pgs. |
Taiwanese Notice of Allowance in Application 97144208, mailed Sep. 5, 2014, 4 pgs. |
Australian Notice of Allowance in Application 2009241535, mailed Aug. 7, 2014, 2 pgs. |
U.S. Appl. No. 13/495,659, Amendment and Response filed Oct. 9, 2014, 8 pgs. |
Taiwanese Office Action and Search Report in Application 98139984, mailed Sep. 16, 2014, 12 pages. |
U.S. Appl. No. 13/539,473, Notice of Allowance mailed Nov. 14, 2014, 8 pgs. |
U.S. Appl. No. 13/539,473, Amendment filed Nov. 24, 2014, 8 pgs. |
U.S. Appl. No. 13/495,659, Office Action mailed Nov. 20, 2014, 7 pgs. |
Preston, Jon A, et al., “An efficient synchronous collaborative editing system deploying dynamic locking of varying granularity in generalized document trees”, Nov. 17-20, 2006, pp. 1-10. |
U.S. Appl. No. 13/760,224, Notice of Allowance mailed Dec. 8, 2014, 11 pgs. |
U.S. Appl. No. 12/276,874, Office Action mailed Dec. 4, 2014, 26 pgs. |
Taiwanese Notice of Allowance in Application 98139984, mailed Jan. 27, 2015, 4 pgs. |
Korean Notice of Final Rejection in Application 10-2015-7002346, mailed Aug. 19, 2015, 18 pgs. |
Taiwanese Search Report in application 103135218, mailed Aug. 26, 2015, 1 page. |
Israel Office Action in Patent Application 212007, Mailed Date: Mar. 31, 2015, 3 Pages. |
Canadian Office Action in Application 2718106, mailed Sep. 14, 2015, 6 pgs. |
Korean Notice of Preliminary Rejection in Application 10-2015-7019793, mailed Sep. 11, 2015, 11 pgs. (with English translation). |
Malaysian Adverse Report in Application PI 2010001575, mailed Jul. 31, 2015, 3 pgs. |
Malaysian Adverse Report in Application PI 2010001887, mailed Jul. 31, 2015, 3 pgs. |
Malaysian Adverse Report in Application PI 2010002084, mailed Jul. 31, 2015, 3 pgs. |
Canadian Office Action in Application 2724679, mailed Oct. 14, 2015, 3 pgs. |
Korean Office Action in Application 10-2015-7019912, mailed Sep. 11, 2015, 6 pgs. |
U.S. Appl. No. 14/534,384, Amendment and Response filed Sep. 21, 2015, 12 pgs. |
U.S. Appl. No. 14/474,481, Amendment and Response filed Oct. 8, 2015, 16 pgs. |
U.S. Appl. No. 13/859,631, Amendment and Response filed Oct. 29, 2015, 15 pgs. |
“Search Report Issued in European Patent Application No. 097706436”, Mailed Date: Mar. 16, 2015, 6 Pages. |
“First Office Action Issued in Malaysian Patent Application No. PI 2010004653”, Mailed Date: Jan. 30, 2015, 3 Pages. |
Israeli Office Action in Application 212007, mailed Jan. 31, 2015, 6 pgs. (partially in English). |
“Office Action Issued in Korean Patent Application No. 10-2010-7012783”, Mailed Date: Feb. 5, 2015, 4 Pages. (W/O English Translation). |
European Communication in Application 09770643.6, mailed Apr. 2, 2015, 1 page. |
Malaysian Adverse Report in Application PI 2010005579, mailed Mar. 31, 2015, 3 pgs. |
Korean Office Action in Application 10-2015-7002346, mailed Mar. 31, 2015, 7 pgs. |
U.S. Appl. No. 13/859,631, Office Action mailed Apr. 29, 2015, 110 pgs. |
European Decision to Refuse and a Copy of the Minutes of the Oral Hearing in EP Application 09739350.8, mailed Dec. 4, 2013, 36 pgs. |
Japanese Notice of Allowance in Application 2011-507506, mailed Nov. 20, 2013, 4 pgs. |
Japanese Notice of Allowance in Application 2011-508530, mailed Nov. 29, 2013, 4 pgs. |
U.S. Appl. No. 12/117,025, Notice of Allowance mailed Feb. 20, 2014, 10 pgs. |
Japanese Notice of Allowance in Application 2010-533160, mailed Jan. 14, 2014, 4 pgs. |
European Notice of Appeal in Application 09739350.8, filed Feb. 14, 2014, 2 pgs. |
Japanese Notice of Allowance in Application 2010536967, mailed Mar. 5, 2014, 4 pgs. |
Australian First Office Action in Application 2009241535, mailed Mar. 13, 2014, 4 pgs. |
Australian First Office Action in Application 2009262859, mailed Mar. 7, 2014, 3 pgs. |
Australian First Office Action in Application 2009318022, mailed Mar. 11, 2014, 3 pgs. |
U.S. Appl. No. 11/957,010, Notice of Allowance mailed Mar. 12, 2014, 9 pgs. |
U.S. Appl. No. 12/117,025, Notice of Allowance mailed Apr. 14, 2014, 11 pgs. |
Taiwanese Search Report in Application 097144208, mailed Feb. 8, 2014, 13 pgs. |
European Submission of Grounds of Appeal in Application 09739350.8, filed Apr. 14, 2014, 4 pgs. |
Taiwanese Search Report in Application 098117528, mailed Mar. 20, 2014, 10 pgs. |
Australian Office Action in Application 2010241814, mailed Apr. 11, 2014, 4 pgs. |
U.S. Appl. No. 12/276,874, Office Action mailed May 30, 2014, 25 pgs. |
Taiwanese Search Report in Application 097139413, mailed Mar. 17, 2014, 13 pgs. |
Australian Notice of Acceptance in Application 2009262859, mailed May 1, 2014, 2 pgs. |
Japanese Final Rejection in Application 2012-508556, mailed May 7, 2014, 6 pgs. |
Russian Notice of Allowance in Application 2011143794, mailed Apr. 11, 2014, 21 pgs. |
U.S. Appl. No. 11/957,010, Notice of Allowance mailed Jun. 10, 2014, 6 pgs. |
U.S. Appl. No. 13/760,224, Office Action mailed Jun. 6, 2014, 14 pgs. |
Australian Notice of Acceptance in Application 2010241814, mailed May 21, 2014, 2 pgs. |
U.S. Appl. No. 13/539,473, Notice of Allowance mailed Jul. 9, 2014, 9 pgs. |
U.S. Appl. No. 13/495,659, Office Action mailed Jul. 9, 2014, 8 pgs. |
Taiwanese Notice of Allowance in Application 097139413, mailed Jun. 27, 2014, 4 pgs. |
European Extended Search Report in Application 10770166.6, mailed Jun. 30, 2014, 7 pgs. |
Taiwanese Notice of Allowance in Application 98117528, mailed Jul. 7, 2014, 4 pgs. |
Australian Second Office Action in Application 2009241535, mailed May 16, 2014, 4 pgs. |
Israeli Office Action in Application 2043295, mailed Dec. 25, 2013, 8 pgs. |
Japanese Notice of Allowance in Application 2011516385, mailed Feb. 13, 2014, 7 pgs. |
Australian Notice of Allowance in Application 2009318022, mailed Jun. 5, 2014, 2 pgs. |
European Office Action Communication, in Application EP 10770166.6, mailed Jul. 17, 2014, 1 page. |
Venolia, G. D. et al., “Understanding Sequence and Reply Relationships within Email Conversations: A Mixed-Model Visualization”, abbreviated paper submitted to CHI 2--3, 2003, 4 pgs. |
Canadian Office Action in Application 2720732, mailed Jun. 5, 2015, 6 pgs. |
Korean Notice of Preliminary Rejection in Application 10-2010-7029113, mailed May 21, 2015, 5 pgs. (with English translation). |
Korean Notice of Preliminary Rejection in Application 10-2011-7011228, mailed May 21, 2015, 15 pgs. (with English translation). |
U.S. Appl. No. 14/534,384, Office Action mailed Jun. 19, 2015, 20 pgs. |
“ACE (editor)”, Wikipedia, Mar. 1, 2006, obtained online at https://en.wikipedia.org/wiki/ACE—(editor) on Jun. 23, 2015, 4 pgs. |
“Gobby”, Wikipedia, Aug. 24, 2014, obtained online at: https://en.wikipedia.org/wiki/Gobby on Jun. 19, 2015, 2 pgs. |
“CoWord”, Wikipedia, May 15, 2007, obtained online at: https://en.wikipedia.org/wiki/CoWord on Jun. 19, 2015, 2 pgs. |
U.S. Appl. No. 14/474,481, Office Action mailed Jul. 8, 2015, 26 pgs. |
U.S. Appl. No. 13/495,659, Office Action mailed Jun. 29, 2015, 9 pgs. |
Korean Final Rejection in Application 1020107012220, mailed Jun. 30, 2015, 4 pgs. |
Japanese Appeal Decision to Grant Patent in Application 2012-508556, mailed Jul. 10, 2015, 4 pgs. |
U.S. Appl. No. 13/539,473, USPTO Response after Amendment after Allowance mailed Dec. 10, 2014, 2 pgs. |
Korean Office Action in Application 10-2010-700797, mailed Nov. 28, 2014, 5 pgs. |
Korean Office Action in Application 10-2010-7012220, mailed Nov. 28, 2014, 7 pgs. |
“How to Track and Manage Changes in a Word 2002 and a Word 2003 Document,” Microsoft Corporation, Mar. 8, 2007, 4 pages. |
“Track Changes in Word 2007 Tutorial,” Florida Gulf Coast University, copyright 2007, 2 pages. |
Grover, Chris, “Word 2007: The Missing Manual,” O'Reilly Media, Inc., copyright 2007, 11 pages. |
Jalbert, Peter, “Real Time Collaboration with Google Docs and Spreadsheets,” Jan. 23, 2008, 5 pages. |
Murray et al., “Compare and combine documents in Word 2007,” Microsoft Corporation, copyright 2012, 5 pages. |
Tyson, Herb, “Microsoft Project 2000 Bible,” Wiley Publishing, Inc., copyright 2007, 4 pages. |
Willden, Andrew, “Track Changes in Word 2007,” Fall 2007, 2 pages. |
U.S. Appl. No. 11/957,010, Office Action mailed Aug. 12, 2013, 28 pgs. |
U.S. Appl. No. 12/117,025, Office Action mailed Jul. 23, 2013, 12 pgs. |
Russian Notice of Allowance in Application 2010118615, mailed Jul. 1, 2013, 6 pgs. |
European Oral Hearing Summons in Application 09739350.8, mailed Jun. 27, 2013, 6 pgs. |
Russian Notice of Allowance in Application 2010145165, mailed Jun. 20, 2013, 6 pgs. |
Japanese Notice of Rejection in Application 2011516385, mailed Jul. 9, 2013, 6 pgs. |
Notice of Allowance mailed Aug. 20, 2012, in co-pending U.S. Appl. No. 12/117,040, 14 pgs. |
Notice of Allowance mailed Aug. 29, 2012, in co-pending U.S. Appl. No. 12/111,174, 27 pgs. |
Office Action mailed Sep. 27, 2012, in co-pending U.S. Appl. No. 12/276,874, 22 pgs. |
Notice of Allowance mailed Oct. 22, 2012, in co-pending U.S. Appl. No. 13/079,605, 9 pgs. |
Office Action mailed Oct. 11, 2012, in co-pending U.S. Appl. No. 13/539,473, 23 pgs. |
Office Action mailed Oct. 31, 2012, in co-pending U.S. Appl. No. 12/117,025, 11 pgs. |
Notice of Allowance mailed Aug. 6, 2012, in co-pending U.S. Appl. No. 12/432,817, 5 pgs. |
Australian Office Action in Application 2008324973, mailed Jul. 4, 2012, 3 pgs. |
Chinese 1st Office Action in Application 201080019470.2, mailed Aug. 31, 2012, 8 pgs. |
Australian Notice of Acceptance in Application 2008324973, mailed Aug. 22, 2012. 3 pgs. |
Chinese 3rd Office Action in Application 200880115943.1, mailed Aug. 30, 2012, 6 pgs. |
Taiwanese Notice of Allowance in Application 97142418, mailed Aug. 16, 2012, 4 pgs. |
Australian Office Action in Application 2008335565, mailed Aug. 30, 2001, 3 pgs. |
Chinese 2nd Office Action in Application 200880119647.9, mailed Aug. 13, 2012, 6 pgs. |
Chinese 2nd Office Action in Application 200880121295.0, mailed Oct. 23, 2012, 10pgs. |
Chinese 1st Office Action in Application 200980116872.1, mailed Oct. 9, 2012, 14 pgs. |
Australian Notice of Allowance in Application 2008335565, mailed Sep. 18, 2012, 3 pgs. |
Notice of Allowance mailed Jun. 21, 2012, U.S. Appl. No. 12/044,744, 8 pgs. |
Notice of Allowance mailed Jun. 28, 2012, in co-pending U.S. Appl. No. 13/079,605, 9 pgs. |
Notice of Allowance mailed Jun. 21, 2012, in co-pending U.S. Appl. No. 12/117,040, 9 pgs. |
“Codeville,” http://codeville.org/, Date Retrieved Oct. 9, 2007, 2 pgs. |
“File Locks-GNU Emacs Lisp Reference Manual”; www.gnu.org/software/emacs/elisp/html—node/File-Locks.html; Mar. 28, 2006; 2 pages. |
“Google, Google Docs & Spreadsheets Tour” downloaded from http://www.google.com/google-d-s/intl/en/tour2.html on Nov. 9, 2007, 1 page. |
“Status of Software Reuse 577,” http://www.plex86.org/Computer—Folklore/Status-of-Software-Reuse-577.html, Date Retrieved Oct. 9, 2007, 2 pgs. |
“Perforce software Delivers Improved Performance to its Fast Software Configuration Management System,” Perforce Software, Jul. 9, 2007, 2 pages. |
“Technical Overview,” Apache CouchDB, The Apache Software Foundation, © 2008, 7 pages. |
Adkins et al., “GSS Collaboration in Document Development: Using Group Writer to Improve the Process”, Proceedings of the 32nd Hawaii International Conference on System Sciences, 1999, 11 pages. |
Adler et al., “Evaluating and Implementing a Collaborative Office Document System,” 2005, http://www.sce.carleton.ca/faculty/adler/publications/2005/adler-nash-noel-2005-Collab-Office.pdf, pp. 1-18. |
Appleton, Brad, “ClearView: Associating Attributes and Notes With a View”, ClearCase International User's Group Conference, Sep. 1996, 16 pgs. |
Badouel, Eric et al., “Merging Hierarchically-Structured Documents in Workflow Systems”, Electronic Notes in Theoretical Computer Science 203, (2008), 3-24. |
Bellagio, David et al., “Software Configuration Management Strategies and IBM Rational ClearCase a Practical Introduction, Second Edition” In: “Software Configuration Management Strategies and IBM Rational ClearCase a Practical Introduction, Second Edition”, May 23, 2005 (May 23, 2005), IBM Press, XP55009093, ISBN: 978-0-32-120019-8 pp. 173-178. |
Byfield, Bruce, “Ooo Off the Wall: That's Your Version—Document Control in Ooo Writer”, published on Linux Journal, Mar. 7, 2006, 6 pgs. |
Chinese 1st Office Action in Application 200880121295.0, mailed Jan. 18, 2012, 6 pgs. |
Chinese 1st Office Action in Application 200980115758.7, mailed Mar. 28, 2012, 10 pgs. |
Chinese 2nd Office Action in Application 200880115943.1, mailed Jun. 1, 2012, 7 pgs. |
Chinese Office Action in Application 200880115943.1, mailed Oct. 25, 2011, 13 pgs. |
Chinese Office Action in Application 200880119647.9, mailed Nov. 24, 2011, 7 pgs. |
Citro et al., “Conflict Management for Real-Time Collaborative Editing in Mobile Replicated Architectures,” School of Computer Science and Information Technology, RMIT University, Melbourne, Victoria, Australia, Australian Computer Society, Inc. © 2007, http://www.crpit.com/confpapers/CRPITV62Citro.pdf, pp. 1-10. |
Dekeyser, Stijin, et al., “Path Locks for XML Document Collaboration”, University of Antwerp, Dec. 12, 2002, pp. 105-114. |
Ellis et al., “Groupware—Some Issues and Experiences”, vol. 34, No. 1, Jan. 1, 1991, pp. 38-58. |
European Extended Search Report in EP Application 09739350.8, mailed Nov. 9, 2011, 10 pgs. |
European Extended Search Report in EP Application 09767155.6, mailed Mar. 26, 2012, 10 pgs. |
Feise, Joachim; “A Survey of Distributed Hypermedia Systems,” ISR Institute for Software Research, University of California, Irvine, Apr. 2005, 39 pages. |
Galli, R., “Journal File Systems in Linux,” http://bulma.net/impresion.phtml?nIdNoticia=1154, Jan. 24, 2002, 15 pgs. |
Google, “Share and Collaborate in Real Time,” 2008, http://www.google.com/google-d-s/intl/en/tour2.html, 1 pg. |
Green, Bob, “Converting Qedit to the Client/Server Model”, http://www.robelle.com/library/papers/client-server/, Copyright 2004, 14 pages. |
Hawke et al., “Collaborative Authoring of Hypermedia Documents,” 1993, http://www/pi6.fernuni-hagen.de/publ/MT-93.pdf, pp. 41-58. |
Hebsgarrd, Poul J; Process Driven Document Management™, Version 6.1, Feb. 2007, http://www.brain-technology.com/upload/file—vk306c6tr779p9gntgho—16467.pdf, pp. 1-13. |
Heckel, Paul; “A Technique for Isolating Differences between Files” copyright 1978, 5 pages. |
Ignat et al., “Extending Real-Time Collaborative Editing Systems with Asynchronous Communication,” Institute for Information Systems, ETH Zurich, (at least as early as Oct. 4, 2007), http://www.inf.ethz.ch/personal/ignat/Publications/cscwd—04.pdf, pp. 1-6. |
Immedius, Inc., “S1000Dmanager v 3.0”, Comprehensive S1000D Project Setup and Management Support, found online on Aug. 22, 2008 at: http://www.immediuss1000d.com/c—manager/S1Dmanager—overview.html, 6 pgs. |
International Preliminary Report and Written Opinion for PCT/US/2008/083069 / MS 321999.02 mailed Jun. 24, 2010, 6 pages. |
International Search Report and Written Opinion for PCT/US2008/081456 / MS 321449.02 mailed Mar. 31, 2009, 12 pages. |
International Search Report and Written Opinion for PCT/US2008/083862 / MS 321998.02 mailed Mar. 31, 2009, 11 pages. |
International Search Report and Written Opinion for PCT/US2009/037920 mailed Nov. 30, 2009, 11 pages. |
International Search Report and Written Opinion for PCT/US2009/039316 / MS 323384.02 mailed Jan. 18, 2010, 11 pages. |
International Search Report and Written Opinion for PCT/US2009/045558 mailed Nov. 30, 2009, 11 pages. |
Koch, Michael, “Design Issues and Model for a Distributed Multi-User Editor” (pp. 1-21), from Computer Supported Cooperative Work, An International Journal, 3(3-4), 19995, pp. 359-378. |
La Fontaine, Robin, Monsell EDM Ltd., Merging XMLFiles: a new approach providing intelligent merge of XML data sets, Presented at XML Europe 2002, http://www.deltaxml.com/dxml/93/version/default/part/AttachmentData/data/merging-xml-files.pdf, 21 pgs. |
Lu et al., “Merging Retrieval Results in Hierarchical Peer-to-Peer Networks” SIGIR '04, Jul. 25-29, 2004, 2 pages. |
McKechan et al., “Design Considerations for Creditor: A Collaborative Report Writing Editor,” accessed May 16, 2008, http://userpages.umbc.edu/˜jcampbel/Group01/McKechan—paper—iwces3.pdf, 10 pgs. |
Mendoza et al., “A Flexible Distribution Service for a Co-authoring Environment on the Web,” IEEE Computer Society, Proceedings of Sixth Mexican International Conference on Computer Science (ENC '05) © 2005, 8 pages. |
Microsoft Corporation, Compare and Merge Mechanisms, © 2007, http://msdn2.microsoft.com/en-us/library/ek8hk7e2(VS.80,d=printer).aspx, 1 page. |
Miller et al.; “Interactive Simultaneous Editing of Multiple Text Regions”; www.co-ode.org/resources/papers/k-cap2007-seidenberg.pdf; Jun. 2001; 15 pages. |
Ohst et al., “Difference Tools for Analysis and Design Documents” copyright 2003, 10 pages. |
Pacull et al., “Duplex: A Distributed Collaborative Editing Environment in Large Scale” Proceedings of the Conference on Computer Supported Cooperative Work, Oct. 22-26, 1994, Chapel Hill, NC, USA. ACM, 1994; pp. 165-173. |
PCT International Search Report and Written Opinion in Application PCT/US2010/032309, mailed Dec. 1, 2010, 9 pgs. |
PCT International Search Report for PCT/US2009/062364 dated May 31, 2010, 11 pgs. |
Preston et al., “Synchronous Editing via Web Services: Combining Heterogeneous Client and Server Technologies,” Department of Computer Science, Georgia State University, Atlanta, Georgia, CSCW 2006, Nov. 4-8, 2006, Banff, Alberta, Canada, http://cims.clayton.edu/jpreston/PhD/Research/Preston%20-%20CSCW%20Demo%20Extended%20Abstract.pdf, pp. 1-2. |
Russian Notice of Allowance in Application 2010123793, mailed Apr. 13, 2012, 7 pgs. |
Samiei et al., “EzMail: Using Information Vizualization Techniques to Help Manage Email”, Proceedings of the 8th National Conference on Information Vizualization, 2004, 6 pgs. |
Seidenberg et al; “A Methodology for Asynchronous MultiUser Editing of Semantic Web Ontologies”; www.xmpp.org/extensions/xep-0058.html; Mar. 28, 2006; 8 pages. |
Shchepin, “XEP-0058: Multi-User Text Editing”, http://groups.csail.mit.edu/uid/projects/simuledit/usenix01.pdf, Oct. 9, 2007, 5 pages. |
Shepler et al., “Network File 1-15 Systems (NFS),” Version 4, Apr. 1, 2003, retrieved from http://rsync.tools.ietf.org/html/rfc3530 on Mar. 7, 2012, 275 pgs. |
Shiro Sakata, “Development and Evaluation on an in-house multi-media desktop conference system”, Apr. 1990, IEEE Journal on selected areas in communications, vol. 8. |
Synchronous Collaborative Text Document Editing Online: MoonEdit, reviewed Sep. 13, 2007, http://www.masternewmedia.org/news/2005/02/20/synchronous—collaborative—text—document-editing.htm, pp. 1-4. |
Taiwan Search Report and Office Action in Application 97142418, mailed Feb. 21, 2012, 13 pgs. |
Tanebaum, Andrew S., “Moderne Betriebssysteme”, 2003 Pearson, pp. 786-787. |
Tichy, Walter F., RCS—A System for Version Control, Jan. 3, 1991, http://www.svlug.org/teams/rcs.pdf, 20 pgs. |
US Final Office Action for U.S. Appl. No. 11/938,082, mailed Jun. 29, 2010, 30 pgs. |
US Final Office Action for U.S. Appl. No. 11/957,010, mailed Aug. 18, 2010, 26 pgs. |
US Final Office Action for U.S. Appl. No. 12/044,744, mailed Nov. 22, 2010, 14 pgs. |
US Final Office Action for U.S. Appl. No. 12/145,536, mailed Apr. 26, 2011, 32 pgs. |
US Non-Final Office Action for U.S. Appl. No. 11/938,082, mailed Dec. 28, 2009, 20 pgs. |
US Non-Final Office Action for U.S. Appl. No. 11/951,973, mailed Jan. 19, 2011, 11 pages. |
US Non-Final Office Action for U.S. Appl. No. 11/957,010, mailed Mar. 18, 2010, 24 pgs. |
US Non-Final Office Action for U.S. Appl. No. 12/044,744, mailed Jul. 26, 2010, 15 pgs. |
US Non-Final Office Action for U.S. Appl. No. 12/044,744, mailed Mar. 25, 2011, 16 pgs. |
US Non-Final Office Action for U.S. Appl. No. 12/111,174, mailed Jun. 8, 2011, 18 pgs. |
US Non-Final Office Action for U.S. Appl. No. 12/117,025, mailed Sep. 21, 2010, 13 pgs. |
US Non-Final Office Action for U.S. Appl. No. 12/145,536, mailed Nov. 8, 2010, 28 pgs. |
US Notice of Allowance for U.S. Appl. No. 11/938,082, mailed Jan. 4, 2011, 18 pgs. |
US Notice of Allowance for U.S. Appl. No. 12/117,025, mailed Dec. 28, 2011, 11 pgs. |
US Notice of Allowance for U.S. Appl. No. 12/117,025, mailed Apr. 14, 2011, 10 pgs. |
U.S. Appl. No. 11/951,973, Notice of Allowance mailed Jun. 21, 2011, 9 pgs. |
U.S. Appl. No. 11/957,010, Office Action mailed Jan. 27, 2012, 25 pgs. |
U.S. Appl. No. 11/957,010, Office Action mailed Aug. 17, 2011, 26 pgs. |
U.S. Appl. No. 12/044,744, Final Office Action mailed Aug. 30, 2011, 17 pgs. |
U.S. Appl. No. 12/044,744, Notice of Allowance mailed May 7, 2012, 12 pgs. |
U.S. Appl. No. 12/044,744, Office Action mailed Dec. 30, 2011, 17 pgs. |
U.S. Appl. No. 12/111,174, Notice of Allowance mailed Apr. 12, 2012, 11 pgs. |
U.S. Appl. No. 12/111,174, Office Action mailed Nov. 21, 2011, 20 pgs. |
U.S. Appl. No. 12/117,025, Notice of Allowance mailed Sep. 15, 2011, 9 pgs. |
U.S. Appl. No. 12/117,040, Notice of Allowance mailed Mar. 29, 2012, 11 pgs. |
U.S. Appl. No. 12/117,040, Office Action mailed Oct. 4, 2011, 15 pgs. |
U.S. Appl. No. 12/145,536, Office Action mailed Mar. 12, 2012, 52 pgs. |
U.S. Appl. No. 12/276,874, Final Office Action mailed Aug. 3, 2011, 15 pgs. |
U.S. Appl. No. 12/276,874, Office Action mailed Oct. 26, 2011, 18 pgs. |
U.S. Appl. No. 12/276,874, Office Action mailed Feb. 22, 2011, 15 pgs. |
U.S. Appl. No. 12/276,874, Office Action mailed Apr. 26, 2012, 20 pgs. |
U.S. Appl. No. 12/432,817, Notice of Allowance mailed May 2, 2012, 6 pgs. |
U.S. Appl. No. 12/432,817, Office Action mailed Jan. 25, 2012, 27 pgs. |
U.S. Appl. No. 12/432,817, Office Action mailed Sep. 12, 2011, 25 pgs. |
U.S. Appl. No. 13/079,605, Notice of Allowance mailed Apr. 20, 2012, 9 pgs. |
U.S. Appl. No. 13/079,605, Office Action mailed Dec. 5, 2011, 31 pgs. |
U.S. Appl. No. 12/117,025, Notice of Allowance mailed Jul. 21, 2011, 10 pgs. |
U.S. Appl. No. 12/145,536, Office Action mailed Aug. 1, 2011, 37 pgs. |
U.S. Appl. No. 11/938,082, filed Nov. 9, 2007, Confirmation No. 3133. |
U.S. Appl. No. 11/951,973, filed Dec. 6, 2007, Confirmation No. 9364. |
U.S. Appl. No. 11/957,010, filed Dec. 14, 2007, Confirmation No. 8535. |
U.S. Appl. No. 12/044,744, filed Mar. 7, 2008, Confirmation No. 7862. |
U.S. Appl. No. 12/111,174, filed Apr. 28, 2008, Confirmation No. 6839. |
U.S. Appl. No. 12/117,025, filed May 8, 2008, Confirmation No. 8234. |
U.S. Appl. No. 12/117,040, filed May 8, 2008, Confirmation No. 8262. |
U.S. Appl. No. 12/145,536, filed Jun. 25, 2008, Confirmation No. 3462. |
Venolia, Gina et al., “Understanding Sequence and Reply Relationships Within Email Conversations: A Mixed-Model Vizualization”, Apr. 2003, Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, Ft. Lauderdale, FL, USA, Apr. 5-10, 2003, 8 pgs. |
Wilde, Erik, “Multi-User Multimedia Editing with the MultimETH System,” Swiss Federal Institute of Technology, CH 8092, Zurich, (at least as early as Oct. 10, 2007), http://dret.net/netdret/docs/wilde-tikrep18.pdf, pp. 1-9. |
Williams, Tim, “Version Control on the Cheap: A User-Friendly, Cost-Effective Revision Control System for SAS”, 10 pgs., no date. |
ZEND Corporation, the PHP Company, “Team Development With Zend Studio for Eclipse”, White Paper, Jan. 2008, 17 pgs. |
U.S. Appl. No. 13/539,473, Office Action mailed Oct. 25, 2013, 17 pgs. |
U.S. Appl. No. 13/495,659, Office Action mailed Oct. 25, 2013, 8 pgs. |
Taiwan Notice of Allowance in Application 99108780, mailed Oct. 21, 2013, 4 pgs. |
Japanese Notice of Rejection in Application 2012-508556, mailed Oct. 21, 2013, 7 pgs. |
U.S. Appl. No. 14/534,384, Amendment and Response filed Apr. 5, 2016, 14 pgs. |
European Communication in Application 08848473.8, mailed Mar. 8, 2016, 1 page. |
Taiwan Office Action and Search Report in Application 103126243, mailed Mar. 1, 2016, 5 pgs. |
Canadian Office Action in Application 2718106, mailed Mar. 17, 2016, 5 pgs. |
Malaysian Notice of Allowance in Application PI2010004653, mailed Nov. 30, 2015, 2 pgs. |
Canadian Office Action in Application 2724679, mailed Mar. 23, 2016, 5 pgs. |
European Notice of Allowance in Application 09770643.6, mailed Feb. 22, 2016, 8 pgs. |
Malaysian Adverse Report in Application PI2011001841, mailed Mar. 15, 2016, 3 pgs. |
Canadian Notice of Allowance in Application 2756863, mailed Mar. 16, 2016, 1 page. |
Korean Office Action in Application 1020117025682, mailed Mar. 14, 2016, 5 pgs. |
Chinese Notice on Reexamination in Application 200980147769.3, mailed Apr. 5, 2016, 10 pgs. |
Canadian Office Action in Application 2,666,340, mailed Apr. 21, 2016, 13 pgs. |
Korean Final Rejection in Application 10-2010-7029113, mailed Mar. 31, 2016, 12 pgs. |
Israeli Office Action in Patent Application No. 208040, mailed May 31, 2015, 2 pgs. |
U.S. Appl. No. 14/534,384, Office Action mailed Jan. 5, 2016, 20 pgs. |
U.S. Appl. No. 13/859,631, Office Action mailed Dec. 8, 2015, 34 pgs. |
Taiwanese Notice of Allowance in Application 103135218, mailed Nov. 30, 2015, 4 pgs. |
Malaysian Notice of Allowance in Application PI 2010005579, mailed Oct. 30, 2015, 2 pgs. |
Korean Notice of Preliminary Rejection in Application 1020157025969, mailed Nov. 17, 2015, 7 pgs. |
Korean Notice of Preliminary Rejection in Application 1020157025970, mailed Nov. 11, 2015, 11 pgs. |
Brinck et al., “A Collaborative Medium for the Support if Conversational Props”, Nov. 1992 CSCW 92 Proceedings, pp. 171-178. |
Farella et al., “Multi-Client Cooperation and Wireless Pda Interaction in Immersive Virtual Environment”, http://www-micrel.deis.unibo.it/˜farella/doc/Farella115def.pdf—(Publicly known at least as early as Aug. 2006). |
Geyer et al., “A Team Collaboration Space Supporting Capture and Access of Virtual Meetings”, Proceedings of the 2001 International ACM Siggroup Conference on Supporting Group Work, ACM, pp. 188-196. |
http://www.geimaginationcubed.com, 5 pages (Publicly known at least as early as Mar. 2005). |
Kolland et al., “Information Sharing in Collaborative Environments, Enabling Technologies: Infrastructure for Collaborative Enterprises”, 1994, pp. 140-154. |
Leung et al., “Creating a multiuser 3-D virtual environment”, Date: May 2001, On pp. 9-16, vol. 18, Issue: 3, http://ieeexplore.ieee.org/xpl/abs—free.jsp?arNumber=924884. |
Roseman et al., “TeamRooms: Network Places for Collaboration, Proceeding of the 1996 ACM Conference on Computer Supported Cooperative Work”, pp. 325-333. |
Roussel, Nicolas, “Mediascape: a Web-based Mediaspace”, http://citeseer.ist.psu.edu/cache/papers/cs/25847/http:zSzzSzwww-ihm.lri.frzSzzCz7erousselzSzpublicationszSzmultimedia.pdf/roussel99mediascape.pdf—(Publicly known at least as early as Aug. 2006). |
PCT International Search Report in International Application No. PCT/US2007/083024, mailed Apr. 29, 2008, 11 pgs. |
Chinese First Office Action for Application No. 200780042038.3 mailed Jun. 23, 2010, 20 pgs. |
Chinese Second Office Action for Application No. 200780042038.3 mailed Apr. 28, 2011, 10 pgs. |
Australian Office Action for Application No. 2007324103 mailed May 27, 2011, 2 pgs. |
Chinese Notice of Allowance for Application No. 200780042038.3 mailed Aug. 25, 2011, 4 pgs. |
Australian Notice of Acceptance in Application No. 2007324103 mailed Sep. 14, 2011, 3 pgs. |
Russian Notice of Allowance for Application No. 2009117840/08 mailed Feb. 7, 2012, 22 pgs. |
Japanese Office Action for Application No. 2009-537263 mailed Feb. 21, 2012, 8 pgs. |
Japanese Notice of Allowance for Application No. 2009-537263 mailed Jun. 22, 2012, 6 pgs. |
European Search Report for Application No. PCT/US2007083024 mailed Mar. 28, 2013, 8 pgs. |
Korean Notice of Preliminary Rejection for Application No. 10-2009-7010393 mailed Feb. 28, 2014, 16 pgs. |
Korean Notice of Allowance received for Patent Application No. 10-2009-7010393, mailed May 20, 2014, 2 pages. (w/o English Translation). |
Canadian Office Action Issued in Patent Application No. 2666340, Mailed Nov. 28, 2014, 5 pages. |
Canadian Office Action Issued in Patent Application No. 2666340, mailed Sep. 14, 2015, 6 pages. |
U.S. Appl. No. 11/599,599, Office Action mailed Jun. 11, 2009, 15 pgs. |
U.S. Appl. No. 11/599,599, Amendment and Response filed Aug. 27, 2009, 10 pgs. |
U.S. Appl. No. 11/599,599, Notice of Allowance mailed Dec. 17, 2009, 13 pgs. |
U.S. Appl. No. 12/713,582, Office Action mailed Dec. 24, 2013, 17 pgs. |
U.S. Appl. No. 12/713,582, Amendment and Response mailed Mar. 24, 2014, 10 pgs. |
U.S. Appl. No. 12/713,582, Notice of Allowance mailed Feb. 13, 2015, 17 pgs. |
European Communication in Application 07863665.1, mailed Apr. 16, 2013, 1 page. |
Malaysian Notice of Allowance in Application PI 20091514, mailed Oct. 30, 2007, 3 pgs. |
Notice of Allowance Issued in Korean Patent Application No. 10-2010-7029113, Mailed Date: Dec. 31, 2015, 2 Pages. (W/O English Translation). |
U.S. Appl. No. 14/474,481, Office Action mailed Jan. 15, 2016, 25 pgs. |
European extended Search Report in Application 08848473.8, mailed Feb. 18, 2016, 11 pgs. |
Ruixuan Li et al., “P2P-based Locking in Real-Time Collaborative Editing Systems”, Computer Supported ooperative Work in Design, 2007, CSCWD, 11th Int'l. Conf. on IEEE, PI, Apr. 1, 2007, pp. 24-29. |
Malaysian Notice of Allowance in Application PI 2010001887, mailed Jan. 15, 2016, 2 pgs. |
Korean Office Action in Application 10-2011-7011228, mailed Dec. 31, 2015, 4 pgs. |
U.S. Appl. No. 14/534,384, Notice of Allowance mailed May 20, 2016, 11 pgs. |
Korean Final Rejection in Application 10-2015-7025970, mailed May 23, 2016, 5 pgs. |
U.S. Appl. No. 13/859,631, Amendment and Response filed Jun. 3, 2016, 15 pgs. |
Korean Notice of Preliminary Rejection in Application 10-2015-7019912, mailed Mar. 31, 2016, 10 pgs. |
Korean Office Action in Application 10-2015-7025969, mailed Jun. 29, 2016, 13 pgs. |
U.S. Appl. No. 14/474,481, Amendment and Response filed Jun. 15, 2016, 18 pgs. |
U.S. Appl. No. 13/859,631, Office Action mailed Jun. 30, 2016, 24 pgs. |
U.S. Appl. No. 14/474,481, Office Action mailed Aug. 12, 2016, 28 pgs. |
U.S. Appl. No. 14/534,384, Amendment after Allowance filed Aug. 4, 2016, 8 pgs. |
European Office Action in Application 08848473.8, mailed Sep. 2, 2016, 9 pgs. |
Taiwan Notice of Allowance in Application 103126243, mailed Jul. 7, 2016, 4 pgs. |
Korean Office Action in Application 1020107012220, mailed Sep. 13, 2016, 4 pgs. |
Chinese Decision on Reexamination in Application 200980147769.3, mailed Sep. 30, 2016, 18 pgs. |
Korean Notice of Preliminary Rejection in Application 10-2015-7019912, mailed Oct. 20, 2016, 13 pgs. |
U.S. Appl. No. 14/474,481, Amendment and Response filed Dec. 12, 2016, 15 pgs. |
U.S. Appl. No. 13/859,631, Amendment and Response filed Nov. 30, 2016, 14 pgs. |
European Extended Search Report in Application 09827960.7, mailed Dec. 13, 2016, 8 pgs. |
Anonymous, “A.nnotate: Annotate PDF, Word, Excel and Web Pages Online”, May 20, 2008, retrieved from the Internet at: http://www.makeuseof.com/tag/annotate/, retrieved on Nov. 14, 2016, 4 pgs. |
Murray, Katherine et al., “Microsoft Office Word 2007 inside out”, Jun. 20, 2007, retrieved from the Internet at: https://www.microsoftpressstore.com/, retrieved on Nov. 14, 2016, 40 pgs. |
Norwegian Office Action and Search Report in Application 20091461, mailed Nov. 30, 2016, 5 pgs. |
Korean Office Action in Application 10-2015-7025969, mailed Jan. 31, 2017, 8 pgs. |
Canadian Office Action in Application 2739621, mailed Jan. 5, 2017, 7 pgs. |
Israel Office Action in Patent Application 212007, dated Nov. 15, 2016, 6 Pages, (with English translation). |
U.S. Appl. No. 14/474,481, Office Action dated Mar. 9, 2017, 28 pgs. |
Canadian Office Action in Application 2718106, dated Mar. 3, 2017, 4 pgs. |
Korean Office Action in Application 10-2015-7019912, dated Feb. 20, 2017, 6 pgs. |
Indian Office Action in Application 02868/CHENP/2009, dated Feb. 27, 2017, 8 pgs. |
Canadian Office Action in Application 2724679, dated Mar. 7, 2017, 5 pages. |
Malaysian Notice of Allowance in Application PI 2010002084, dated Feb. 15, 2017, 2 pgs. |
Indian Office Action in Application 3034/CHENP/2010, dated Mar. 31, 2017, 7 pgs. |
Canadian Notice of Allowance Issued in Patent Application No. 2666340, dated Mar. 28, 2017, 1 page. |
U.S. Appl. No. 13/859,361, Office Action dated Apr. 7, 2017, 27 pgs. |
U.S. Appl. No. 13/859,631, Office Action dated Apr. 7, 2017, 27 pgs. |
U.S. Appl. No. 15/248,158, Office Action dated Jun. 6, 2017, 20 pages. |
European Notice of Allowance in Application 08848473.8, dated Jun. 6, 2017, 8 pgs. |
Korean Office Action in Application 10-2015-7025969, dated May 8, 2017, 8 pgs. |
Korean Office Action in Application 10-2017-7006064, dated May 19, 2017, 18 pgs. |
Korean Notice of Final Rejection in Application 10-2015-7019912, dated Jun. 20, 2017, 5 pages. |
U.S. Appl. No. 14/683,394, Office Action dated Jul. 21, 2017, 13 pgs. |
U.S. Appl. No. 14/711,300, Office Action dated Jun. 26, 2017, 25 pgs. |
Chinese 1st Office Action in Application 200980124935.8, dated Oct. 30, 2012, 10 pgs. |
European Examination Report in Application 09739350.8, dated Sep. 25, 2012, 7 pgs. |
Tanenbaum, Andrew S., “Modern Operating Systems”, 2nd Edition, Prentice Hall, New Jersey, 2001, pp. 735-737. |
U.S. Appl. No. 12/111,174, Notice of Allowance dated Nov. 19, 2012, 2 pgs. |
U.S. Appl. No. 13/079,605, Notice of Allowance dated Nov. 19, 2012, 2 pgs. |
U.S. Appl. No. 13/495,659, Office Action dated Nov. 21, 2012, 7 pgs. |
U.S. Appl. No. 12/117,040, Notice of Allowance dated Dec. 6, 2012, 14 pgs. |
U.S. Appl. No. 13/079,605, Notice of Allowance dated Dec. 5, 2012, 2 pgs. |
U.S. Appl. No. 12/111,174, Notice of Allowance dated Dec. 4, 2012, 2 pgs. |
U.S. Appl. No. 12/145,536, Notice of Allowance dated Nov. 23, 2012, 18 pgs. |
Russian Notice of Allowance in Application 2010122968, dated Nov. 6, 2012, 27 pgs. |
Australian Office Action in Application 2008338826, dated Oct. 24, 2012, 3 pgs. |
Chinese 2nd Office Action in Application 200980115758.7, dated Dec. 5, 2012, 7 pgs. |
Chinese 1st Office Action in Application 200980147769.3, dated Jan. 29, 2012, 12 pgs. |
Japanese Notice of Rejection in Application 2011-507506, dated May 21, 2013, 6 pgs. |
Chinese 2nd Office Action in Application 200980116872.1, dated Jun. 18, 2013, 6 pgs. |
Japanese Notice of Rejection in Application 2011508530, dated Jun. 18, 2013, 6 pgs. |
Australian Notice of Allowance in Application 2008338826, dated Dec. 5, 2012, 2 pgs. |
Japanese Notice of Rejection dated Dec. 28, 2012, in Application No. 2010-533160, 8 pages. |
Chinese Notice on the Second Office Action dated Mar. 1, 2013, in Application No. 201080019470.2, 6 pages. |
Chinese Notice of Allowance in Application 200880115943.1, dated Jan. 15, 2013, 4 pgs. |
U.S. Appl. No. 13/539,473, Office Action dated Apr. 2, 2013, 26 pgs. |
Chinese 2nd Office Action in Application 200980124935.8, dated Jun. 19, 2013, 7 pgs. |
U.S. Appl. No. 12/276,874, Office Action dated Mar. 28, 2013, 24 pgs. |
Chinese Notice of Allowance in Application 200880119647.9, dated Feb. 28, 2013, 4 pgs. |
Japanese Notice of Rejection in Application 2010-536967, dated Feb. 8, 2013, 6 pgs. |
Chinese 3rd Office Action in Application 200880121295.0, dated Apr. 9, 2013, 9 pgs. |
Japanese Notice of Allowance in Application 2010-538018, dated Mar. 15, 2013, 6 pgs. |
Russian Notice of Allowance in Application 2010144042, dated Feb. 27, 2013, 7 pgs. |
Lloyd, Zach et al., “Collaboration Goes One Level Deeper”, obtained online at: http://googledocs.blogspot.in/2008/03/collaboration-goes-one-level-deeper.html, published Mar. 19, 2008, 2 pgs. |
“Emerging from a Highly Praised Private Beta, Zoho Notebook is a One-Stop Destination for Accessing and Sharing Content—Creation, Aggregation and Collaboration”, obtained online at: http://www.zoho.com/news/zoho—notebook—public—beta.html, published May 22, 2007, 3 pgs. |
“Apple Introduces iWork'08”, obtained online at: https://www.apple.com/pr/library/2007/08/07Apple-Introduces-iWork-08.html, published Aug. 7, 2007, 2 pgs. |
Russian Notice of Allowance in Application 2010153320, dated Apr. 17, 2013, 23 pgs. |
Chinese 2nd Office Action in Application 200980147769.3, dated Jun. 7, 2013, 10 pgs. |
Chinese 3rd Office Action in Application 201080019470.2, dated May 31, 2013, 6 pgs. |
U.S. Appl. No. 13/495,659, Office Action dated Jul. 5, 2013, 8 pgs. |
Taiwanese Office Action and Search Report in Application 099108780, dated Jun. 19, 2013, 5 pgs. |
Chinese Notice of Allowance in Application 200980115758.7, dated Jun. 6, 2013, 4 pgs. |
Number | Date | Country | |
---|---|---|---|
20130013997 A1 | Jan 2013 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12111174 | Apr 2008 | US |
Child | 13544310 | US |