Markup system for shared HTML documents
First Claim
Patent Images
1. A Web-based collaboration system for enabling one or more group participants to annotate a shared hyper-text document utilizing conventional Web browsers, the system comprising:
- a markup system executing inside a conventional Web browser'"'"'s virtual machine of each of the one or more group participants;
the markup system including a mechanism for capturing markup events associated with annotations applied to the shared hyper-text document by a group participant, a mechanism for transmitting to other of the one or more group participants the captured markup events, a mechanism for receiving from the other of the one or more group participants markup events associated with annotations applied to the shared hyper-text document, a mechanism for generating corresponding dynamic hyper-text components in response to the markup events captured or received and a mechanism for adding the dynamic hyper-text components generated in response to the markup events captured or received to the shared hyper-text document, wherein the annotations are presented directly on the shared hyper-text document by the conventional Web browsers of the one or more group participants.
1 Assignment
0 Petitions
Accused Products
Abstract
A shared markup system and a method are provided for supporting Web co-browsing. Based on the hyper-text markup language (HTML), the markup system is interoperable across different platforms and Web browsers and provides for online annotation, of shared HTML documents, directly within the browser'"'"'s windows. The annotations created by the markup system are realized using HTML components that are composed dynamically. Synchronization and control of the browser'"'"'s environment are also provided to achieve uniform participants'"'"' views.
-
Citations
38 Claims
-
1. A Web-based collaboration system for enabling one or more group participants to annotate a shared hyper-text document utilizing conventional Web browsers, the system comprising:
-
a markup system executing inside a conventional Web browser'"'"'s virtual machine of each of the one or more group participants;
the markup system including a mechanism for capturing markup events associated with annotations applied to the shared hyper-text document by a group participant, a mechanism for transmitting to other of the one or more group participants the captured markup events, a mechanism for receiving from the other of the one or more group participants markup events associated with annotations applied to the shared hyper-text document, a mechanism for generating corresponding dynamic hyper-text components in response to the markup events captured or received and a mechanism for adding the dynamic hyper-text components generated in response to the markup events captured or received to the shared hyper-text document, wherein the annotations are presented directly on the shared hyper-text document by the conventional Web browsers of the one or more group participants. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
a markup agent associated with a frame within the shared hyper-text document, the markup agent responsible for capturing markup events within the frame and composing corresponding dynamic hyper-text components for overlaying directly on the shared hyper-text document, the markup agent further generating messages corresponding to the markup events to be communicated to the one or more group participants; and
a markup manager for receiving the messages from the markup agent and identifying the frame corresponding to the markup agent, wherein the markup manager communicates the messages including a frame identity associated with the markup agent to the collaboration server for broadcasting to the one or more group participants.
-
-
8. The Web-based collaboration system as claimed in claim 7, wherein the markup manager further includes a mechanism for receiving markup event messages from the collaboration server, the collaboration server having received the messages from remote Web browsers of the one or more group participants in the Web collaboration system, and communicating the messages to markup agents associated with frames identified in the messages, wherein the markup agents parse the messages and generate corresponding dynamic hyper-text components for overlaying on the shared hyper-text document.
-
9. The Web-based collaboration system as claimed in claim 7, wherein the markup agent further identifies the frame in which the markup agent is running by employing a recursive depth first search and includes the frame identity with the message generated in response to the markup events.
-
10. The Web-based collaboration system as claimed in claim 3, wherein the collaboration server pushes the shared hyper-text document with the group participant annotations to the one or more group participants.
-
11. The Web-based collaboration system as claimed in claim 3, wherein the collaboration server delivers to Web browsers associated with the other of the one or more group participants a location reference of the shared hyper-text document including the group participant annotations, wherein the Web browsers retrieve the shared hyper-text document including the group participant annotations and present the same to the one or more group participants.
-
12. The Web-based collaboration system as claimed in claim 3, wherein the system further comprises a mechanism for synchronizing views of the shared hyper-text document and the annotations presented directly on the shared hyper-text document by the Web browsers of the one or more group participants during the Web collaboration session, wherein the mechanism for synchronizing views sets corresponding environment parameter values equal in all Web browsers participating in the Web collaboration session.
-
13. The Web-based collaboration system as claimed in claim 3, wherein the system further comprises a mechanism for synchronizing views of the shared hyper-text document and the annotations presented directly on the shared hyper-text document by the Web browsers of the one or more group participants during the Web collaboration session, wherein the mechanism for synchronizing views controls a subset of environment parameters associated with an active portion of the shared hyper-text document displayed.
-
14. The Web-based collaboration system as in claimed in claim 3, wherein the collaboration server further buffers a latest shared hyper-text document displayed during the Web collaboration session, and wherein the collaboration server pushes the latest shared hyper-text document to a new participant'"'"'s Web browser.
-
15. The Web-based collaboration system as claimed in claim 1, wherein the markup system is implemented with platform-independent enhanced markup language and scripting language.
-
16. The Web-based collaboration system as claimed in claim 1, wherein the shared hyper-text document includes hyper-text markup language (HTML) document.
-
17. The Web-based collaboration system as claimed in claim 1, wherein the system further comprises virtual planes into which the shared hyper-text document and the dynamic hyper-text components are arranged.
-
18. The Web-based collaboration system as claimed in claim 17, wherein the virtual planes comprise a pointer plane for loading pointer image and its movements in response to the markup events.
-
19. The Web-based collaboration system as claimed in claim 17, wherein the virtual planes further comprise a text and graphics markup plane for enabling the a group participant to annotate with text and graphics images.
-
20. The Web-based collaboration system as claimed in claim 19, wherein the system further includes a hyper-text markup language-based drawing primitive, the drawing primitive including one or more layers, each of the one or more layers representing a pixel, wherein drawing annotations of arbitrary shapes are enabled on the text and graphics markup plane.
-
21. The Web-based collaboration system as claimed in claim 20, wherein each of the one or more layers further includes an opaque background color for representing a pixel color.
-
22. The Web-based collaboration system as claimed in claim 20, wherein the system further supports a free-hand style drawing on the markup plane by interpolating position data between positions of captured mouse movement event to produce continuous shapes.
-
23. The Web-based collaboration system as claimed in claim 17, wherein the virtual planes further comprise a shared document plane for loading the shared hyper-text document.
-
24. The Web-based collaboration system as claimed in claim 17, wherein the virtual planes further comprise a highlight plane for enabling a group participant to highlight a portion of the shared hyper-text document, wherein the markup system creates an opaque layer in the highlight plane on a location overlapping the portion of the shared hyper-text document highlighted by the [user] group participant.
-
25. In a Web-based collaboration system, a method for enabling one or more group participants to annotate a shared hyper-text document utilizing conventional Web browsers, the method comprising:
-
invoking a markup system inside a conventional Web browser'"'"'s virtual machine of each of the one or more group participants;
capturing via the markup system markup events associated with annotations applied to the shared hyper-text document by a group participant and transmitting via the markup system to other of the one or more group participants the captured markup events;
receiving from the group participant at the Web browsers of the other of the one or more group participants via the markup system markup events associated with annotations applied to the shared hyper-text document;
generating via the markup system of the one or more group participants Web browsers corresponding hyper-text components in response to the markup events captured or received;
dynamically adding via the markup system of the one or more group participants Web browsers the hyper-text components generated in response to the markup events captured or received to the shared hyper-text document, wherein the annotations are presented directly on the shared hyper-text document by the conventional Web browsers of the one or more group participants. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
buffering a latest shared hyper-text document displayed during a Web collaboration session; and
pushing the latest shared hyper-text document to a new participant'"'"'s Web browser.
-
-
27. The method according to claim 25, further comprising the steps of:
-
archiving the generated hyper-text components; and
dynamically redisplaying the generated hyper-text components in response to detecting a resize event in the Web browser.
-
-
28. The method according to claim 25, further comprising a step of:
synchronizing views of the shared hyper-text document and the annotations presented directly on the shared hyper-text document by the Web browsers of the one or more group participants during a web collaboration session by controlling environment parameters of the Web browsers associated with the one or more group participants.
-
29. The method according to claim 28, wherein the step of synchronizing includes equalizing corresponding environment parameters utilized by the Web browsers of the one or more group participants.
-
30. The method according to claim 28, wherein the step of synchronizing includes controlling environment parameters associated with active portions of a view displaying the shared hyper-text document.
-
31. The method according to claim 25, further comprising a step of:
providing virtual planes that overlap the shared hyper-text document into which the one or more group participants may enter annotations.
-
32. The method according to claim 31, wherein the step of providing virtual planes includes providing a pointer plane for loading pointer image and tracking its movements in response to the markup events.
-
33. The method according to claim 31, wherein the step of providing virtual planes includes providing a text and graphics markup plane for capturing text and graphics image annotations including free-hand style drawing annotations.
-
34. The method according to claim 33, wherein the step of providing the text and graphics markup plane includes:
-
constructing one or more layers for representing pixels, wherein drawing of arbitrary shapes is enabled on the markup plane.
-
-
35. The method according to claim 34, wherein the step of providing the text and graphics markup plane further includes:
supplying an opaque background color for each of the one or more layers for representing a pixel color.
-
36. The method according to claim 34, wherein the step of providing the text and graphics markup plane further includes:
-
capturing mouse movement events;
interpolating data between positions of the captured mouse movements events; and
producing a continuous shape from the interpolated data, wherein the system is enabled to support the free-hand style drawing annotations.
-
-
37. The method according to claim 31, wherein the step of providing virtual planes includes:
-
providing a highlight plane for enabling the a group participant to highlight the shared hyper-text document; and
creating an opaque layer in the highlight plane on a location overlapping the portion of the shared hyper-text documented where the group participant highlighted.
-
-
38. The method according to claim 31, wherein the step of providing virtual planes includes:
providing a shared document plane for loading the shared hyper-text document.
Specification