throbber
(12) United States Patent
`Eintracht et al.
`
`USOO6687878B1
`(10) Patent No.:
`US 6,687,878 B1
`(45) Date of Patent:
`Feb. 3, 2004
`
`(54) SYNCHRONIZING/UPDATING LOCAL
`CLIENT NOTES WITH ANNOTATIONS
`PREVIOUSLY MADE BY OTHER CLIENTS
`IN ANOTES DATABASE
`(75) Inventors: Zvika Eintracht, Ramat Gan (IL);
`Alexander Ovsiankin, Lod (IL);
`Roman Dementiev, Givatayim (IL);
`O
`1
`O
`Gil Sideman, Raanana (IL)
`(73) Assignee: RealTime Image Ltd., Or Yehuda (IL)
`(*) Notice:
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`(21) Appl. No.: 09/270,255
`(22) Filed:
`Mar 15, 1999
`7
`(51) Int. Cl." .................................................. GO6F 7/00
`
`
`
`4/2000 Abe et al. ................... 707/202
`6,052,695 A
`6,081,291. A * 6/2000 Ludwig, Jr. ..
`... 348/16
`6,081,829. A
`6/2000 Sidana ....................... 709/203
`(List continued on next page.)
`OTHER PUBLICATIONS
`ss
`66
`Trigg et al., “Supporting Collaboration in Notecards”, Pro
`ceedings of the 1986 ACM conference on Computer-Sup
`ported cooperative work, Dec. 1986, pp. 153–162.*
`Primary Examiner Stephen S. Hong
`S.A.C.C.C., "Yad Zaretsk
`y, Agent,
`y
`(57)
`ABSTRACT
`A System for collaborative document annotation whereby
`notes (i.e. annotations) associated with a document, Such as
`an image or text document, are Stored in a notes database on
`a central notes Server. The documents and associated anno
`tations are treated independently from each other whereby
`
`(52) U.S. C. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 715/512; 513/515
`
`Separate data StructureS are created for the documents and
`
`(58) Field of Search ................................. 707/501, 512,
`707/513,515; 715/501.1, 512, 513,515
`
`(56)
`
`2- -- 12
`
`CKOWIZ C a
`
`References Cited
`U.S. PATENT DOCUMENTS
`5,165,012 A 11/1992 Crandall et al. ............ 345/347
`5,220,657 A * 6/1993 Bly et al...
`... 711/152
`5. A 3.
`E. C. tal... 29,3.
`5,671,428 A
`9/1997 Muranaga et al. .......... 345/329
`5,806,079 A 9/1998 Rivette et al. .......
`707s
`5,821,931. A 10/1998 Berquist et al. ..
`... 345/346
`5,831,615. A 11/1998 Drews et al. ............... 345/344
`5,832,474. A * 11/1998 Lopresti et al................. 707/2
`5,838.914. A 11/1998 Carleton et al. ............ 709/204
`5,845,301 A * 12/1998 Rivette et al. .............. 707/512
`5,860,074 A
`1/1999 Rowe et al.
`...
`... 707/526
`5,870,547 A 2/1999 Pommier et al. ........... 709/204
`5,870,759 A * 2/1999 Bauer et al. ......
`... 707/201
`5,890,177 A * 3/1999 Moody et al. .............. 71.5/511
`5,966,512 A * 10/1999 Bates et al. ................. 709/205
`6,052,514 A
`4/2000 Gill et al. ................... 345/733
`
`for the associated annotations. A web server application O
`the Server Side functions to capture requests from one or
`more note client applications for creating, Storing, editing
`and retrieving annotations related to Specific documents
`stored on the notes server. On the client side, the notes client
`functions to display the document that the user wishes to
`annotate and provides the tools necessary to permit the user
`to create, edit, delete, retrieve and Store notes. A Synchro
`nization process transmits the annotations generated by the
`No. from
`noteS SE the
`i. In R A.
`notes server transmits back an acknowledgement along wi
`any new notes that other notes clients may have posted SCC
`the last Synchronization was performed thus enabling mul
`tiple notes clients to annotate a document asynchronously
`with respect to each other. When annotations are posted to
`the notes Server by a notes client, the State of the annotation
`database is Synchronized Such that all other notes clients can
`retrieve the current, up to date annotations associated with a
`document
`
`96 Claims, 13 Drawing Sheets
`
`Browse Docu-ENT
`
`CLEN SELECTS DOCENT URL TO BROWSE
`
`DISPLAY
`ERROR
`MESSAGE
`k
`118
`
`SERVER WALIDATES USER CREDENTIALS
`-
`-
`NO-K USER AUTHENFICATED 2
`YES
`SERVER SENS MAGE DATA WITH
`APPROPRIATE MIME TYPE
`-
`
`CLET LOADS NOTES CLIENT FLJ3-IN
`
`- 114
`
`IAGE CISPLAYE) BY NOTES CLEENT
`
`-
`
`13
`Y
`120
`
`-->
`
`122
`- Y
`
`124
`--
`ReRIEWEROES FROM THE SERWER
`-—
`server reaps oTEs Database For speciFED
`DocuMENT USING URLASKEY
`FILTER THENOTES
`
`SERIALIZE He OE RESULTS AND
`SORE IN RESPONSE SUFFER
`
`30
`
`- w
`
`132
`
`SEND RESPONSE BUFFER TO THE CLIENT -
`34
`
`cIENT UPDATES LOCAL OTES DATABASE
`
`-
`
`CENT DISPLAYS NOTES IN WINDO
`
`138
`
`138
`CLIENT CAN cREATE, ECIT ANDAOR DELETE NOTES
`
`END
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 001
`
`

