A system and method for notifying a user of changes in a hyperlinked document, the system comprising a computer, a server operatively coupled with the computer, a web browser that executes in the computer, the web browser accessing web pages stored on the server, and a general notification system integrally connected with the web browser, the general notification system configured to provide a notification icon on a web page, wherein notification of any changes to the hyperlinked document can be requested by selecting the notification icon. The method comprising providing a notification icon within a web page having a hypertext link associated with the hyperlinked document, selecting the notification icon, and notifying the user of any changes to the hyperlinked document.
|
11. A method of notifying a user of changes in a hyperlinked document, the method comprising;
providing a notification icon within a web page having a plurality of hypertext links associated with a plurality of hyperlinked documents; selecting the notification icon; converting the web page to a notification page upon selecting the notification icon, the notification page having a checkbox next to each hypertext link; marking the checkbox to select each hypertext link for which change notification is desired; and notifying the user of any changes to the selected hyperlinked documents associated with the selected hypertext links.
17. A computer program for notifying a user of changes in a hyperlinked document, the computer program comprising:
a storage medium; notification icon code on the storage medium for generating a notification icon within a web page having a plurality of hypertext links associated with a plurality of hyperlinked documents; subscription program code on the storage medium for converting the web page to a notification page upon selection of the notification icon, the notification page having a checkbox next to every hypertext link on the notification page and whereby marking a checkbox will select a hypertext link for which change notification is desired; notify program code on the storage medium for notifying the user of any changes to the selected hyperlinked documents.
1. A system for notifying users of changes in a hyperlinked documents, the system comprising:
a computer; a server operatively coupled with the computer; a web browser that executes in the computer, the web browser accessing web pages stored on the server; a general notification system integrally connected with the web browser, the general notification system configured to provide a notification icon on a web page, wherein notification of any changes to the hyperlinked documents can be requested by selecting the notification icon; and wherein the general notification system comprises a subscription program which is invoked upon selecting a notification icon, the web page having a plurality of hypertext links associated with a plurality of hyperlinked documents, the subscription program converting the web page to a notification page, and the notification page having a checkbox next to each of the hypertext links.
2. The system of
3. The system of
4. The system of
5. The system of
6. The system of
7. The system of
8. The system of
9. The system of
10. The system of
12. A method according to
periodically canvassing the Internet for the selected hyperlinked documents; and comparing a found hyperlinked document to a current hyperlinked document for changes.
13. A method according to
14. A method according to
15. A method according to
16. A method according to
18. The computer program according to
19. A computer program according to
20. A computer program according to
21. A computer program according to
22. A computer program according to
|
The present invention relates generally to web browser enhancements. More particularly, the present invention relates to a system and method for notifying of changes in web page hyperlinked documents.
Many people use the Internet, or a corporate Intranet, to find a variety of information. Often, when people use the Internet, they use a section of the Internet called the World Wide Web. The World Wide Web is a massive collection of web pages that contains a variety of information. Similarly, a corporate Intranet is a more limited collection of web pages that also contains a variety of information. The web pages on the Internet and on corporate Intranets are normally accessed by the user through a web browser. Typically, the web browser displays one web page at a time. Often times, a web page will contain a hypertext link to another web page called a hyperlinked document. By selecting the hypertext link, the user can be taken to the hyperlinked document that is associated with the hypertext link.
The drawback with Internet and corporate Intranet systems is that the information presented within the web pages is often updated and changed without notification to the users. Therefore, a user who accesses information on web pages does not have an effective method of being notified when a web page or a hyperlinked document is changed. While there are current systems which notify a user of changes to a web page, these notification system are rather limited.
For example, U.S. Pat. No. 5,813,007 (the '007 patent) teaches an apparatus, method, system and computer program product which provides automatic notification of sufficient changes in bookmarked information files. The '007 patent provides a user of information access programs, such a web browsers, to automatically be informed of changes in information files, such as World Wide Web pages, when the maintainer of the information file determines that a sufficient change has been made to the file.
U.S. Pat. No. 5,898,836 (the '836 patent) teaches a change-detection web server which automatically checks web-page documents for recent changes. The server retrieves and compares documents one or more times a week. The user is notified by electronic mail when a change is detected. The user registers a web page document by submitting his e-mail address and the uniform resource locator (URL) of the desired document.
Users would benefit from a notification system that provided the ability to easily select a hypertext link from a web page and then be electronically notified whenever the hyperlinked document that is associated with the hypertext link changes.
In view of the above limitations of existing web browsers, it is an aspect of the present invention to provide a computer system comprising a computer, a server operatively coupled with the computer, a web browser that executes in the computer, the web browser accessing web pages stored on the server, and a general notification system integrally connected with the web browser, the general notification system configured to provide a notification icon on a web page, wherein notification of any changes to the hyperlinked document can be requested by selecting the notification icon. In one preferred embodiment, the general notification system further comprises a subscription program which is invoked upon selecting a notification icon, the web page further comprises a hypertext link associated with the hyperlinked document, the subscription program changes the web page to a notification page, and the notification page further comprises a checkbox next to the hypertext link. In one preferred embodiment, the general notification system further comprising a canvasser program configured to find the hyperlinked document and compare a found hyperlinked document to a current hyperlinked document for changes to the hyperlinked document. In one preferred embodiment, the general notification system further comprises a notify program for comparing data fields in the notify table with data fields in the change table and notifying the user of any changes to the hyperlinked document. In one preferred embodiment, the general notification system further comprises a notify reports program configured to generate a report for the user.
Another aspect of the present invention is to provide a method of notifying a user of changes in a hyperlinked document, the method comprising providing a notification icon within a web page having a hypertext link associated with the hyperlinked document, selecting the notification icon, and notifying the user of any changes to the hyperlinked document. In one preferred embodiment, the method further comprises generating a notification page upon selecting the notification icon, the notification page having a checkbox next to the hypertext link, and marking the checkbox. In one preferred embodiment, the method further comprises periodically canvassing the Internet for the hyperlinked document, and comparing a found hyperlinked document a current hyperlinked document for changes.
As will be appreciated by those of skill in this art, the above described aspects of the present invention may also be provided as apparatus or computer program products and is particularly well suited to program tools, applications, web browsers, or operating systems which utilize hypertext links.
As used herein, the term "A HREF" refers to an HTML notation indicating a hyperlinked document. On the web page itself, a word or name associated with the "A HREF" appears highlighted and/or underscored. When a user clicks and selects on the word or name, the web browser follows the path indicated by the "A HREF" to the source system to obtain the document and presents it back to the user.
As used herein, the term "CGI" refers to Common Gateway Interface which is the protocol in which a user using a web browser may interact with a Server, by submitting a request or data input. The Server receiving the CGI input will invoke the associated CGI program to process the input. The CGI program usually sends a response back to the user to signal the completion of the transaction.
As used herein, the term "CRONTAB" refers to a Unix feature which lines up programs for batch runs as triggered by the system clock. Programs that are designed to be triggered on a particular day, date, and time are so designated in the Unix's CRONTAB. In this manner, programs can be invoked automatically in a Unix environment.
As used herein, the term "directory-filename" refers to the Unix notation of "path" as marked by forward slash "/", ending with a filename in that path. As used herein the term "directory" also refers to the "path," that is, the place where a file resides. Filename uses Unix "dot" notation convention. For example, for the directory-filename "www.bostonpie.com/corp/personnel/salary.txt," "www.bostonpie.com/corp/personnel/" is the path to the specific filename "salary.txt". This is saying that the file, "salary.txt", is found in this specific path.
As used herein, the term "disk-directory" refers to the "path" portion of a "Directory-Filename" designation. For example, for the path ending with /433/pension.plan, "pension.plan" is the specific file and "/433/" is the disk-directory where the file "pension.plan" resides in. "/433/" is part of the path to the "pension.plan" file.
As used herein, the term "display screen" refers to a plurality of picture elements which collectively define the appearance of a user interface environment, such as a web browser. The contents of the display screen, and therefore, the appearance of the user interface environment, may be controlled or altered by an application or an operating system either individually or in combination.
As used herein, the term "e-mail" or "electronic mail" refers to a delivery system for electronic documents or messages over the Internet. A user of computer system, including the Internet, usually owns an e-mail address where he/she receives electronic documents or messages.
As used herein, the term "e-mail address" refers to the unique address that a user of an electronic mail system owns. An Internet e-mail address typically has the form "john33@businessA.com", wherein "john33" is a specific user at the e-mail service station "businessA.com" and where "BusinessA.com" is unique on the Internet.
As used herein, the term "entry-date" refers to the date and time that a notification subscription was entered by the user.
As used herein, the term "home page" refers to the first page in an Internet web system. When a user enters the URL of an Internet web application system, the first page that is sent by the web server back to the user is usually the home page. The home page identifies the application and links and hyperlinks to other subsequent web pages.
As used herein, the term "HTML" refers to Hypertext Markup Language, which is a markup language with agreed upon notations. A document with HTML notation can traverse the Internet and presents itself on any computer with any variety of web browsers. The HTML notation deals with font, color, size, placement of elements within a document, as well as hypertext links to hyperlinked documents from the current, as well as other, source systems.
As used herein, the term "hyperlinked document" refers to a document which is associated with a hypertext link located on a web page or in another document. Within the web page, the HTML notation "A HREF" designates that what follows is a hyperlinked document. When a user clicks on and selects the hypertext link associated with a hyperlinked document, the web browser follows the path indicated in the "A HREF" to obtain the hyperlinked document from the source system, bringing it back to present to the user. It is through the power of hypertext links that a home page on an Internet web browser can expand its reach by linking up a multitude of other source systems and bringing the vast resources of information back to a user's desktop.
As used herein, the term "hypertext link" refers to a name, word, symbol, picture, illustration, or object on a web page or document, that is associated with a hyperlinked document. When the hypertext link associated with a hyperlinked document is selected, a web browser follows the path indicated in the "A HREF" to obtain the hyperlinked document from the source system, bringing it back to present to the user.
As used herein, the term "Internet" refers to the interconnected network of source systems and networks spanning the world.
As used herein, the term "Internet web system" refers to a specific segment of the Internet that pertains to a particular topic or application. An Internet web system begins with a home page and ends with leaf pages. From the home page, a user can select hypertext links, calling-in other web pages until the leaf pages are reached. For instance, "www.npr.org", is a specific Internet web system for "National Public Radio" whose home page leads to other web pages addressing topics related to "National Public Radio". After selecting enough hypertext links one will often lead to a web pages called a leaf page which doesn't have any hypertext links to other web pages.
As used herein, the term "leaf page" refers to a terminal page that an Internet web system leads to which doesn't include a hypertext link to another web page. Sometimes, leaf pages have hypertext links back to the home page.
As used herein, the term "navigation" refers to traversing an Internet web system from the home page down to leaf pages, crossing all intermediate sub-menus and web pages. As used herein, the term "on-notify" refers to a user being on notification for a particular hyperlinked document designated via subscription for notification. The designation is recorded in the notify table.
As used herein, the term "server" refers to a computer on the Internet which perform services. The most common service for a server is web serving. Other common services for a web server are name resolution and routing.
As used herein, the term "source system" refers to a target or destination location of a hyperlinked document. For example, for the URL "http://www.bostonpie.com/corp/personnel/salary.txt", "salary.txt" is the target document residing in "http://www.bostonpie.com/corp/personnel/" which is the path. Specifically "www.bolstonpie.com" is the source system, where-as, "/corp/personnel/" is a subsidiary path within the source system leading to target document.
As used herein, the term "sub-menu" refers to secondary menus pointed-to from the web menu. A sub-menu may point to other sub-menus or to leaf pages.
As used herein, the term "submit button" refers to a button in a CGI modulated web page. In a CGI modulated web page, where user's input is anticipated, a submit button always accompanies the web page. Preferably, the submit button displays the word "SUBMIT" on it. The user's input is not sent to the server until the submit button is selected.
As used herein, the term "URL" refers to Universal Resource Locator (URL) which is the name of a web site location. URL uses a protocol, understood by all elements in the Internet, such as browser, routers, name servers, and web servers, telling the Internet how and where to forward a request for service. The most common URLs follow this format: "http://www.bostonpie.com/corp/personnel/salary.txt", where "http://" is the "Hypertext Transfer.Protocol", a particular Internet transfer protocol; "www.bostonpie.com" is the source system; "/corp/personnel/" is a path within the source system; and "salary.txt" is the target file.
As used herein, the term "web browser" refers to an application on a desktop that accesses the Internet. A common web browser is the Netscape Navigator™ web browser or the Microsoft Internet Explorer™ web browser.
As used herein, the term "web menu" refers to a web page that is formatted as a menu, whereupon each selection in the menu is a hyperlink to a web sub-menu or a data file.
As used herein, the term "web server" refers to a server whose job is to serve web pages back to the users. The Internet is populated with web server nodes responding to users' requests. Besides serving web pages, a web server also execute CGI programs to interact with the users.
As used herein, the term "web site" refers to the home location for an Internet web system. When the web site is invoked, the web site usually returns a home page to a requesting user. The home page identifies the web site, and may or may not interrogate the user before allowing further access to the Internet web system.
The presently preferred embodiments will now be described more fully hereinafter with reference to the accompanying drawings, in which the presently preferred embodiments are shown. This invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Like numbers refer to like elements throughout.
As will be appreciated by one of skill in the art, the present invention may be embodied as a method, data processing system or program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product on a computer-readable storage medium having computer-readable program code means embodied in the storage medium. Any suitable storage medium may be utilized including read-only memory (ROM), RAM, DRAM, SDRAM, hard disks, CD-ROMs, DVD-ROMs, any optical storage device, and any magnetic storage device.
Users can access general notification system 100 through computer 112. Computer 112 is any device that can process, send and receive digital signals known to one of ordinary skill in the art, such as a microcomputer, a personal digital assistant (PDA), a cellular phone, a wireless pager, or any other device which utilizes a computer processor. Users may use a web browser to access a web site with general notification system 100 in place.
Server 110 communicates with databases 164. Databases 164 are resources that server 110 links to in order to serve up the web pages requested by a web browser. Additionally, information regarding menus and data files resides in databases 164.
A user using a web browser requests notification of any changes to hyperlinked document 116 by selecting notification icon 146 which is preferably placed in the upper left corner on every web page 114, as illustrated in FIG. 13. When a user selects notification icon 146, subscription program 120 is invoked at server 110. Subscription program 120 gets a copy of the current web page 114, that is current to a specific user, and converts and returns web page 14, now called a notification page 118, to the user with checkboxes 124 next to each hypertext link 122, as illustrated in FIG. 14. The user may select hypertext link 122 associated with hyperlinked document 116 that the user wants to be "on-notify" for, by selecting checkbox 124 next to that hypertext link 122. The user may submit the marked notification page 118 back to server 110 by selecting submit button 126.
Subscription program 120 is a CGI program that resides in and is executed from server 110. In one preferred embodiment, subscription program 120 performs a few preliminary prompts such as authenticating the user-id of the user making the request for notification, asking whether the notification is for the user or for other users, if the notification is for other users, then the user is prompted to list the notify-ids for the other users. As used herein, the notify-id is the id for any user who is to receive notification, while the user-id is the id of the user who is requesting notification. Finally, subscription program 120 prompts the user if the user is invoking subscription program 120 for notification or for unnotification. As used herein, the term "unnotification" refers to undoing a previous subscription to a certain hyperlinked document 116, while the term "notification" refers to invoking a subscription to a certain hyperlinked document 116 and therefore receiving notification of any changes to that hyperlinked document 116. Upon performing a few preliminary prompts or upon request from the user, subscription program 110 then converts the current web page 114 that the user is looking at into notification web page 118, or an unnotification page if user had indicated that the request is for unnotification, as illustrated in
Upon generating notification page 118 or unnotification page, subscription program 120 sends notification page 118 or unnotification page to the user for viewing. Subscription program 120 then waits for the user's response. The user responds to subscription program 120 by selecting checkboxes 124 or check-all checkbox 128, and then selecting submit button 126. By selecting checkbox 124, the user indicates that he requests to be put on notification, or unnotification depending on the type of page, for any changes to the hyperlinked document 116 associated with the hypertext link 122 that is next to checkbox 124. If the user clicks on check-all checkbox 128, the user indicates that he requests to be put on notification, or unnotification depending on the type of page, for any changes to every hyperlinked document 116 associated with every hypertext link 122 on web page 114.
Upon receiving the user's request, subscription program 120 reads the user's input, that is the checks in checkboxes 124 or check-all checkbox 128, and stores the corresponding directory-filename for the selected hyperlinked document 116 into notify table 160. In one preferred embodiment, subscription program 120 also stores the user-id of the user requesting notification, the notify-id or notify-ids of the users to be notified, the date of the request, and the time of the request into notify table 160. Preferably, subscription program 120 stores all this information as a single record in Notify Table 160, and then returns to the user with a message indicating that the user's request has been processed. In the case of unnotification, subscription program 120 matches the user's input with existing records in notify table 120, and removes the matched records from notify table 120.
Notify table 160 records all the requests for notification from the users. Preferably, each record in notify table 160 corresponds to one notify-id and one hyperlinked document 116. A notification request generates one or more notification records, since a single notification request can be for several notify-ids creating several files. In one preferred embodiment, a record in notify table 160 consists of the following data fields, mode field 20, user-id field 22, notify-id field 24, entry-date field 26, and directory-filename field 28. A new record is added to notify table 160 when a user request to be placed on notification for a hyperlinked document 116. An existing record is deleted, when a user requests unnotification for a particular hyperlinked document 116. Preferably, notify table 160 is compared to change table 162 for matches at least once per day, however notify table 160 may be compared to change table 162 at any increment of time. Each matched result is a notification event of a hyperlinked document 116 to a user who has been placed on notification.
Canvasser program 130 runs periodically, and can be set to run as often as the system administrator would like, by using a program setting such as CRONTAB, for example. In one preferred embodiment, canvasser program 130 runs at least once a day. Canvasser program 130 traces' each menu and submenu of an Internet web system down to each hyperlinked document 116 in the Internet web system. Canvasser program then compares the found hyperlinked document 116 to the current hyperlinked document 116 for changes. As used herein, the term "current hyperlinked document 116" refers to the most current data on file for a requested hyperlinked document 116 and the term "found hyperlinked document 116" refers to a hyperlinked document 116 that has just been found by canvasser program 130. Canvasser program 130 can compare found hyperlinked document 116 to current hyperlinked document 116 for changes in one of many ways known to those of ordinary skill in the art. In one preferred embodiment, canvasser program 130 extracts the date/time stamp of found hyperlinked document 116 and compares the extracted date/time stamp to the previous date/time stamp for current hyperlinked document 116, as kept in a date/time stamp file on server 110, for changes. In one preferred embodiment, if the date/time stamp has changed, the directory-filename is recorded in change table 162 as a "U" in mode field 20 indicating that the requested hyperlinked document 116 has been updated and probably changed. A hyperlinked document 116 can be designated as new in mode field 20, in the notify table 160 if the hyperlinked document 116 does not have a previous date/time stamp. A hyperlinked document 116 can also be designated as having been deleted in mode field 20, if the hyperlinked document 116 exist with a previous date/time stamp, and no new date/time stamp can be extracted, because the hyperlinked document 116 no longer exists. In one preferred embodiment, canvasser program 130 creates a checksum for current hyperlinked document 116 that the user requests to be on notification of. Canvasser program 130 then creates a checksum for found hyperlinked document 116, and then compares the checksum for the current hyperlinked document 116 to the checksum for the found hyperlinked document 116 for changes. In one preferred embodiment, canvasser program compares the full text or a selected portion of text from the current hyperlinked document 116 to the full text or a selected portion of text from the found hyperlinked document 116 for changes. Canvasser program 130 populates a new change table 162 every time canvasser program 130 is run.
Change table 162 records all the changes located by canvasser program 130. In one preferred embodiment, change table 162 records all the date/time stamp changes located by canvasser program 130. Each record in change table 162 indicates a hyperlinked document 116 that has been changed, newly added, or no longer exists and has been deleted. Preferably, each record in change table 162 consists of two fields, mode field 20 and directory-filename field 28. When a directory-filename field 28 in notify table 160 matches a directory-filename field 28 in change table 162 general notification system 100 may flag the user, through notify program 140, that a certain hyperlinked document 116 which that user requested notification for has changed.
Notify program 140, which typically runs after canvasser program 130 has completed running, compares data fields in notify table 160 with data fields in change table 162 to sort out all the matching directory-filename fields 28, and produces resulting data. Notify program 140 then sorts the resulting data by notify-id. Notify memo 156 is then created for each notify-id. Preferably, the notify memo 156 lists all the directory-filename fields 28 that were flagged by notify program 140 and listing the hyperlinked documents 116, which the user has subscribed to, indicating that the hyperlinked documents 116 have changed. In one preferred embodiment, hyperlinked documents 116 are listed as a hypertext link 122 of the hyperlinked document 116, permitting the recipient of the notify memo to invoke a web browser directly to view each hyperlinked document 116. Notify memo 156 sent by notify program 140 is received by a user having a particular notify-id, preferably as an e-mail notice 132, as illustrated in FIG. 15.
In one preferred embodiment of the invention, general notification system 100 comprises notify reports program 150 configured to generate a report for the user. In one preferred embodiment, the user of general notification system 100 can click on notify report icon 158, an icon preferably located at the bottom of the home page, to invoke notify reports program 150 and request reports from notify table 160. For instance, the user can request for a report to see what hyperlinked documents 116 the user is on notification for. In one preferred embodiment, there are up to ten reports that a user can request and the reports are present in a notification report menu 165, as illustrated in FIG. 16. Notify report program 150 preferably is executed as a CGI program that when invoked, retrieves data from notify table 160, sorts and selects the data within notify table 160, and generates a report. In one preferred embodiment, notify report program 150 then sends the report to the requesting user via e-mail notice 132, as illustrated in
As will be appreciated by those of skill in this art, the preceding examples are provided, not to limit or define the scope of the present invention, but to illustrate the nature of the present invention and possible uses for the teachings of the present invention. These examples may be modified in many different ways while still obtaining the benefits of the teachings of the present invention.
Accordingly, blocks of the flowchart illustrations support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the flowchart illustrations, and combinations of blocks in the flowchart illustrations, can be implemented by special purpose hardware-based computer systems which perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.
After the user clicks on notification icon 146, subscription program 120 gets a copy of the current web page 114 that the user is viewing, converts the web page 114 to notification page 118 or unnotification page, and returns notification page 118 or unnotification page to the user, as illustrated in blocks 203-205. The conversion of web page 114 to notification page 118 or unnotification page, as illustrated in block 204, consists of locating all the hypertext links 122 in web page 114 and adding one checkbox 124 next to each hypertext link 122. In one preferred embodiment, the conversion of web page 114 also consists of adding a check-all checkbox 128 at the top of web page 114. In one preferred embodiment, notification page 118 or unnotification page have submit button 126. Upon returning notification page 118 or unnotification page to the user, as illustrated in block 205, subscription program 120 waits for the user to click on checkboxes 124, or check-all checkbox 128, and submit the request, as illustrated in block 206. Upon selecting submit button 126, subscription program checks for marked checkboxes 124 or marked check-all checkbox 128 from the returned notification page 118 or unnotification page. If there are no marked checkboxes 124 or marked check-all checkbox 128, subscription program 120 prompts the users for input, as illustrated in block 208. If the user refuses to mark a checkbox 124 or mark a check-all checkbox 128, subscription programs 120 exits or terminates. If marked checkboxes 124 or marked check-all checkbox 128 exist, subscription program proceeds to block 207. In block 207, subscription program 120 collects all the marked checkboxes 124 and their corresponding directory-filenames. If check-all checkbox 128 is marked, then all hypertext links 122 on web page 114 are marked as checked, and all the corresponding directory-filenames are collected. Preferably, the directory-filenames, the user-id, the notify-id(s), and the entry-date are all entered into notify table 160. If the user requested an unnotification page, the matching notify-ids and directory-filenames are removed from notify table 160, and subscription program moves to block 209. Block 209 indicates that subscription program 120 has completed processing and all entries are added or removed from notify table 160. In one preferred embodiment, subscription program 120 sends a message to the user confirming that the notification request processing is successful. Subscription program 120 then exits.
Canvasser program 130 navigates the web menu, from the home page down through all the submenus to each leaf pages, as illustrated in block 303. At each page, menus, or leaf page, the program identifies all the found hyperlinked documents 116. Next canvasser program 130 locates and records the current date/time stamp of each of the found hyperlinked documents 116, as illustrated in block 304. Canvasser program 130 then checks whether the date/time stamp of the current hyperlinked document 116 stored in notify table 160 is different from the date/time stamp of the found hyperlinked document 116, as illustrated in block 305. If the date/time stamp of the current hyperlinked document 116 stored in notify table 160 is not different from the date/time stamp of the found hyperlinked document 116 then canvasser program 130 goes to block 304 whereupon canvasser program 130 compares the next found hyperlinked document 116. If the date/time stamp of the current hyperlinked document 116 stored in notify table 160 is different from the date/time stamp of the found hyperlinked document 116, then canvasser program 130 proceeds to block 306.
In block 306, canvasser program 130 proceeds to verify that a previous date/time stamp exists. If a previous date/time stamp exists, then canvasser program 130 preferably marks mode field 20 of the record as "U" for update. If no previous date/time stamp exists, then the document is a new one, and canvasser program 130 preferably marks mode field 20 as "N", for new. If no current date/time stamp exists, but a previous one existed, then obviously the document no longer exists and canvasser program 130 preferably marks mode field 20 as "D", for deleted. Canvasser program 130 then enters the record with mode field 20 and directory-filename field 28 into the working change table 162, as illustrated in block 306, and moves to block 307. In block 307, canvasser program 130 determines if there are other hyperlinked document 116 on web page 114, and if there are, then canvasser program goes to block 304 and gets the date/time stamp for the hyperlinked document 116. If there are no more hyperlinked document 116 in web page 114, then canvasser program 130 goes back to a preceding web page 114, which could be a menu or a submenu, as illustrated in block 308.
If there are no more menus or submenus, then canvasser program 130 exits or terminates, as illustrated in block 309. If there are more menus or submenus, then canvasser program 130 is instructed to go back to block 303 and trace each menu or submenu page down to leaf page to locate/identify hyperlinked documents 116. When the entire Internet web system has been traversed, canvasser program 130 archives the previous change table 162, and the current working change table 162 becomes the active "current" change table 162. While the above canvasser program 130 is described in relation to comparing date/time stamps, canvasser program 130 can compare found hyperlinked document 116 to current hyperlinked document 116 for changes in one of many ways known to those of ordinary skill in the art, as previously described.
Notify program compares directory-filename field 28 for records within notify table 160 with directory-filename field 28 for records within change table 162, as illustrated in block 403. A "match" between two fields indicates that a certain hyperlinked document 116 that has been subscribed-to for notification by a user as registered in the notify table 160, has a matching filename in the change table 162. All matches are selected out and assembled in one place and sorted by notify-id, as illustrated in block 404. Each notify-id segment is split out and the e-mail address of each notify-id is then obtained and a notify-memo is composed. Notify program then composes the matched filename for each hyperlinked document 116 with their URL, and marks the matched filename for each hyperlinked document 116 as being new, deleted, or updated and changed. In one preferred embodiment, the memo tells the user that this e-mail notice 132 was sent to notify the user of the changes, as illustrated in FIG. 15.
The notify-memo is then sent to the e-mail address of the notify-id for the user that is on notification for a certain hyperlinked document 116, as illustrated in block 405. Upon sending the notify-memo, notify program 140 checks whether there are more e-mail notices 132 to send, as illustrated in block 406. If there are more e-mail notices 132 to send, then notify program 140 goes back to block 405 and composes more e-mail notices 132 to send. If there are no more e-mail notices 132 to send, notify program 140 exits or terminates, as illustrated in block 407. While the above notify program 140 is described in relation to sending e-mail notices 132 to notify users, notify program 140 can notify users in one of many ways known to those of ordinary skill in the art, such as facsimile, telephone, mail, or any other means for notifying a user.
When the user clicks on report selection B, that is the selection for "For a set of Ids, what are they on-notify for?", report program B next prompts for the user for input for a set of notify-ids that the user is interested in, as illustrated in block 603. Report program B then matches the inputted set of notify-ids with the notify-ids in notify table 160, as illustrated in block 604. All matching notify-ids are selected out of notify table 160 and sorted by notify-id. A memo is then generated by report program B listing all the selected filenames as URLs, sorted first by notify-id and within the notify-id, sorted by filenames, as illustrated in block 605. The memo is then sent by program B to the user's e-mail address.
When the user clicks on report selection C, that is the selection for "For this filename, who are on-notify for it?", report program C next prompts the user for the specific filename the user is interested in, as illustrated in block 606. Report program C then matches the inputted filename with the filenames in notify table 160, as illustrated in block 607. All matching filenames are selected out of notify table 160 and sorted by notify-id. A memo is then generated listing all the selected records, sorted by notify-ids, as illustrated in block 608. This memo is then sent by program C to the user's e-mail address.
When the user clicks on report selection E, that is the selection for "For this department, who are on-notify for what file?", report program E next prompts the user for the department id the user is interested in, as illustrated in block 704. Report program E next get all the employees in the inputted department id from the company's directory, specifically the employees' serial numbers, as illustrated in block 705. Next, report program E matches the serial number with the user-ids in general notification system 100. Report program E then matches all the user-ids in the department with all the notify-ids in notify table 160, as illustrated in block 706. All matching notify-ids with their corresponding filenames are selected out of notify table 160, and sorted first by filename, then within filename by notify-ids. A memo is then generated listing all the selected records, as illustrated in block 707. The filenames are listed in their URL form. This memo is then sent by report program E to the user's e-mail address.
When the user clicks on report selection F, that is the selection for "List entire notify table by date requested.", report program F goes and gets the entire notify table 160, and sorts notify table 160 by date entry order, as illustrated in block 708. A memo is then generated by report program F listing the entire notify table 160, as sorted by date entry order, as illustrated in block 709. The filenames are listed in their URL form, and the memo is then sent by report program F to the user's e-mail address.
When the user clicks on report selection H, that is the selection for "List entire notify table by notify-id.", report program H goes and gets the entire notify table 160, and sorts notify table 160 by notify-id, as illustrated in block 803. A memo is then generated by report program H listing the entire notify table 160, as sorted by notify-id, as illustrated in block 804. The filenames are listed in their URL form and the memo is then sent by report program H to the user's e-mail address. An example of the results for report program H is illustrated in FIG. 18. In
When the user clicks on report selection I, that is the selection for "List entire notify table by user-id.", report program I goes and gets the entire notify table 160, and sorts notify table 160 by user-id, as illustrated in block 805. A memo is then generated by report program I listing the entire notify table 160, as sorted by user-id, as illustrated in block 806. The filenames are listed in their URL form and a memo is then sent by report program I to the user's e-mail address.
Report program J first determines whether the user-id is the id of the system administrator, as illustrated in block 901. If the user-id is the id of the system administrator, then report program J proceeds to block 903, if not, report program J prepares to exit the routine, and proceeds to block 902. At block 902, report program J sends a message to the user stating'that only the system administrator is allowed to execute this selection. At block 903, report program J sorts the entire notify table 160 by notify-id. Then, report program J bursts the entire sorted notify table 160 into separate files by notify-id chunks or segments, as illustrated in block 904. For each file, report program J generates a memo listing the filenames in URL format for the hyperlinked documents 116 the user is on notification for, as illustrated in block 905. The memo reminds the user that the user is on notification for the following hyperlinked documents 116. For each memo, report program J gets the e-mail address of the notify-id, and sends the memo to that address, as illustrated in block 906.
Notify-id field 24 contains the id of a user on notification for a particular hyperlinked document 116. For example, if a user enters a notification subscription for two files, having five notify-ids, there will in fact be ten records created in notify table 160: five records for the five user-ids for the first file, and five other records for the five user-ids for the second file. Entry-date field 26 contains the date and time the notification subscription was entered. In one preferred embodiment, entry-date field 26 contains a 14-digit number format. For example, if entry-date field 26 contains the number 20000226090502, entry-date field 26 actually reads Feb. 26, 2000 at 09 am, 05 minutes and 02 seconds. A number format for entry-date field 26 is preferred since a number format can be sorted in ascending or descending order. Directory-filename field 28 contains the path to the place where the file resides along with the filename.
It is to be understood that a wide range of changes and modifications to the embodiments described above will be apparent to those skilled in the art and are contemplated. It is therefore intended that the foregoing detailed description be regarded as illustrative, rather than limiting, and that it be understood that it is the following claims, including all equivalents, that are intended to define the spirit and scope of the invention.
Kelley, Edward E., Dauerer, Norman J., Te, George A.
Patent | Priority | Assignee | Title |
10057320, | Dec 01 2011 | Amazon Technologies, Inc. | Offline browsing session management |
10063618, | Aug 26 2011 | Amazon Technologies, Inc. | Remote browsing session management |
10089403, | Aug 31 2011 | Amazon Technologies, Inc | Managing network based storage |
10104188, | Jan 26 2012 | Amazon Technologies, Inc. | Customized browser images |
10116487, | Jun 30 2011 | Amazon Technologies, Inc. | Management of interactions with representations of rendered and unprocessed content |
10152463, | Jun 13 2013 | Amazon Technologies, Inc | System for profiling page browsing interactions |
10164993, | Jun 16 2014 | Amazon Technologies, Inc. | Distributed split browser content inspection and analysis |
10198451, | Nov 28 2005 | Commvault Systems, Inc. | Systems and methods for using metadata to enhance data identification operations |
10275433, | Jan 26 2012 | Amazon Technologies, Inc. | Remote browsing and searching |
10296558, | Feb 27 2012 | Amazon Technologies, Inc.; Amazon Technologies, Inc | Remote generation of composite content pages |
10326858, | May 23 2017 | SINCRO, LLC | System and method for dynamically generating personalized websites |
10332068, | Apr 21 2016 | CDK GLOBAL, LLC | Systems and methods for stocking an automobile |
10372672, | Jun 08 2012 | Commvault Systems, Inc. | Auto summarization of content |
10372675, | Mar 31 2011 | Commvault Systems, Inc. | Creating secondary copies of data based on searches for content |
10397145, | Mar 27 2001 | AT&T Intellectual Property I, L.P. | Systems and methods for automatically providing alerts of web site content updates |
10482475, | Feb 10 2011 | SINCRO, LLC | Systems and methods for providing targeted advertising |
10540516, | Oct 13 2016 | Commvault Systems, Inc. | Data protection within an unsecured storage environment |
10567346, | Feb 21 2012 | Amazon Technologies, Inc. | Remote browsing session management |
10642886, | Feb 14 2018 | Commvault Systems, Inc | Targeted search of backup data using facial recognition |
10664538, | Sep 26 2017 | Amazon Technologies, Inc. | Data security and data access auditing for network accessible content |
10693991, | Sep 27 2011 | Amazon Technologies, Inc | Remote browsing session management |
10708353, | Aug 29 2008 | Commvault Systems, Inc. | Method and system for displaying similar email messages based on message contents |
10726095, | Sep 26 2017 | Amazon Technologies, Inc. | Network content layout using an intermediary system |
10783129, | Oct 17 2006 | Commvault Systems, Inc. | Method and system for offline indexing of content and classifying stored data |
10853769, | Apr 21 2016 | CDK GLOBAL LLC | Scheduling an automobile service appointment in a dealer service bay based on diagnostic trouble codes and service bay attributes |
10867285, | Apr 21 2016 | CDK GLOBAL, LLC | Automatic automobile repair service scheduling based on diagnostic trouble codes and service center attributes |
10984041, | May 11 2017 | Commvault Systems, Inc. | Natural language processing integrated with database and data storage management |
11003626, | Mar 31 2011 | Commvault Systems, Inc. | Creating secondary copies of data based on searches for content |
11036679, | Jun 08 2012 | Commvault Systems, Inc. | Auto summarization of content |
11080105, | Nov 18 2020 | CDK GLOBAL, LLC | Systems, methods, and apparatuses for routing API calls |
11080734, | Mar 15 2013 | CDK GLOBAL, LLC | Pricing system for identifying prices for vehicles offered by vehicle dealerships and other entities |
11082489, | Aug 29 2008 | Commvault Systems, Inc. | Method and system for displaying similar email messages based on message contents |
11159469, | Sep 12 2018 | Commvault Systems, Inc | Using machine learning to modify presentation of mailbox objects |
11190608, | Mar 21 2018 | CDK GLOBAL, LLC | Systems and methods for an automotive commerce exchange |
11256665, | Nov 28 2005 | Commvault Systems, Inc. | Systems and methods for using metadata to enhance data identification operations |
11442820, | Dec 19 2005 | Commvault Systems, Inc. | Systems and methods of unified reconstruction in storage systems |
11443061, | Oct 13 2016 | Commvault Systems, Inc. | Data protection within an unsecured storage environment |
11494417, | Aug 07 2020 | Commvault Systems, Inc | Automated email classification in an information management system |
11501351, | Mar 21 2018 | CDK GLOBAL, LLC | Servers, systems, and methods for single sign-on of an automotive commerce exchange |
11514021, | Jan 22 2021 | CDK GLOBAL, LLC | Systems, methods, and apparatuses for scanning a legacy database |
11516289, | Aug 29 2008 | Commvault Systems, Inc. | Method and system for displaying similar email messages based on message contents |
11580066, | Jun 08 2012 | Commvault Systems, Inc. | Auto summarization of content for use in new storage policies |
11616856, | Mar 21 2018 | CDK GLOBAL, LLC | Systems and methods for an automotive commerce exchange |
11803535, | May 24 2021 | CDK GLOBAL, LLC | Systems, methods, and apparatuses for simultaneously running parallel databases |
11983145, | Aug 31 2022 | CDK GLOBAL, LLC | Method and system of modifying information on file |
6981225, | Jan 31 2000 | Intel Corporation | Indicating the differences between Internet web pages |
7363322, | Oct 04 2000 | Microsoft Technology Licensing, LLC | Methods and systems for performing reliable asynchronous notification of high-level document operations |
7624342, | Jan 24 2003 | CDK GLOBAL, LLC | Remote web site editing in a web browser without external client software |
7689667, | Feb 21 2002 | International Business Machines Corporation | Protocol to fix broken links on the world wide web |
7769712, | Dec 21 2005 | Decernis, LLC | Document validation system and method |
7814235, | Aug 11 2003 | Sony Corporation | Page data reception method, page data providing method, device thereof, and program |
7814413, | Apr 17 2003 | Oracle International Corporation | System and method for controlling web pages |
8037018, | Dec 21 2005 | Decernis, LLC | Document validation system and method |
8442983, | Dec 31 2009 | Commvault Systems, Inc | Asynchronous methods of data classification using change journals and other data structures |
8612714, | Nov 28 2005 | Commvault Systems, Inc. | Systems and methods for classifying and transferring information in a storage network |
8615431, | Sep 29 2011 | Amazon Technologies, Inc | Network content message placement management |
8615523, | Dec 22 2006 | Commvault Systems, Inc. | Method and system for searching stored data |
8627195, | Jan 26 2012 | Amazon Technologies, Inc. | Remote browsing and searching |
8719264, | Mar 31 2011 | Commvault Systems, Inc | Creating secondary copies of data based on searches for content |
8725737, | Nov 28 2005 | Commvault Systems, Inc. | Systems and methods for using metadata to enhance data identification operations |
8799412, | Jun 30 2011 | Amazon Technologies, Inc | Remote browsing session management |
8832406, | Nov 28 2005 | Commvault Systems, Inc. | Systems and methods for classifying and transferring information in a storage network |
8839087, | Jan 26 2012 | Amazon Technologies, Inc. | Remote browsing and searching |
8892523, | Jun 08 2012 | Commvault Systems, Inc | Auto summarization of content |
8914514, | Sep 27 2011 | Amazon Technologies, Inc | Managing network based content |
8930496, | Dec 19 2005 | Commvault Systems, Inc | Systems and methods of unified reconstruction in storage systems |
8943197, | Aug 16 2012 | Amazon Technologies, Inc | Automated content update notification |
8972477, | Dec 01 2011 | Amazon Technologies, Inc. | Offline browsing session management |
8990678, | Mar 27 2001 | AT&T Intellectual Property I, L P | Systems and methods for automatically providing alerts of web site content updates |
8996977, | Dec 10 2010 | International Business Machines Corporation | System, method, and computer program product for management of web page links |
9009334, | Dec 09 2011 | Amazon Technologies, Inc. | Remote browsing session management |
9037696, | Aug 16 2011 | Amazon Technologies, Inc. | Managing information associated with network resources |
9037975, | Feb 10 2012 | Amazon Technologies, Inc | Zooming interaction tracking and popularity determination |
9047296, | Dec 31 2009 | Commvault Systems, Inc. | Asynchronous methods of data classification using change journals and other data structures |
9087024, | Jan 26 2012 | Amazon Technologies, Inc. | Narration of network content |
9092405, | Jan 26 2012 | Amazon Technologies, Inc. | Remote browsing and searching |
9098542, | Nov 28 2005 | Commvault Systems, Inc. | Systems and methods for using metadata to enhance data identification operations |
9117002, | Dec 09 2011 | Amazon Technologies, Inc. | Remote browsing session management |
9137210, | Feb 21 2012 | Amazon Technologies, Inc | Remote browsing session management |
9152970, | Sep 27 2011 | Amazon Technologies, Inc | Remote co-browsing session management |
9158835, | Oct 17 2006 | Commvault Systems, Inc. | Method and system for offline indexing of content and classifying stored data |
9178955, | Sep 27 2011 | Amazon Technologies, Inc | Managing network based content |
9183258, | Feb 10 2012 | Amazon Technologies, Inc | Behavior based processing of content |
9195750, | Jan 26 2012 | Amazon Technologies, Inc. | Remote browsing and searching |
9195768, | Aug 26 2011 | Amazon Technologies, Inc.; Amazon Technologies, Inc | Remote browsing session management |
9208316, | Feb 27 2012 | Amazon Technologies, Inc | Selective disabling of content portions |
9253284, | Sep 27 2011 | Amazon Technologies, Inc. | Historical browsing session management |
9307004, | Mar 28 2012 | Amazon Technologies, Inc | Prioritized content transmission |
9313100, | Nov 14 2011 | Amazon Technologies, Inc | Remote browsing session management |
9330188, | Dec 22 2011 | Amazon Technologies, Inc | Shared browsing sessions |
9336321, | Jan 26 2012 | Amazon Technologies, Inc. | Remote browsing and searching |
9374244, | Feb 27 2012 | Amazon Technologies, Inc. | Remote browsing session management |
9383958, | Sep 27 2011 | Amazon Technologies, Inc | Remote co-browsing session management |
9418149, | Jun 08 2012 | Commvault Systems, Inc. | Auto summarization of content |
9460220, | Mar 26 2012 | Amazon Technologies, Inc | Content selection based on target device characteristics |
9460223, | Dec 10 2010 | International Business Machines Corporation | System, method, and computer program product for management of web page links |
9479564, | Dec 09 2011 | Amazon Technologies, Inc. | Browsing session metric creation |
9509652, | Aug 29 2008 | Commvault Systems, Inc. | Method and system for displaying similar email messages based on message contents |
9509783, | Jan 26 2012 | Amazon Technlogogies, Inc. | Customized browser images |
9529784, | Jan 26 2012 | Amazon Technologies, Inc. | Remote browsing and searching |
9578137, | Jun 13 2013 | Amazon Technologies, Inc | System for enhancing script execution performance |
9606994, | Nov 28 2005 | Commvault Systems, Inc. | Systems and methods for using metadata to enhance data identification operations |
9621406, | Jun 30 2011 | Amazon Technologies, Inc | Remote browsing session management |
9633064, | Dec 19 2005 | Commvault Systems, Inc. | Systems and methods of unified reconstruction in storage systems |
9635041, | Jun 16 2014 | Amazon Technologies, Inc | Distributed split browser content inspection and analysis |
9639529, | Dec 22 2006 | Commvault Systems, Inc. | Method and system for searching stored data |
9641637, | Sep 27 2011 | Amazon Technologies, Inc | Network resource optimization |
9723067, | Mar 28 2012 | Amazon Technologies, Inc. | Prioritized content transmission |
9772979, | Aug 08 2012 | Amazon Technologies, Inc | Reproducing user browsing sessions |
9830400, | Aug 16 2012 | Amazon Technologies, Inc. | Automated content update notification |
9866615, | Dec 09 2011 | Amazon Technologies, Inc. | Remote browsing session management |
9870426, | Aug 16 2011 | Amazon Technologies, Inc. | Managing information associated with network resources |
9898542, | Jan 26 2012 | Amazon Technologies, Inc. | Narration of network content |
9967338, | Aug 29 2008 | Commvault Systems, Inc. | Method and system for displaying similar email messages based on message contents |
9996430, | Dec 19 2005 | Commvault Systems, Inc. | Systems and methods of unified reconstruction in storage systems |
ER264, | |||
ER5447, | |||
ER8639, |
Patent | Priority | Assignee | Title |
5675753, | Apr 24 1995 | Qwest Communications International Inc | Method and system for presenting an electronic user-interface specification |
5813007, | Jun 20 1996 | Oracle America, Inc | Automatic updates of bookmarks in a client computer |
5860071, | Feb 07 1997 | HANGER SOLUTIONS, LLC | Querying and navigating changes in web repositories |
5870769, | Apr 18 1997 | GOOGLE LLC | Internet access system and method with active link status indicators |
5898836, | Jan 14 1997 | NETMIND TECHNOLOGIES, INC | Change-detection tool indicating degree and location of change of internet documents by comparison of cyclic-redundancy-check(CRC) signatures |
6088707, | Oct 06 1997 | International Business Machines Corporation | Computer system and method of displaying update status of linked hypertext documents |
6219818, | Jan 14 1997 | Nokia Corporation; Intellisync Corporation | Checksum-comparing change-detection tool indicating degree and location of change of internet documents |
6321242, | Feb 06 1998 | Oracle America, Inc | Re-linking technology for a moving web site |
6341290, | May 28 1999 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | Method and system for automating the communication of business information |
6347320, | Apr 30 1998 | TWITTER, INC | Search parameters |
6393437, | Jan 27 1998 | Microsoft Technology Licensing, LLC | Web developer isolation techniques |
6632142, | Jul 31 2001 | SYNERGEE, INC | Internet gaming with multiple web sites |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Nov 30 1999 | TE, GEORGE A | International Business Machines Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 010420 | /0140 | |
Nov 30 1999 | KELLEY, EDWARD E | International Business Machines Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 010420 | /0140 | |
Nov 30 1999 | DAUERER, NORMAN J | International Business Machines Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 010420 | /0140 | |
Dec 01 1999 | International Business Machines Corporation | (assignment on the face of the patent) | / | |||
Jun 29 2016 | International Business Machines Corporation | DROPBOX, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 043938 | /0489 | |
Apr 03 2017 | DROPBOX, INC | JPMORGAN CHASE BANK, N A , AS COLLATERAL AGENT | SECURITY INTEREST SEE DOCUMENT FOR DETAILS | 042254 | /0001 | |
Mar 05 2021 | DROPBOX, INC | JPMORGAN CHASE BANK, N A , AS COLLATERAL AGENT | PATENT SECURITY AGREEMENT | 055670 | /0219 | |
Dec 11 2024 | JPMORGAN CHASE BANK, N A , AS COLLATERAL AGENT | DROPBOX, INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 069635 | /0332 |
Date | Maintenance Fee Events |
Sep 19 2007 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Apr 16 2012 | REM: Maintenance Fee Reminder Mailed. |
Aug 16 2012 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Aug 16 2012 | M1555: 7.5 yr surcharge - late pmt w/in 6 mo, Large Entity. |
Apr 08 2016 | REM: Maintenance Fee Reminder Mailed. |
Nov 08 2017 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Nov 08 2017 | M1558: Surcharge, Petition to Accept Pymt After Exp, Unintentional. |
Nov 08 2017 | PMFG: Petition Related to Maintenance Fees Granted. |
Nov 08 2017 | PMFP: Petition Related to Maintenance Fees Filed. |
Date | Maintenance Schedule |
Aug 31 2007 | 4 years fee payment window open |
Mar 02 2008 | 6 months grace period start (w surcharge) |
Aug 31 2008 | patent expiry (for year 4) |
Aug 31 2010 | 2 years to revive unintentionally abandoned end. (for year 4) |
Aug 31 2011 | 8 years fee payment window open |
Mar 02 2012 | 6 months grace period start (w surcharge) |
Aug 31 2012 | patent expiry (for year 8) |
Aug 31 2014 | 2 years to revive unintentionally abandoned end. (for year 8) |
Aug 31 2015 | 12 years fee payment window open |
Mar 02 2016 | 6 months grace period start (w surcharge) |
Aug 31 2016 | patent expiry (for year 12) |
Aug 31 2018 | 2 years to revive unintentionally abandoned end. (for year 12) |