System and method for arbitrary annotation of web pages copyright notice
The invention relates generally shared annotation systems. More particularly, the invention provides a method for automatically navigating a document in a display having at least a first portion and a second portion, the method comprising: receiving an annotation related to the document, the annotation generated by a user at a first client; associating the annotation with a first indication in the document; receiving, from a user at a second client, an input to navigate a first portion of a display at the second client, the input causing the first indication to be displayed in the first portion of the display; and in response to the input, automatically displaying the annotation in a second portion of the display at the second client.
1 . A method for allowing users of web browsers to annotate an arbitrary portion of a web page, the method comprising:
allowing a user to select the arbitrary portion of the web page using a selection tool;
capturing as metadata location data describing the user's selected portion;
transmitting the metadata to a web server; and
at the server, updating the web page to include an indication of the user's selected portion.
2 . The method of claim 1 , wherein the step of capturing is performed by JavaScript downloaded with the web page.
3 . The method of claim 1 , wherein allowing a user to select comprises allowing the user to select an arbitrary string of characters from text in the web page.
4 . The method of claim 3 , wherein capturing location data comprises capturing a paragraph identifier tag for a paragraph within the web page in which the user's selected character string is located.
5 . The method of claim 3 , wherein capturing location data comprises:
capturing a starting point value representing an offset of the start of the user's selected character string from the start of a section of the web page; and
capturing an ending point value representing an offset of the end of the user's selected character string from the start of the section of the web page or from the starting point value.
6 . The method of claim 5 , wherein capturing the starting and ending point values comprises capturing offsets as numbers of characters from the start of the section.
7 . The method of claim 5 , wherein capturing location data comprises capturing mouse clicks representing a beginning of the character string, a coordinate change in the character string, and an ending of the character string.
8 . The method of claim 5 , wherein the section is a paragraph represented in the web page by a paragraph identifier tag.
9 . The method of claim 1 , wherein allowing a user to select comprises allowing the user to select a portion of an image embedded in the web page.
10 . The method of claim 9 , wherein allowing the user to select comprises allowing the user to select using a cropping tool.
11 . The method of claim 9 , wherein capturing location data comprises capturing x,y coordinates of the selected portion of the image.
12 . The method of claim 11 , wherein allowing the user to select comprises allowing the user to select using a rectangular cropping tool, and wherein capturing x,y coordinates comprises capturing x,y coordinates of the comers of a rectangle created using the rectangular cropping tool.
13 . The method of claim 1 , wherein transmitting the metadata to the web server comprises uploading the metadata to the web server as an attribute of an input form.
14 . The method of claim 13 , comprising allowing a user to input content for the annotation in the input form.
15 . The method of claim 1 , comprising transmitting with the metadata, to the web server, content provided by the user for an annotation.
16 . The method of claim 1 , comprising automatically modifying the captured location data for an annotation in accordance with pre-set criteria.
17 . The method of claim 16 , wherein modifying the location data comprises expanding the location data.
18 . The method of claim 17 , wherein allowing a user to select comprises allowing the user to select an arbitrary string of characters from text in the web page, and wherein expanding the location data comprises expanding location data to include whole words in which characters from the word are included in the user's selected character string.
19 . The method of claim 16 , wherein modifying the location data comprises limiting the number of annotations allowed from multiple users related to the same selected portion of the web page.
20 . The method of claim 1 , wherein capturing location data comprises capturing a paragraph identifier tag for a paragraph within the web page in which the user's selected portion is located.
21 . The method of claim 1 , wherein capturing location data comprises:
capturing a starting point value representing an offset of the start of the user's selected portion from the start of a section of the web page; and
capturing an ending point value representing an offset of the end of the user's selected portion from the start of the section of the web page or from the starting point value.
22 . The method of claim 21 , wherein capturing the starting and ending point values comprises capturing offsets as numbers of characters from the start of the section.
23 . The method of claim 21 , wherein capturing the location data comprises capturing mouse clicks representing a beginning of the selected portion, a coordinate change in the selected portion, and an ending of the selected portion.
24 . The method of claim 21 , wherein the section is a paragraph represented in the web page by a paragraph identifier tag.