`

`US 6,687,878 B1
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`6,161,149 A 12/2000 Achacoso et al. ............. 710/4
`6,230,172 B1 * 5/2001 Purnaveja et al.
`... 707/512
`6,240,444 B1 * 5/2001 Fin et al. .........
`... 709/205
`6,308,199 B1 * 10/2001 Katsurabayashi ........... 709/204
`6,336,134 B1 * 1/2002 Varma .............
`... 709/105
`6,342,906 B1
`1/2002 Kumar et al. ............... 345/751
`
`6,353,851 B1 * 3/2002 Anupam et al. ............ 709/202
`6,360,250 B1 * 3/2002 Anupam et al. ............ 709/204
`6,493.731 B1 * 12/2002 Jones et al. .............. 715/501.1
`6,507.845 B1 * 1/2003 Cohen et al. ..
`... 707/100
`6,571,295 B1 * 5/2003 Sidana ..........
`709/246
`6,601,087 B1 * 7/2003 Zhu et al. ................... 709/205
`* cited by examiner
`
`
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 002
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 1 of 13
`
`US 6,687,878 B1
`
`
`
`FIG.1A
`
`FIG1B
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 003
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 2 of 13
`
`US 6,687,878 B1
`
`
`
`S
`
`i
`
`CA)
`H
`Z
`l
`H
`Z
`
`C
`
`2
`H
`
`L
`DS
`-CC
`2
`1.
`(/)
`D
`
`C
`H
`<C
`C
`
`e-cos ... 2
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 004
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 3 of 13
`
`US 6,687,878 B1
`
`SELON
`
`èJEME|/\
`
`
`
`
`
`
`
`
`
`
`
`0/
`
`Z9
`
`SELON
`
`09
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 005
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 4 of 13
`
`US 6,687,878 B1
`
`86
`
`
`
`
`
`99
`
`
`
`
`
`DISPLAY
`ERROR
`MESSAGE
`
`
`
`INTIALIZATION
`
`USER LAUNCHES WEB BROWSER
`
`URL PROVIDED BY CLIENT
`
`CLIENT TRANSMTS URL
`TO THE SERVER
`
`8O
`
`82
`
`84
`
`CLENT PREVIOUSLY
`AUTHENTICATED 2
`NO
`
`YES
`
`REQUEST AUTHENTICATION
`
`BROWSER SENDS USER SUPPLIED
`INFORMATION TO THE SERVER
`
`
`
`WEB SERVER CHECKS CREDENTIALS
`AGAINST THOSE DEFINED FOR
`THE REQUESTED URL
`
`USER NAME AND
`PASSWORD CORRECT 2
`YES
`
`SERVER RESPONDS WITH DRECTORY
`LISTING OF URL OR THE DOCUMENT
`CONTENT
`
`FIG.4
`
`CLIENT DISPLAYS THE
`DIRECTORY LISTING
`
`END
`
`96
`
`98
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 006
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 5 of 13
`
`US 6,687,878 B1
`
`
`
`
`
`
`
`EWWN (JEST LE5)
`
`SINBINOO
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 007
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 6 of 13
`
`US 6,687,878 B1
`
`BROWSE DOCUMENT
`
`CLIENT SELECTS DOCUMENT URL TO BROWSE
`
`11 O
`
`
`
`DISPLAY
`ERROR
`MESSAGE
`
`
`
`116
`
`SERVER VALIDATES USER CREDENTIALS
`
`114
`
`USER AUTHENTICATED 2
`YES
`SERVER SENDS IMAGE DATA WITH
`APPROPRIATE MIME TYPE
`
`CLENT LOADS NOTES CLIENT PLUG-IN
`
`IMAGE DISPLAYED BY NOTES CLIENT .
`
`RETRIEVE NOTES FROM THE SERVER
`
`SERVER READS NOTES DATABASE FOR SPECIFIED
`DOCUMENT USING URL AS KEY
`
`FILTER THE NOTES
`
`SERIALIZE THE NOTE RESULTS AND
`STORE IN RESPONSE BUFFER
`
`SEND RESPONSE BUFFER TO THE CLIENT
`
`CLIENT UPDATES LOCAL NOTES DATABASE
`
`CLIENT DISPLAYS NOTES IN WINDOW
`
`CLIENT CAN CREATE, EDIT AND/OR DELETE NOTES
`
`FIG.6
`
`END
`
`112
`
`118
`
`12O
`
`122
`
`124
`
`126
`
`128
`
`130
`
`132
`
`154
`
`136
`
`138
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 008
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 7 of 13
`
`US 6,687,878 B1
`
`
`
`
`
`
`
`
`
`SELON ONESTWOOT BIWOc}[^
`
`
`
`‘BSWEW IWO BION
`
`
`
`‘SELON AVTdSIG
`
`|NEW[\000 || 30
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 009
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 8 of 13
`
`US 6,687,878 B1
`
`NOTE
`SYNCHRONIZATION
`
`USER INITIATES SYNCHRONIZATION PROCEDURE
`
`CLIENT PREPARES BUFFER TO SEND
`TO NOTES SERVER
`
`CLIENT SERALIZES NOTES DATA
`
`CLIENT POSTS NOTES BUFFER TO THE
`SERVER USING ORIGINAL URL
`
`SERVER VALIDATES USER D AND PASSWORD
`
`SERVER MERGES NOTE, EVENT INFORMATION
`WITH THE NOTES DATABASE
`
`150
`
`152
`
`154
`
`156
`
`158
`
`16O
`
`NEW NOTES ASSIGNED UNIQUE NOTE ID AND PLACED
`IN A NEW RECORD IN THE NOTES DATABASE
`
`162
`
`THE TRANSACTION IS RECORDED IN THE
`NOTES LOG TABLE
`
`NOTE SERVER PREPARES A SERVER ANNOTATION
`RESPONSE DATA STRUCTURE WITH A LIST OF
`NOTES AND THEIR CONTENT
`
`SERVER ANNOTATION RESPONSE IS SENT TO
`THE SYNCHRONIZING CLIENT
`
`CLIENT MERGES RECEIVED LIST WITH ITS
`LOCAL NOTES DATABASE
`
`CLIENT REFRESHES THE DISPLAY
`
`164
`
`166
`
`168
`
`17O
`
`172
`
`END
`
`FIG.8
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 010
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 9 of 13
`
`US 6,687,878 B1
`
`
`
`YAAYSS{N30
`
`
`
`NOILLVWZINOYHONASSLON
`
`
`
`
`
`JSVavVivVd4LONSLlVddnN
`
`
`
`Y3SNONIMOSHOYdLIV
`
`SIWILNSd4Y9
`
`YAAuSSONS
`
`NOWLVLONNY
`
`SSNOd$4u
`
`
`
`SALONJuVdsud
`
`ONV&444Ng
`
`1SOd
`
`
`
`WOOTJlvadn
`
`
`
`“ISVEVIVSSLON
`
`
`
`‘SALONAV1dSIO
`
`
`
`LAdNISLON149
`
`Y3SNWOds
`
`6Old
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 011
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 011
`
`
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 10 of 13
`
`US 6,687,878 B1
`
`CLIENT ANNOTATION EVENT DATA STRUCTURE
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`190
`
`192
`
`194
`
`196
`
`198
`
`2OO
`
`2O2
`
`DOCUMENT D
`
`
`
`NOTE #N
`
`FIG.10
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 012
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 11 of 13
`
`US 6,687,878 B1
`
`CLIENT ANNOTATION EVENT NOTE
`DATA STRUCTURE
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`SERIAL NUMBER
`
`ACTION
`
`ANCHOR
`
`STATUS
`
`COLOR
`
`TEXT LENGTH
`
`TEXT
`
`SHAPE
`
`SHAPE LINE CAP
`
`SHAPE LINE WIDTH
`
`MARKER TYPE
`
`NUMBER OF SHAPE VERTICES
`
`SHAPE VERTICES
`
`
`
`212
`
`214
`
`21 6
`
`218
`
`220
`
`222
`
`224
`
`226
`
`228
`
`230
`
`232
`
`234
`
`236
`
`210
`
`FIG 11
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 013
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 12 of 13
`
`US 6,687,878 B1
`
`SERVER ANNOTATION RESPONSE DATA STRUCTURE
`
`
`
`DOCUMENT ID
`
`LOCAL SERVER TIME
`
`DOCUMENT DIMENSIONS
`
`NUMBER OF NOTES
`
`NOTE #1
`
`242
`
`244
`
`246
`
`248
`
`250
`
`252
`
`240
`
`FIG.12
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 014
`
`

