`Greer et al.
`
`US006009429A
`Patent Number:
`11
`(45) Date of Patent:
`
`6,009,429
`Dec. 28, 1999
`
`54) HTML GUIDED WEB TOUR
`75 Inventors: Timothy Dan Greer, Endicott; William
`Francis Phillips, Owego; Will Joseph
`Roden, Jr., Apalachin, all of N.Y.
`73 Assignee: International Business Machines
`Corporation, Armonk, N.Y.
`
`Johnson, Andrew et al., “Automatic Touring in a Hypertext
`System”, Twelfth Annual International Phoenix Conference
`on Computers and Communications, 1993, Mar. 23-26,
`1993, pp. 524–530.
`“Virtual Guided Tour,” Lauriston Girls School, Aug. 1996.
`“Excite Launches a Web Tour Service.” Web Week, vol. 2,
`Issue 16, Oct. 21, 1996, by Whit Andrews.
`Learning
`“Touring
`and
`Navigating
`a
`Global
`21 Appl. No.: 08/969,623
`Environment–the Web,” Computer Networks and ISDN
`22 Filed:
`Nov. 13, 1997
`Systems, vol. 26, Suppl., No. 2-3, pp. S71-S74, 1994, by
`Crowcroft and Joly.
`51 Int. Cl." - G06F 17/30
`52 U.S. Cl. ................................. 707/10; 707/2; 707/501;
`“JavaScript Sourcebook,” by Gordon McComb (John Wiley
`707/513; 709/218
`& Sons, 1996).
`58 Field of Search .................................. 707/2, 10, 501,
`“Browsing the WWW by interacting with a textual virtual
`707/513; 345/326,335, 336,357; 395/200.47,
`environment, 7th ACM Conference of Hypertext 96, pp.
`200.48, 200.49; 709/218, 202, 229
`170–179, 1996, Mar. 1996, by A. Dieberger.
`
`56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,572,643 11/1996 Judson .................................... 395/793
`5,701,451 12/1997 Rogers et al. ...
`5,710,918
`1/1998 Lagarde et al. ........................... 707/10
`5,712,979
`1/1998 Graber et al. ...................... 395/200.11
`5,721.908 2/1998 Lagarde et al. ........................... 707/10
`5,742,768 4/1998 Gennaro et al. ..
`... 395/200.33
`5,749,075 5/1998 Toader et al. ............................. 705/14
`5,752,246
`5/1998 Rogers et al. ............................ 707/10
`5,794,259 8/1998 Kikinis .................................... 707/507
`5,809,247 9/1998 Richardson et al. ............... 395/200.48
`OTHER PUBLICATIONS
`Burke, Robin D. et al., “The Find Me Approach to Assisted
`Browsing", IEE Expert, vol. 12, Issue 4, Jul-Aug. 1997, pp.
`32-40.
`Gilles, Jeff et al., “A Guided Tour Through a Window
`Oriented Debugging Environment for Embedded RealTime
`Ada Systems”, Third International IEEE Conference on Ada
`Applications and Environments, 1998., May 23–25, 1988,
`pp. 93-103.
`
`Primary Examiner Wayne Amsbury
`ASSistant Examiner Shahid Alam
`Attorney, Agent, or Firm. Whitham, Curtis & Whitham;
`Arthur J. Samodovitz
`57
`ABSTRACT
`A guided tour of some portion of the World Wide Web
`(WWW) works as part of an ordinary web page, can be
`served by any web server, and can be used by web browsers
`without additional Software. The System guides a user
`through a tour by displaying in Sequence actual web pages
`in the tour along with a corresponding teaching web page.
`The teaching web page includes educational information
`about the current web page. The tour includes commentary,
`allowance for Side trips, true Visiting of the tour pages, not
`mere copies, maps, and “static' (user clicks for next page)
`and “dynamic' (a timer controls how long a tour page is
`on-screen) tours.
`
`11 Claims, 8 Drawing Sheets
`
`10
`
`OPEN BOOKMARKHT.
`
`7
`
`YES
`PAGECOUN = 0
`
`s
`
`74
`
`REA) UR FROM BOOKMARKHM
`
`75
`
`YES
`PAGECOUNT = PAGECOME + 1
`
`6
`
`
`
`RITE
`TOURPAGEPAGECOUNT - URL
`IX TASKHTK.
`
`YRTE
`COMMENT:PAGECOUNT) = BLANK.HTML
`TASKHT.
`
`MORE
`ENTRIES
`NO
`RTE
`PAGECOUKIN TASK.HTM
`
`
`
`8
`
`RE DEFAULT GLOBAL
`ARIABLES IN TASK.HTM
`
`8-->
`
`Facebook's Exhibit No. 1003
`Page 1
`
`
`
`U.S. Patent
`
`Dec. 28, 1999
`
`Sheet 1 of 8
`
`6,009,429
`
`
`
`toSkFrome
`
`urFrome
`
`CmtFrome
`12
`
`FIG.1
`
`Facebook's Exhibit No. 1003
`Page 2
`
`
`
`U.S. Patent
`
`Dec. 28, 1999
`
`Sheet 2 of 8
`
`6,009,429
`
`
`
`Location: file//a:/setup.htm
`
`VM Web
`Tour
`
`NEXT
`
`al
`
`VM Operating Sy.
`
`s % % % 3 % %
`
`Web Tools for VM
`
`Want to know more about the products OVailable for serving
`Intronet and internet p0ges? Make VM the heart of your Internet
`and/or intronet with One of these popular web server products:
`w
`<
`H
`2D
`a
`http://www.vm.ibm.com/news/Webstuff.html
`
`FIG.2
`
`Facebook's Exhibit No. 1003
`Page 3
`
`
`
`US. Patent
`
`Dec. 28, 1999
`
`Sheet 3 0f 8
`
`6,009,429
`
`”’7.
`
`2 L
`
`L.
`
`ma:
`
`AV2333
`
`.288
`
`AV3335
`
`.288
`
`mm
`
`SBEEEQ
`
`9.:an
`
`Facebook's Exhibit No. 1003
`
`Page 4
`
`F.Egowoan_
`
`on
`
`oE38038Amm_
`
`5
`
`MEm_
`
`mzoESE
`
`Cuncosge
`
`Facebook's Exhibit No. 1003
`Page 4
`
`
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Dec. 28, 1999
`
`Sheet 4 of 8
`
`6,009,429
`
`
`
`
`
`
`
`parent.
`UrFrome.
`location.
`href=
`tourPages(next)
`
`parent.
`CmtFrome.
`location.
`href=
`Comment(next)
`
`S
`ext X pogeCour
`
`40
`
`4.
`
`43
`
`44
`YES
`
`45
`
`NO - a?
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`FIG.4
`
`Calc. eTime:
`eme = 1000
`parseint(
`parent.
`taskframe.
`document.
`myTour.
`myTime.
`value)
`
`Set timer:
`tinner =
`setTimeOut
`"displayN(),
`eTime
`
`47
`
`49
`
`Facebook's Exhibit No. 1003
`Page 5
`
`
`
`U.S. Patent
`
`Dec. 28, 1999
`
`Sheet 5 of 8
`
`6,009,429
`
`
`
`Sp0ge in
`"Single Step" mode
`(
`1)
`
`
`
`stopTimer()
`
`
`
`
`
`
`
`
`
`
`
`parent.
`toSKFrOme,
`document,
`myTour.
`myMode.
`Value =
`"Single Step"
`
`is next
`poge less than Zero
`(next k= 0)
`
`next =
`pogeCount
`
`displayN()
`
`parent,
`toskrOme.
`document.
`myTour.
`myMode.
`Volue =
`"Run
`
`66
`
`FIG.6
`
`Facebook's Exhibit No. 1003
`Page 6
`
`
`
`U.S. Patent
`
`Dec. 28, 1999
`
`Sheet 6 of 8
`
`6,009,429
`
`
`
`toskframe
`(task.htm)
`
`Form:myTour
`
`urFrome
`(blank.htm)
`then from tourPager array
`
`Direct Link 1
`Direct Link 2
`Direct Link 3
`
`CmtFrome
`(blank.htm)
`then from Comment array
`
`FIG.7
`
`Facebook's Exhibit No. 1003
`Page 7
`
`
`
`U.S. Patent
`
`Dec. 28, 1999
`
`Sheet 7 of 8
`
`6,009,429
`
`72
`
`EXIT
`
`70
`
`OPEN BOOKMARK.HTM
`
`71
`
`73
`
`<> NO
`
`YES
`PAGECOUNT = O
`
`
`
`
`
`74
`
`READ URL FROM BOOKMARK.HTM
`
`75
`
`76
`
`PAGECOUNT = PAGECOUNT + 1
`
`7
`7
`
`78
`
`WRITE
`TOURPAGE(PAGECOUNT) = URL
`IN TASK.HTM
`
`WRITE
`COMMENT(PAGECOUNT) = BLANK.HTML
`IN TASK.HTM
`
`
`
`80
`
`8
`
`79
`
`MORE
`ENTRIES
`
`NO
`WRITE
`PAGECOUNT IN TASK.HTM
`
`WRITE DEFAULT GLOBAL
`VARIABLES IN TASK.HTM
`
`FIG.8
`
`82
`
`Facebook's Exhibit No. 1003
`Page 8
`
`
`
`U.S. Patent
`
`Dec. 28, 1999
`
`Sheet 8 of 8
`
`6,009,429
`
`85
`
`USER REQUESTS SEARCH
`
`84
`
`LIST OF WEB PAGES (AND
`POSSIBLY COMMENTS) RETURNED
`
`
`
`DATABASE INTERFACE WRITES
`THE URLS INTO THE TOURPAGES
`ARRAY IN TASK.HTM
`
`86
`
`87
`
`DATABASE INTERFACE WRITES COMMENTS IN THE
`COMMENT ARRAY IN TASKHTMF ANY ARE RETURNED.
`OTHERWISE WRITES BANK.HTML N THE COMMENT ARRAY.
`
`DATABASE INTERFACE WRITES THE GLOBAL VARABLES
`PAGECOUNT, NEXT, STEP, TIMERON, AND TIMERH
`INTO TASK.HTM
`
`START
`TOUR
`
`FIG.9
`
`Facebook's Exhibit No. 1003
`Page 9
`
`
`
`1
`HTML GUIDED WEB TOUR
`
`6,009,429
`
`BACKGROUND OF THE INVENTION
`1. Field of the Invention
`The present invention generally relates to networked
`databases, Such as the Internet, and, more particularly, to a
`computer implemented method of providing a user of the
`Internet with a guided tour of the World Wide Web (WWW)
`or Similar information databases.
`2. Background Description
`The Internet is a collection of networks that allows users
`at disparate, heterogeneous computer Systems to communi
`cate with each other acroSS organizational and geographical
`boundaries. The Internet uses a packet Switched protocol
`referred to as the Transmission Control Protocol/Internet
`Protocol (TCP/IP). Full Internet access usually includes five
`key features; electronic mail (e-mail), logging on to Internet
`connected computers using Telnet, transferring files from
`Internet-connected computers using File Transfer Protocol
`(FTP), getting access to discussion groups, and using vari
`ous information-research tools, especially the World Wide
`Web (WWW). The present invention is particularly con
`cerned with the World Wide Web.
`The World Wide Web is a hypertext-based information
`Service that makes collections of information available
`across the Internet. It allows Web browser clients to access
`information from any accessible Web server and Supports
`multiple media types. The World Wide Web can be used to
`invoke other software by means of embedded hypertext
`links. Hypertext Markup Language (HTML) is used to
`describe Static text documents, and a Web browser is essen
`tially an HTML interpreter. A Uniform Resource Locator
`(URL) is basically a network location which tells the user
`not only where Something is (its address), but also what it is.
`The basic form of a URL address is service://hostname/path
`which identifies what Internet Service is needed to reach the
`resource, what computer it is located on, and enough detail
`to find what is being Searched for.
`Embedded hypertext links on a given Web page can be
`used to find information related to the given Web page. By
`clicking on a hypertext link in one Web page, the user can
`display another related Web page or even invoke a related
`program. With the explosion of information on the World
`Wide Web, there are many potential new users who would
`like to Search for information on the World Wide Web. The
`problem is that there is no effective interactive system for
`guiding a user through a tour of the World Wide Web which
`uses actual Web pages.
`There are three fairly obvious existing methods to guide
`a Surfing session. One is simply to create an HTML file with
`commentary and links to the Sites on the tour. Of course, in
`this case one must back up from each Site to be presented
`with the next link. The second way is the web equivalent of
`Simulation; i.e., make copies of all pages on the tour, Save
`them on your own web page, and modify them as Suits your
`purposes. A third way is similar to the Second except more
`automatic; e.g., Surf indirectly via a Common Gateway
`Interface (CGI) script which inserts modifications into the
`tour page before forwarding them to the end user.
`SUMMARY OF THE INVENTION
`It is therefore an object of the present invention to provide
`a guided tour of some portion of the World WideWeb which
`Works as part of an ordinary web page, can be served by any
`web server, and can be used by web browsers without
`additional Software.
`
`5
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`It is another object of the invention to provide a World
`Wide Web tour in which commentary is incorporated into a
`regular web page and can include HTML formatting,
`graphics, applets, links, etc.
`According to the invention, there is provided a System for
`guiding a user through a tour of the World Wide Web
`(WWW) on the Internet. The system displays an actual web
`page in the tour along with a teaching web page. The
`teaching web page may include educational information
`about the current web page and the WWW Surfing process
`including an indication of the next page on the tour to be
`Selected from the actual web page. The tour includes
`Commentary,
`Allowance for Side trips,
`True Visiting of Sites, not just Simulation,
`Maps, and
`“Static" (user clicks for next page) and “Dynamic" (a
`timer controls how long a tour page is on-screen) tours.
`In the preferred embodiment of the invention, we split the
`web browser So that it fetches two (or more) pages at once.
`One page is the next page on the tour. The other page(s)
`is(are) the commentary for the tour page and the where-to
`go-from-here information.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`The foregoing and other objects, aspects and advantages
`will be better understood from the following detailed
`description of a preferred embodiment of the invention with
`reference to the drawings, in which:
`FIG. 1 is a diagram showing the layout of the Screen into
`three frames in accordance with a preferred embodiment of
`the invention;
`FIG. 2 is a Screen print showing an example of a Screen
`divided into three frames as defined in the diagram of FIG.
`1;
`FIG. 3 is a flow diagram showing the logic of the display
`a specific page function according to the invention;
`FIG. 4 is a flow diagram showing the logic of the display
`a next page function according to the invention;
`FIG. 5 is a flow diagram showing the logic of the stop
`timer function according to the invention;
`FIG. 6 is a flow diagram showing the logic of the toggle
`function for Switching between run mode and Single Step
`mode according to the invention;
`FIG. 7 is a diagram similar to FIG. 1 illustrating how the
`Several functions implemented by the invention are used;
`FIG. 8 is a flow diagram showing how a browser's hotlist
`can be used to generate a guided tour; and
`FIG. 9 is a flow diagram showing the steps involved in
`presenting the output of a database Search as a guided tour.
`
`DETAILED DESCRIPTION OF A PREFERRED
`EMBODIMENT OF THE INVENTION
`The preferred embodiment of this invention is imple
`mented using the JavaScript programming language jointly
`developed by Sun MicroSystems, Inc., and Netscape
`Communications, Inc. JavaScript is an object oriented pro
`gramming language characterized by programs built of
`objects in which each object includes definitions of func
`tions which may act on the object. These functions are
`referred to herein as JavaScript routines.
`Referring now to the drawings, and more particularly to
`FIG. 1, there is shown a diagram of a computer Screen on a
`
`Facebook's Exhibit No. 1003
`Page 10
`
`
`
`6,009,429
`
`15
`
`35
`
`45
`
`25
`
`3
`client's computer, referred to herein as the browser's Screen.
`The browser's screen is divided into three frames by the
`parent, initial frame. The large frame 11, referred to as the
`urlFrame, contains the referenced web site. Below the
`urlFrame 11 is another frame 12, referred to as the comment
`frame or cmtFrame, which contains the comments that were
`provided by the person compiling the tour. To the left of
`these frames is a third frame 13, referred to as the taskFrame,
`which contains the interface to operate the tour. This func
`tion could also be provided in the comment frame, in which
`case only two frames would be used.
`An alternative user interface to accomplish the same thing
`would be to make only the tour frame visible, except overlay
`it according to directions from the third frame 13. For
`instance, we might overlay a circle around the link intended
`as the next hop on the tour, and pop up commentary
`windows based on mouse-over events. However, imple
`menting this would require additional Software on the cli
`ent's WorkStation and, therefore, is not the preferred embodi
`ment.
`FIG. 2 is a screen print of an example of the browser's
`Screen divided according to the frames as shown in FIG. 1.
`In this example, the url Frame 11 displays a Web site for
`International Business Machines (IBM) Corporation's Vir
`tual Machine (VM) operating system. The comment frame
`or cmtFrame 12 provides comments about the Web site, in
`this case the address and content of the Web site. Finally, the
`taskFrame 13 provides the user interface to control the tour.
`The JavaScript, which is running in the parent frame,
`controls the tour. It times the changes, changes the contents
`of the urlframe 11 and comment frame 12, and it receives
`input from the user input in the taskFrame 13. A simple tour
`map is displayed at the bottom of taskFrame 13, showing a
`short title of each tour stop (“S/390”, “VM Home-Page”,
`etc.). The tour route could be displayed as an edge/node
`network, using color to indicate main route, Side trips, user's
`path and current location, etc. This would belong in a pop-up
`window.
`To start the tour, the user points his or her browser at
`40
`“http://www. . . . /Start.HTM", where “. . .” is the URL
`address of the Web site desired. The starting HTML file
`contains all of the JavaScript routines, both of the arrays
`defining the tour, and all of the global variables. It divides
`the Screen into the three frames, urlframe, cmtFrame and
`taskFrame.
`The main function of this invention is to present Several
`guest Web sites in a specific sequence. We refer to these Web
`Sites as “tour web pages” and present them in the urlframe.
`When this frame is initially presented, a BLANK HTML is
`written into this frame. BLANK HTML just consists of
`“html><head></head><body></body></html>'. Later, in
`the initialization process, this frame will be filled with the
`first guest Web site.
`The commentary about the guest Web site is placed in the
`cmtFrame. We refer to these Web sites as the “comment web
`pages”. One of these HTML files can be generated for each
`guest Web Site presented or a generic one may be used.
`When the frame is initially presented, BLANK HTML is
`written into this frame; however, it will be filled in with the
`first comment html later in the initialization process.
`The html, Task.HTM, that is written into the taskFrame
`writes the initial values of the customizing arrays and
`variables in the parent frame. There are two arrays, one with
`a list of URLs containing “tour web pages” and the other
`with a list of the URLs of the “comment web pages”.
`Typically, the “tour web pages” are full URLs, and the
`
`50
`
`55
`
`60
`
`65
`
`4
`“comment web pages” are relative URLs and reside on the
`web site with the Start.HTM and the Task.HTM. Variables
`are needed to indicate how many elements are in the arrayS,
`the default mode, and the default display time. Each new
`application requires a new taskFrame, that is, a new
`Task.HTM. This frame also contains the controls for the
`Web Tour. As shown in FIG. 2, there is a “change mode”
`push button 21 that will change the mode the Web Tour is
`using from “run” to “single step” or back. The current mode
`is displayed in an input box 22 which, in this example, is
`“single Step”. Another input box 23 contains the delay time
`that will be used when in “run” mode before the next page
`will be requested. The remainder of the frame 24 contains
`direct links to each Stop on the tour. This gives the user a
`map and allows the user to jump to any location on the tour.
`To implement these functions, four JavaScript functions
`have been written. These are “displayI()”, “displayN()”,
`“stopTimer()”, and “chgMode()”. These are illustrated by
`way of the flow diagrams of FIGS. 3 to 6, respectively. The
`arrays are “tourPages”, a list of “tour web site” URLs, and
`“comment”, a list of “comment web site” URLs. The global
`variables are the following:
`page Count-the number of pages to be displayed and the
`number of valid entries in the arrayS.
`next-the next page to be displayed.
`step-step mode (1) or run mode (0).
`timerOn-timer on (1) or off (0).
`timerH-the handle for the currently running timer.
`Referring now to FIG. 3, the flow diagram for the Java
`Script “displayI(i)” routine is shown. The purpose of this
`JavaScript routine is to display a specific page, now. The
`argument is the index of the arrays to be displayed (i), where
`i is the input argument for the page to be displayed. The
`process begins in decision block 30 where a test is made to
`determine if i is greater than pageCount. If So, i is Set to
`equal pageCount in function block 31; otherwise or after
`Setting i equal to pageCount, the parent.Stoptimer() function
`is executed in function block 32. The parent.Stoptimer()
`function is the stop timer function illustrated in FIG. 5. It
`turns off a countdown timer whose expiration causes
`displayN(), shown in FIG. 4, to be executed. The next page
`is set to i in function block 33, then the parent.displayN()
`function is executed in function block 34. The
`parent.displayN() function is the display function which
`replaces whatever is in urlframe with the web page indi
`cated by tourPages(next), replaces whatever is in cmtFrame
`with the web page indicated by comment(next), and incre
`ments the global variable “next”. If in the “run” mode, the
`parent.displayN( ) function starts the countdown timer
`whose expiration will cause the displayN() function to again
`be executed.
`Referring next to FIG. 4, there is shown the flow diagram
`from the JavaScript displayN() routine which displays the
`page indicated by the “next variable. The local variable is
`"eTime' which is the event time or the number of seconds
`as obtained from the input box of the taskframe converted
`to the number of JavaScript timer events (e.g., sec 1000).
`The stopTimer() function is executed in function block 40
`to Start the process. Then, in function block 41, the paren
`t.urlFrame.location.href is set to tourPages(next) which
`replaces whatever is in urlframe with the web page indi
`cated by tourPages(next). This followed in function block 42
`by Setting the parent.cmtFrame.location.href to comment
`(next) which replaces whatever is in cmtFrame with the web
`page indicated by comment(next). The next argument is
`incremented by one in function block 43, and then a test is
`
`Facebook's Exhibit No. 1003
`Page 11
`
`
`
`6,009,429
`
`15
`
`40
`
`45
`
`25
`
`S
`made in decision block 44 to determine if the next argument
`is greater than pageCount. If So, next is Set to one in function
`block 45; otherwise or after Setting next to one, a test is made
`in decision block 46 to determine whether the process is in
`the run mode. If So, the event time is calculated in function
`block 47, the timer is set to the event time in function block
`48, and the timer is turned on in function block 49.
`Referring next to FIG. 5, the flow diagram for the Java
`Script stopTimer() routine is shown. The purpose of this
`routine is to Stop the timer if it is running. The proceSS
`begins in decision block 51 to determine whether the timer
`is on. If no, the time out period is cleared in function block
`52, and the timerOn value is set to Zero in function block 53.
`The flow diagram for the JavaScript chgMode() routine
`is shown in FIG. 6. The purpose of this routine is to toggle
`between the run mode and the Single Step mode; that is, if the
`page is in the run mode, it is placed in the Single Step mode,
`but if it is in the Single Step mode, it is placed in the run
`mode. The process begins in decision block 60 where a test
`is made to determine if the page is in the Single Step mode.
`If So, the mode is toggled to run mode in function block 61,
`and next page is decremented by one in function block 62.
`A test is then made in decision block 63 to determine if the
`next page is less than Zero. If So, the next page is Set to
`page Count in function block 64; otherwise or when next
`page is set to pageCount, the displayN() routine (FIG. 4) is
`called in function block 65. The parent.tastFrame.document
`.myTour.myMode.value is set to run in function block 66.
`This Sets the tour mode to “run”, which causes new pages to
`be loaded periodically, as controlled by the “eTime' variable
`by means of the timer without further user intervention (i.e.,
`no clicks required).
`Returning to decision block 60, if the page is set in run
`mode, it is toggled to Single Step mode in function block 67,
`and the stopTimer() function (FIG. 5) is called in function
`35
`block 68. The parent. task Frame. document. my
`Tour.myMode.Value is set to Single Step in function block
`69. This sets the tour mode to “single step” mode, requiring
`the user to click on the “next' button in the taskFrame in
`order to move to the next stop on the tour.
`FIG. 7 provides an illustration of how the functions of
`FIGS. 3 to 6 are used. When Start.HTM is loaded, the two
`arrays, tourPages and comment, are initialized. AS men
`tioned above, tourPages is the list of “tour web site” URLS,
`and comment is the list of “comment web site” URLS. The
`Several global variables are also initialized at this time.
`These are pageCount, next, Step, timerOn, and timerH, as
`described above. The three frames, taskFrame, url Frame and
`cmtFrame, are created, and Task.HTM is loaded into
`taskFrame, BLANK.HTM is loaded into urlframe and
`BLANK.HTM is loaded into cmtFrame. When Task.HTM is
`loaded into taskFrame, document.myTour.myMode. Value is
`Set to run, parent.timerOn is Set to Zero, document.myTour
`myTime.value is set to thirty (a default value), the direct
`links are set up as anchor tags, and the JavaScript displayI(1)
`routine is run. When displayI(1) is run, the first element in
`the tourPages array is loaded into the urlframe and the first
`element of the comment array is loaded into the cmtFrame.
`When “next” is pressed, the JavaScript displayN() routine
`is run. When “Chg Mode” is pressed, the JavaScript
`chgMode() routine is run. When one of the direct links is
`clicked, the JavaScript displayI(X) routine is run where X is
`the number of the Web tour page to be loaded.
`An aspect of the invention is the provision for automatic
`creation of a tour based on a user's free-ranging Web Surfing.
`One way to accomplish this is to Surf indirectly. A CGI script
`acts as the proxy fetching and forwarding pages to the Surfer
`
`50
`
`55
`
`60
`
`65
`
`6
`and also creating the “taskFrame' information for each page
`as a new page it Selected. The commentary could either be
`added later or returned from a separate is browser window
`via a fill-out form. A less thorough but more easily imple
`mented automatic tour creation method would be to Send the
`information in the history variable to a CGI script which
`would then create the tour.
`The “Web Guided Tour” applies to several aspects of
`education, marketing, and other types of communication. It
`can be a tool that allows a person's favorite web pages to be
`displayed along with comments that were added by the
`perSon creating the web tour. This provides a way to
`introduce a visitor to a specific web site and to provide more
`information than can be displayed on an initial web page.
`For example, a web site could display Several applications
`that demonstrate features of a product or Several ways that
`the product could Save a customer money. To obtain this
`information, the web visitor would just click on the link to
`the tour.
`The invention can also be used for education by taking the
`user on a tour of Web Sites and asking the user questions
`about each one. The questions and a Space to answer them
`would be in the comment area. Before the next web site is
`Selected, the answers to the questions would be Submitted to
`the teacher for grading.
`If a projection unit is attached to the computer (as is
`commonly used for transparencies), the web lesson could be
`presented to an entire class. This would Supplement current
`distance learning techniques. An advantage of this technique
`is the author of the referenced web pages would be able to
`keep their own information up to date.
`When the web data resides on a disk drive instead of the
`web, the invention allows an automated Slide show, provid
`ing the ability to do Kiosk type continuous demonstrations.
`This would be useful at a demonstration booth or in a mall.
`The customer's ability to manually guide the tour allows the
`customer to focus the tour on areas of interest to them.
`Finally, when the web distribution of Sound and video
`become more popular, this could be used to present movies
`that are guided by the user.
`The invention may be practiced in various alternative
`embodiments. For example, the frame 13 shown in FIG. 1
`could be divided into two frames. The first frame could
`consist of the controls “Next”, “Chg Mode”, “Mode”, and
`"Time'. The second frame would then contain the direct
`links. This would allow the direct links to be loaded from
`arrays and then viewed while keeping the controls visible.
`Implementation of this would require a third array to contain
`the text shown in the list. A default comment frame could be
`created for frame 12 that would contain and load the URL
`for the frame displayed in the URL frame 11.
`Another automatic method for crating a tour would be to
`use the browser's “hotlist” or “bookmarks” to provide the
`list of tour pages. In this implementation, a Standalone
`program processes the user's bookmark.htm to generate the
`Task.HTM file. A flow diagram for this program is shown in
`FIG.8. In function block 70, the program attempts to open
`the user's bookmark.htm file. A test is made in decision
`block 71 to determine if the file exists and, if not, the
`program exits at function block 72. If the bookmark.htm file
`does exist, the “page Count variable is initialized to Zero in
`function block 73. The first URL is read from bookmark.htm
`in function block 74 and tested for validity in decision block
`75. If the URL is not valid, the program jumps to block 79
`and tests for more entries.
`If the URL is valid, the “pageCount” variable is incre
`mented in block 76 and the URL is written out to Task.HTM
`
`Facebook's Exhibit No. 1003
`Page 12
`
`
`
`7
`into the tourPages array in function block 77. Function block
`78 writes the BLANK.HTML into the comment array since,
`as this tour is being generated from the user's "hotlist', there
`are no comments to add to the tour.
`Decision block 79 tests bookmark.htm for more is entries
`and, if more are present, the program loops back to function
`block 74. If no more entries are present, then the program
`writes the “page Count” variable into Task.HTM in function
`block 80. The program also writes the default values for the
`global variables “next”, “step”, “timerOn’, and “timerH” in
`to Task.HTM in function block 81. The program then exits
`at function block 82. the user can now load Start.HTM and
`use Task.HTM to run a tour of “hotlist” pages.
`Output from database Searches can also be used to provide
`a list of pages for a tour. In this case, the database interface
`must be designed to return a list of found web pages in the
`same format as Task.HTM. A block diagram of a typical
`implementation of this method is shown in FIG. 9. In block
`83, the user requests a search that will result in a list of web
`pages returned from a database. In block 84, the list of pages
`and, depending on the database, comments are returned. In
`block 85, the database interface writes the list of URLs out
`as the tourPages array in Task.HTM. In block 86, the
`database interface writes the comments into the comment
`array if any comments were returned along with the URLS.
`Otherwise, BLANK.HTML is used as the default comment.
`In block 87, the database interface writes out the number of
`pages returned as the global variable “pageCount” as well as
`default values for “next”, “step”, “timerOn', and “timerH'.
`In block 88, the database interface launches the tour of the
`returned pages.
`While the invention has been described in terms of
`preferred embodiments, those skilled in the art will recog
`nize that the invention can be practiced with modification
`within the Spirit and Scope of the appended claims.
`Having thus described our invention, what we claim as
`new and desire to secure by Letters Patent is as follows:
`1. A computer implemented method for providing a
`guided tour of some portion of the World Wide Web
`(WWW) as part of an ordinary web page comprising the
`Steps of:
`initializing an array of tour web site Uniform ReSource
`Locators (URLs);
`initializing global variables including a number of pages
`to be displayed and a next page to be displayed,
`wherein the global variables initialized further include
`a display mode and a display timer;
`creating a first frame for displaying a web page and a
`Second frame for displaying controls for the guided
`tour,
`calling a first routine from the Second frame to access the
`array of tour web site URLS and display a Specific page
`of a Web site in the first frame;
`calling a Second routine from the Second frame to acceSS
`the array of tour web site URLS and display a next page
`of a Web site in the first frame;
`calling a third routine from the Second frame to change a
`mode of display of pages in the first frame between a
`run mode and a single Step mode, and when in the
`Single Step mode turning the display timer off;
`initializing an array of comment web site URLs,
`creating a third frame for displaying comments, and
`accessing the array of comment web site URLS to display
`a comment corresponding to a displayed Web page in
`the first frame.
`2. A computer implemented method as recited in claim 1,
`further comprising the Steps:
`
`1O
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6,009,429
`
`8
`querying a user in Said third frame for displaying com
`ments,
`accepting responses to Said queries; and
`Storing Said responses for later retrieval.
`3. A computer implemented method as recited in claim 1,
`wherein Said third frame for displaying comments may be
`used for Hyper Text Mark-up Language (HTML)
`formatting, graphics, applets, media complements, and
`linkS.
`4. A