`

`U.S. Patent
`
`Feb. 3, 2004
`
`Sheet 13 of 13
`
`US 6,687,878 B1
`
`SERVER ANNOTATION RESPONSE
`NOTE DATA STRUCTURE
`
`SERIAL NUMBER
`
`NOTE TIME STAMP
`
`262
`
`264
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`260
`
`FIG.13
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 015
`
`

`

`1
`SYNCHRONIZING/UPDATING LOCAL
`CLIENT NOTES WITH ANNOTATIONS
`PREVIOUSLY MADE BY OTHER CLIENTS
`IN ANOTES DATABASE
`
`FIELD OF THE INVENTION
`The present invention relates generally to collaborative
`work Systems and more particularly relates to a System for
`collaborative document annotation based on the exchange of
`notes attached to web based documents, the System being
`Suitable for use over a network Such as the Internet based
`World Wide Web (WWW).
`BACKGROUND OF THE INVENTION
`Abasic function of WorldWide Web browsers in common
`use today, Such as Netscape Navigator and MicroSoft Inter
`net Explorer, is to allow web pages stored in remote Web
`server to be retrieved and viewed. The user initiates a
`Viewing Session on a web browser by Specifying a particular
`URL corresponding to a page to be viewed. The Web Server
`transmit the various elements of the requested page to the
`browsing application. Any special data formats, e.g., video,
`certain images, documents not written in HTML language,
`etc., are treated by one or more web browser Software
`plug-ins on the client computer.
`A common need is to be able to view the document, i.e.,
`images, etc., on the client computer and be able to add one
`or more annotations to the document. It is becoming more
`and more common for groups of two or more people to work
`collaboratively on a project. The members of the group may
`or may not be located in the same geographic area. The
`collaboration is often via a network Such as the global
`Internet. The members of the group may be located any
`where in the World as long they have a connection to the
`Internet.
`The ability to annotate documents displayed on Screen is
`very useful when information needs to be exchanged among
`more than one perSon. It would be beneficial if one perSons's
`comments could be shared among many others by attaching
`notes that travel with the underlying document being worked
`O.
`Currently, however, it is not possible to annotate docu
`ments on the client Side Such that other clients can See the
`notes. The entire document with the attached notes must be
`transmitted to other clients for them to see the notes.
`Transmitting the entire document from client to client
`through the Server in order to exchange annotation is
`burdensome, inefficient and costly in terms of time and
`bandwidth.
`The majority of prior art Systems that with image and page
`annotation are adapted to handle annotation only on the
`client Side. In these Systems, a user launches an editing tool
`to open a document locally on her/his computer. The docu
`ment is edited locally with the other clients not being able to
`easily view the changes or notes. Some of these editing tools
`permit attaching data information Such as annotations to the
`document. These Systems operate by Saving the annotations
`within the local file system that is also used to store the
`document.
`Also known in the prior art are Systems that permit
`collaboration that is based on the replication of the display
`at one client System to the display on another client System.
`These Systems, however, require that all parties to the
`collaboration Session be logged on to the Server at the same
`time in order to view the annotations made by one or more
`of the parties.
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,687,878 B1
`
`2
`Thus, there is strong felt need for a System that would
`allow multipartly collaboration based on the asynchronous
`eXchange of annotations over a network Such as the Internet
`without the requirement that all parties wishing to collabo
`rate be simultaneously logged on to a Server.
`SUMMARY OF THE INVENTION
`The present invention is a System for collaborative docu
`ment annotation whereby notes or annotations associated
`with a document, Such as an image or text document, are
`Stored on a Web Server. The documents and associated
`annotations are treated independently from each other. Sepa
`rate data Structures are created for the documents and for the
`asSociated annotations thus permitting their independent
`management.
`The invention can be implemented as Software, a portion
`of which executes on the Server Side and a portion that
`executes on the client Side. The Server Side may comprise a
`plurality of Software applications running in parallel that in
`combination provide the server functionality of the inven
`tion. A web server application on the Server Side functions to
`capture Special requests from one or more client applications
`for creating, Storing, editing and retrieving, annotations
`related to Specific documents located in the Server. A notes
`Server functions to log all annotation activities along with
`information about the corresponding clients that create, edit
`and retrieve them.
`The notes information are transmitted between client and
`server applications via TCP/IP protocols over communica
`tions means Such as a LAN, WAN or the Internet. The
`invention may be adapted to operate over an Intranet, e.g.,
`LAN, or Extranet, e.g., WAN or the Internet.
`On the client Side a client Software application functions
`to display the document that the user wishes to annotate and
`provides the tools necessary to permit the user to create, edit,
`retrieve and Store notes. Note that the client Software appli
`cation can be implemented as a web browser plug-in mod
`ule. The plug-in contains the user interface for navigating
`within the document and for handling the notes.
`A Synchronization button is provided which, when
`pressed by the user, transmits the annotations generated by
`the user from the client to the Server using a particular
`protocol. In response, the Server transmits back an acknowl
`edgement along with any new notes that other clients may
`have posted Since the last Synchronization was performed.
`A user may annotate many documents at the same time by
`opening Several web browser windows. In addition, other
`clients can annotate either the same document or other
`documents at the same or a later time. In accordance with the
`invention, the annotations are transmitted from the Server
`independent of the data transmitted that is related to the
`Viewed document. At the client Side, the client application
`layers the annotations over the image (or document) in
`accordance with the coordinates of each.
`AS a result, the present invention has the advantage of
`permitting multiple clients to annotate a document that
`resides on a central web server in an asynchronous fashion.
`When annotations are posted to the server by a client, the
`State of the annotation database is Synchronized Such that all
`other clients can retrieve the current, up to date annotations
`asSociated with a document. AS an option, the Server can be
`adapted to trigger one or more alarms in response to a
`change being made to the database maintained by the Server.
`Those clients that wish to be notified in the event of a
`database change at the Server, can be notified by means of
`Visual indications, audio and/or e-mail. In addition, the
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 016
`
`

`

`3
`alarms can filtered in numerous ways. Examples of filtering
`include, but are not limited to, Specific documents, docu
`ment types, document folders, annotation contents and Spe
`cific clients.
`The system of the present invention further allows anno
`tations to be kept private. Annotations can be kept Secure
`from changes made by non authorized clients. The time an
`annotation was created is also tracked and Stored in terms of
`the clock in the server. When the time stamp of the anno
`tation is shown on the client, it is shown in terms of the clock
`on the client.
`There is provided in accordance with the present inven
`tion a System for annotating documents comprising a docu
`ment file located on a Server, the document file for Storing
`one or more documents, a notes database located on the
`Server, the notes database for Storing one or more notes, each
`note associated with a particular document, one or more
`notes clients coupled to a network, each notes client opera
`tive to locally display a representation of a document
`remotely Stored on the Server in the document file, the notes
`client adapted to permit a user to annotate the document with
`one or more notes, the notes client operative to Simulta
`neously display the one or more notes associated with the
`document over the displayed document Such that the docu
`ment is viewable along with the one or more notes, a notes
`Server coupled to the network, the notes Server operative to
`Store the documents in the document file Separately from
`notes Stored in the notes database, the notes Server receiving
`one or more notes associated with a particular document
`from the one or more notes clients and Synchronization
`means within the notes clients and the notes Server, the
`Synchronization means for updating the notes Server with
`any notes events processed by the notes clients and for
`updating the notes client with the results of Synchronization
`updates previously performed by other notes clients since
`the last Synchronization event.
`The notes database comprises a Notes Table for storing
`the current content of a note and a Notes Log Table for
`Storing a transaction history of all not events for notes
`asSociated with a particular document. The notes client
`comprises a display, network communication means, a pro
`ceSSor Suitably programmed to run a web browser and a
`client note plug-in adapted to run within the web browser.
`The network comprises the Internet, a TCP/IP network or
`an Intranet. The notes Server comprises network communi
`cation means, a processor Suitably programmed to provide a
`Web Server Services, provide notes agent Services, provide
`document and notes browsing and Synchronization Services
`to the one or more notes clients. The notes agent Services
`comprises an Internet Server Application Programming
`Interface (ISAPI).
`The System further comprises a notes administrator for
`providing one or more Universal Resource Locations (URL)
`aliases in managing and adminstrating the notes Server and
`a note viewer for generating reports on the history of
`annotation on a per user or a per document basis that have
`occurred over a period of time.
`The system permits two or more user to collaboratively
`work on the same document whereby each user is capable of
`Viewing annotations made by the other users upon Synchro
`nization with the notes Server. A Single page of a multipage
`document can be annotated on a notes client without requir
`ing the entire multipage document to be transmitted to the
`notes client.
`The System further comprises Security means for provid
`ing Universal Resource Locator (URL) translation and redi
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,687,878 B1
`
`4
`rection Services So as to provide user level Security for
`documents and notes Stored on the Server. The Security
`means comprises a Document Location Table and a Client
`Access Key Table.
`The document comprises an image or a document con
`Sisting of a page description language. The notes client is
`adapted to permit the user to annotate the document in
`parallel with the display of the document. The document
`comprises a plurality of pages whereby each page can be
`annotated independently of all the other pages. The Synchro
`nization means is user initiated or is triggered by the notes
`via the Signaling of Selected notes clients.
`There is also provided in accordance with the present
`invention method of annotating documents, the method
`comprising the Steps of getting a first request comprising a
`Universal Resource Locator (URL) associated with a docu
`ment to be viewed and annotated and transmitting the first
`request from a client to a Server, Sending a first response
`from the Server in response to the first request, the first
`response comprising the document type of and a represen
`tative of the requested document, getting a Second request
`comprising a document note URL corresponding to the notes
`asSociated with the document and Sending the Second
`request from the client to the Server, Sending a Second
`response from the Server in response to the Second request,
`the Second response comprising one or more notes associ
`ated with the document, displaying the representation of the
`document and the associated one or more notes locally on
`the client Such that both are viewable simultaneously, per
`mitting the user to perform annotation functions on the client
`So as to generate a third request comprising one or more note
`events related to the document that are transmitted from the
`client to the server and sending a third response from the
`Server to the client in response to the third request, the third
`response comprising an updated list of notes associated with
`the document, the list of notes incorporating any note events
`previously received from other clients.
`The Step of getting a first request comprises the Step of
`querying the user for a user name and password. The Step of
`Sending a first response comprises the Step of authenticating
`the user on the Server before Sending the first response. The
`method further comprises the Step of getting a fourth request
`comprising a folder URL associated with the folder com
`prising one or more documents to be viewed and annotated
`and transmitting the fourth request from the client to the
`SCWC.
`The method further comprises the Step of Sending a fourth
`response from the Server in response to receiving a request
`comprising a folder URL, the fourth response comprising a
`directory listing of the folder. The document comprises an
`image or a document represented using a page description
`language.
`BRIEF DESCRIPTION OF THE DRAWINGS
`The invention is herein described, by way of example
`only, with reference to the accompanying drawings,
`wherein:
`FIGS. 1A, 1B, 1C are illustrations of an example image
`displayed with and without multiple annotation displayed
`thereon;
`FIG. 2 is an illustration of an example annotation;
`FIG. 3 is a block diagram illustrating the collaborative
`document annotation System of the present invention;
`FIG. 4 is a flow diagram illustrating the initialization
`portion of the collaborative document annotation System of
`the present invention;
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 017
`
`

`

`US 6,687,878 B1
`
`6
`
`-continued
`
`S
`FIG. 5 is a message flow diagram illustrating the trans
`action Sequence between client and Server during initializa
`tion;
`FIG. 6 is a flow diagram illustrating the document brows
`ing portion of the collaborative document annotation System
`of the present invention;
`FIG. 7 is a message flow diagram illustrating the trans
`action Sequence between client and Server during document
`browsing,
`FIG. 8 is a flow diagram illustrating the note synchroni
`Zation portion of the collaborative document annotation
`System of the present invention;
`FIG. 9 is a message flow diagram illustrating the trans
`action Sequence between client and Server during note
`Synchronization;
`FIG. 10 is a diagram illustrating the Client Annotation
`Event Data Structure in more detail;
`FIG. 11 is a diagram illustrating the note data Structure of
`the Client Annotation Event Data Structure of FIG. 10 in
`more detail;
`FIG. 12 is a diagram illustrating the Server Annotation
`Response Data Structure in more detail; and
`FIG. 13 is a diagram illustrating the note data structure of
`the Server Annotation Response Data Structure of FIG. 12
`in more detail.
`
`Term
`
`Definition
`
`Note Alarms
`
`Note Anchor
`
`Note Client
`
`Notifications that the Notes Server received a Note
`Event.
`The specific location in a document associated with a
`note.
`The application that displays the annotated document
`and allows for annotation sessions.
`Note Contents The text or graphical information contained in the note.
`Note
`Identifier for documents and sets of aggregated
`Document ID documents organized under the same logical structure.
`Note Event
`A message related to a note that did not exist at the time
`of the last synchronization with the Notes Server, or a
`note that was modified or deleted since that time.
`Identifier used to differentiate between notes generated
`by various users.
`Mechanism whereby the Notes Clients saves the Note
`Events to the local file system, allowing for
`synchronization at a later time.
`A number uniquely identifying a note.
`
`1O
`
`15
`
`Note
`Owner ID
`Note
`Persistence
`
`Note Serial
`Number
`Note Server
`
`25
`
`Note
`Synchroniza-
`tion
`Note Time
`Stamp
`Notes
`Database
`Notes Log
`
`The application that provides the centralized
`role of document and note management.
`The update activity whereby one or more Note Events
`are exchanged between the Notes Server and
`the Notes Client.
`The time stamp saved on the Notes Server, stored
`using time zone of the Notes Server.
`The database maintained by the Notes Server holding
`all note related information.
`A transactional history of Notes Events.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`Notation Used Throughout
`The following notation is used throughout this document.
`
`Term
`
`Definition
`
`Greenwich Mean Time
`GMT
`Hypertext TextMarkup Language
`HTML
`Hypertext Transport Protocol
`HTTP
`Internet Information Server
`IIS
`Internet Protocol
`IP
`Internet Server Application Programming Interface
`ISAPI
`Local Area Network
`LAN
`Multipurpose Internet Mail Extension
`MIME
`Network File System
`NFS
`Portable Document Format
`PDF
`Random Access Memory
`RAM
`Red Green Blue
`RGB
`Simple Mail Transport Protocol
`SMTP
`Structured Query Language
`SOL
`Transport Control Protocol
`TCP
`Tag Image File Format
`TIFF
`Universal Resource Locator
`URL
`Wide Area Network
`WAN
`WWW World Wide Web
`
`The following terminology and definitions apply through
`out this document.
`
`Term
`
`Definition
`
`Annotation
`(Note)
`Annotation
`Session
`
`A portion of text or a graphical drawing that is associated
`with a specific location in a document.
`The time period during which a user creates, edits,
`retrieves and stores one or more notes associated with
`a document.
`
`General Description
`The present invention is a System for collaborative docu
`ment annotation whereby notes or annotations associated
`with a document are Stored on a web server. Examples of
`documents include, but are not limited to, images, text
`documents or documents expressed in a page description
`language such as PostScript or Adobe PDF. In addition, each
`document may contain more than one page, wherein each
`page is annotated independently of the other. The documents
`and associated annotations are treated independently from
`each other. Separate data Structures are created for the
`documents and for the associated annotations thus permit
`ting their independent management. The invention can be
`implemented as Software, a portion of which executes on the
`Server Side and a portion executes on the client Side. The
`Server Side may comprise a plurality of Software applications
`running in parallel that in combination provide the Server
`functionality of the invention. A web server application on
`the Server Side functions to capture Special request from one
`or more client applications for creating, Storing, editing and
`retrieving annotations related to Specific documents located
`in the Server. A notes Server functions to log all annotation
`activities along with information about the corresponding
`clients that create, edit and retrieve them.
`Illustrations of an example image displayed with and
`without multiple annotations displayed thereon are shown in
`FIGS. 1A, 1B and 1C. The system of the present invention
`is Suitable for use with a variety of document types, includ
`ing text and image based documents. For illustrative
`purposes, the following description uses an image type
`document to illustrate the principles of the invention. This is
`not meant to limit the scope of the invention. One skilled in
`the computer and Software arts can apply the System the
`invention to other document types as well without departing
`from the Spirit and Scope of the present invention.
`In FIG. 1A, the display 10 is shown comprising a single
`document window 12 in which an image is displayed. No
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Meta Platforms, Inc.
`Exhibit 1006
`Page 018
`
`

`

`US 6,687,878 B1
`
`15
`
`40
`
`45
`
`7
`annotations are displayed in this view. In FIG. 1B, the
`display 10 is shown comprising a Single document window
`14 in which an image is displayed with a plurality of
`annotations 16. The annotations 16 are displayed over the
`image but are not a part of the image itself. In FIG. 1C, the
`display 10 is shown comprising two portions: the image
`window 18 and a Note List window 20. The image window
`18 displays the image with the plurality of annotations 16 on
`top of the image. The Note List window 20 displays a list of
`all the annotations associated with the image shown in
`window 18. The user can optionally sort the Note List by
`Note Owner ID, Note Time Stamp, Note color label and
`Note Contents. The display may include Note Event
`description, Note Owner ID, user name, path, originator IP
`address, time and Note Contents. When a note is selected on
`the Note List, its counterpart icon in the document window
`frame is highlighted.
`An illustration of an example annotation is shown in FIG.
`2. The annotation, generally referenced 30, comprises a
`window having a title portion 32 and text portion 34. The
`window contains a note label (Sam), Note Owner ID or login
`name (Acme) and the data and time of the most recent
`Synchronization.
`A block diagram illustrating the collaborative document
`25
`annotation System of the present invention is shown in FIG.
`3. The annotation System, generally referenced 40, com
`prises one or more standard web browsers 42 labeled web
`browser #1 through web browser #N. Each web browser
`comprises a Note Plug-In component 44 that loads into the
`browser. The web browser 42 may comprise any suitable
`browser such as Netscape Navigator or Microsoft Internet
`Explorer. Each web browser in combination with the Note
`Plug-In is referred to as a Notes Client 41 and is the tool used
`for browsing the documents located on

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket