`. .
`I PATENT DATE
`O.I.P.E.
`A
`
`"
`
`,
`
`'
`
`
`
`.
`
`.
`
`
`
`i
`
`'
`
`ORIGINAL
`
`I
`
`ISSUING CLASSIFICATION
`I
`CROSS REFERENCE(S)
`
`I
`
`'
`
`I
`
`I
`
`.
`
`1
`
`',
`
`DRAWINGS
`
`CLAIMS ALLOWED
`
`NOTICE OF ALLOWANCE MAILED
`
`(Ass~s~Q?! Examiner)
`
`(bate)
`
`ISSUE FEE
`
`i
`
`7
`I
`
`n TERMINA~'
`DISCLAIMER
`
`1
`
`1 The term of this patent
`
`subsequent to
`
`(date)
`
`fl The term of thls patent shall
`not extend beyond the expiration dat8'
`of U S Patent. No.
`
`of
`The terminal -months
`this patent have been disclaimed.
`
`I
`
`Amount Due
`
`Date Paid
`
`,$?I-04 JB~I
`ISSUE BATCH NUMBER
`
`(Primaly Examiner)
`
`'
`
`. "
`lLeoal Instruments Examiner)
`
`WARNING:
`The information disclosed herein may be restricted. Unauthorized disclosure may be prohibited by the United States Code Title 36, Seotlons 122, 181 and 388
`Possession outside the U S . Patent & Trademark Office 1s restricted to authorlzed employees and contractors only.
`FILED WITH:
`
`Form PTO-438A
`(Rev. 6/99)
`
`DISK (CRF) 0 FICHE 0 CD-ROM
`
`(Attached in pocket on rlght inside flap)
`
`a
`
`I
`
`(FACE)
`
`~'
`
`Google Ex. 1005, pg 1
`
`
`
`Page 1 of1
`
`.
`
`UNITED STATES PATENT AND W E M A R K OFFICE
`
`I111111 1111111 II 111 lillll SllllllllIml11 I IN
`
`Bib Dah Sheet
`
`Cbt-lMIBBIONCR tOR PATErrrS
`UNITED S w r e PATENT A N D ~ ~ M C M A R K Otncc
`WINUIDN.
`O.C. 20231
`wucplagw
`
`CONFIRMATION NO. 2369
`
`SERIAL NUMBER
`08ff 44,033
`
`FILING DATE
`04/11/2001
`RULE
`
`CLASS
`340
`
`GROUP ART UNiT
`21 73
`
`ATTORNEY
`DOCKET NO.
`P30014BET
`
`erHi4 and
`
`iDDRESS
`ames D Stevens
`!elsing Ethington Barnes Klsselle
`earman & McCulloch
`'0 Box 4390
`
`'ITLE
`:omputer Interface method and apparatus with portable network organization system and targeted
`
`w
`
`FILING FEE
`RECEIVED
`400
`
`FEES: Authorlty has been given in Paper
`to chargelcredit DEPOSIT ACCOUNT
`NO.
`for following:
`No.
`
`b
`1
`
`1.18 Fees ( Filin
`1.17 Fees ( Processing Ext. of
`time
`
`[m Credit
`
`Google Ex. 1005, pg 2
`
`
`
`CONTENTS
`Date' Received
`(Incl. C. of M.)
`or
`.
`Date Malled
`
`.
`
`42. a.
`
`f /'4 /
`
`I 1
`
`\
`
`. .
`
`b
`
`44.
`
`45.
`46.
`
`47.
`48.
`
`50.
`
`51.
`52.
`
`53.
`
`54.
`
`55.
`
`56.
`57.
`' 58.
`
`60.
`61.
`
`62.
`
`63.
`
`6.4.
`
`65.
`66.
`
`67.
`68.
`
`69.
`
`70.
`
`7 4
`1 1 .
`72.
`
`73.
`
`74.
`75.
`76.
`77.
`
`78'.
`79.
`
`80.
`
`81.
`
`82.
`
`11.
`
`12.
`
`13.
`: 14.
`1 15- r
`16. -
`17.;
`
`'
`
`,, 18.
`,i 19. ,
`20. ;
`21.
`
`22.
`
`23.
`24.
`
`25.
`I 26.
`I
`I 27. :
`
`29. .-
`30. -
`31.
`32.
`33.
`
`. ..
`
`,
`
`34.
`35. ,,
`36.
`37.
`38. --
` 39. -
`
`. ;,
`
`a /
`
`Date Recelved
`(incl. C. of M.)
`or
`Date Mailed
`
`/
`
`4
`
`-
`
`e-
`
`1
`
`F'
`
`" <
`
`I'
`
`+
`
`I
`
`0 ..
`
`' . -:
`
`Google Ex. 1005, pg 3
`
`
`
`I Ill11 11111111 111 11111 Ill11 US006771290Bl
`11111 11111 11111 11111 IIIII 11111 111111 1111 1111 1111
`
`(12) United States Patent
`Hoyle
`
`(io) Patent No.:
`(45) Date of Patent:
`
`US 6,771,290 B1
`Aug. 3,2004
`
`(75)
`
`( * ) Notice:
`
`(54) COMPUTER INTERFACE METHOD AND
`APPARATUS WITH PORTABLE NETWORK
`ORGANIZATION SYSTEM AND TARGETED
`ADVERTISING
`Inventor: Martin David Hoyle, Metairie, LA
`(US)
`(73) Assignee: B.E. Technology, LLC, Bay City, MI
`(US)
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`09/744,033
`Jul. 16, 1999
`PCT/US99/16135
`
`(21) Appl. No.:
`(22) PCT Filed:
`(86) PCTNo.:
`§ 371 (c)(l),
`(2), (4) Date: Apr. 11, 2001
`(87) PCT Pub. No.: W000/04434
`PCT Pub. Date: Jan. 27, 2000
`
`Related U.S. Application Data
`
`(63) Continuation-in-part of application No. 09/118,351, filed on
`Jul. 17, 1998, now Pat. No. 6,141,010.
`(51) Int. Cl.’ ................................................
`G06P 15/00
`(52) U.S. CI. ........................................
`345/745; 717/170
`(58) Field of Search .................................
`345/745, 762,
`3451763, 852, 853, 854, 839; 717/120
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`4,602,279 A
`7/1986 Freeman
`5,347,632 A
`911994 Filepp et al.
`(List continued on next page.)
`
`OTHER PUBLICATIONS
`Brown, M., Using NetscapeTM 3, Special Edition 1996, p.
`40, 43, 52, 53, 58, 59, 62-64, 94-109.
`
`Primary Examiner-Cao (Kevin) Nguyen
`(74) Afrorney, Agent, or Firni-Reising, Ethington. Barnes,
`Kisselle, P.C.
`ABSTRACT
`(57)
`A method and apparatus for providing an automatically
`upgradeable software application includes targeted advertis-
`ing bascd upon demographics and user interaction with the
`computer. The software application includes a display
`region used for banner advertising that is downloaded over
`a network such as the Internet. The software application is
`accessible from a server via the network and demographic
`information on the user is acquired by the server and used
`for determining what advertising will be sent to the user. The
`software application further targets the advertisements in
`response to normal user interaction with the computer. Data
`associated with each advertisement is used by the software
`application in determining when a particular advertisement
`is to be displayed. This includes the specification of certain
`programs that the user may have so that, when the user runs
`the program (e.g., a spreadsheet program), a relevant adver-
`tisement will be displayed (e.g., an advertisement for a stock
`brokerage). This provides two-tiered, real-time targeting of
`advertising-both demographically and reactively. The soft-
`ware application includes programming that accesses the
`server to determine if one or more components of the
`application need upgrading. If so, the components can be
`downloaded and installed without further action by the user.
`A distribution tool is provided for software distribution and
`upgrading over the network. Also provided is a user profile
`that is accessible to any computer on the network.
`Furthermore, multiple users of the same computer can
`possess Internet web resources and files that are
`personalized, maintained and organized.
`
`3 Claim, 16 Drnwing Sheets
`
`Server
`
`330
`
`-
`
`/
`338
`
`Client & User
`Registration
`\
`
`User
`Services
`/
`
`Advertiser
`SeNices
`I
`
`Accounting
`Services
`\
`
`Management
`Services
`I
`
`346
`
`Google Ex. 1005, pg 4
`
`
`
`US 6,771,290 B1
`Page 2
`
`us.
`PATENT DOCUMENTS
`11/1996 Judson
`5,572,643 A
`12/1996 Keithley et al.
`5,584,025 A
`2/1997 Root el al.
`5,600,781 A
`4/1997 Augenbrauun et al.
`5,617,565 A
`111998 Dedrick
`5,710,884 A
`a1998 Dedrick
`5,717,923 A
`3/1998 Dedrick
`5,724,521 A
`3/1998 Bland et al.
`5,732,218 A
`4/1998 Reilly et al.
`5,740,549 A
`
`12/1998 Marsh et al.
`5,848,397 A
`3/1999 Borman et al.
`5,890,172 A
`6/1999 Brown
`5,914,714 A
`6/1999 Bauersfeld
`5,917,491 A
`8/1999 Angles el al.
`5,933,811 A
`811999 Alberts
`5,937,392 A
`9/1999 Merrinian el nl.
`5,948,061 A
`5,963,208 A * 10/1999 DoIan ........................
`5,977,970 A * 1111999 Amro .........................
`* cited by examiner
`
`345/853
`345/839
`
`Google Ex. 1005, pg 5
`
`
`
`US. Patent
`
`Aug. 3,2004
`
`Sheet 1 of 16
`
`US 6,771,290 B1
`
`I
`
`
`
`I '
`
`I
`I
`I
`1
`I
`-L
`I
`I
`I
`I
`
`Google Ex. 1005, pg 6
`
`
`
`US, Patent
`
`Aug. 3,2004
`
`Sheet 2 of 16
`
`US 6,771,290 B l
`
`cc) c
`
`03
`
`Google Ex. 1005, pg 7
`
`
`
`U.S. Patent
`
`Aug. 3,2004
`
`Sheet 3 of 16
`
`US 6,771,290 B1
`
`Google Ex. 1005, pg 8
`
`
`
`US. Patent
`
`Aug. 3,2004
`
`Sheet 4 of 16
`
`US 6,771,290 B1
`
`N O
`
`n
`
` n
`
`Google Ex. 1005, pg 9
`
`
`
`U.S. Patent
`
`Aug. 3,2004
`
`Sheet 5 of 16
`
`US 6,771,290 B1
`
`L 3 >"
`
`XI .p@
`SI "p
`
`0 a,
`
`0
`F
`
`Google Ex. 1005, pg 10
`
`
`
`US. Patent
`
`Aug. 3,2004
`
`Sheet 6 of 16
`
`US 6,771,290 B1
`
`n I
`
`Google Ex. 1005, pg 11
`
`
`
`-
`
`A_
`
`U.S. Patent
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`01
`3 1
`
`L-.
`
`ir;
`
`
`
`
`85:09:00_Mia._mEmobmwEtomoM.ammo;3onManamamowoZ“_.Allll!P_,§«SIII____|I|I|IlllmmlllilllllllllmmL.m2352o:2.622882
`_.mi..___.__t__“any"25:09:00
`wEEtmEa““5:09:50
`
`Aug. 3,2004
`
`07m...ehS
`
`US 6,771,290 Bl
`
`S
`
`7
`
`1
`
`4...............U........0_Am.._fl39““5:09:00_“5:09:00
`
`
`Egon—Eco_nub_0:2E"oiuuaySEomwowoz:oumbwmwom852n
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I C 0
`mm
`
`I-
`I
`
`I
`I
`I
`
`k-
`
`I
`I
`1
`
`I
`I
`I
`I
`1
`1
`
`1 % 1
`
`I
`I
`I
`I
`I
`I
`I
`I
`
`
`
`Egon—EcomHanama\5E;Eo>m3M
`‘VxlllrlI630:09:00
`
`
`
`Horm—‘“.82memm“036%onwwooo<oEOE5m:UwEwmwmoZ«20:09:00“:28.:805:22“:28.EoU\wczwcmm
`
`
`
`
`
`
`
`
`m,lllllllllllll‘035376
`
`1hi]3E25.:80pan—ooh
`
`BoADEJ0mmm,.....................
`
`I 1
`
`
`
`Google Ex. 1005, pg 12
`
`Google Ex. 1005, pg 12
`
`
`
`
`U.S. Patent
`
`Aug. 3,2004
`
`Sheet 8 of 16
`
`US 6,771,290 Bl
`
`2
`!? 0
`
`. I
`
`I .
`
`
`
`Google Ex. 1005, pg 13
`
`
`
`U.S. Patent
`
`Aug. 3,2004
`
`Sheet 9 of 16
`
`US 6,771,290 B1
`
`User Download
`Request
`
`Send Form
`to User
`
`Required Fields
`Filled Out
`
`138
`
`, Request Correction
`
`Request Correction
`of Form
`
`-
`
`Assign Unique
`ID to User
`
`140
`
`Store ID Along
`with Demographic
`
`Transmit Client
`Application to User
`
`FIG. 8
`
`Google Ex. 1005, pg 14
`
`
`
`U.S. Patent
`
`Aug. 3,2004
`
`Sheet 10 of 16 0
`
`US 6,771,290 B1
`
`Start
`
`Display
`Login
`
`1
`
`148
`
`,,-154
`
`Access User Setup
`Preferences & Bookmarks
`Erom User Data Storage
`
`Display
`GUI
`
`Request
`Demographic Data
`
`162
`
`164
`
`Report Demographic
`Data & Store New
`User Data
`
`FIG. 9
`
`Access Default
`Preferences & Bookmarks
`
`Google Ex. 1005, pg 15
`
`
`
`US, Patent
`
`Aug. 3,2004
`
`Sheet 11 of 16
`
`US 6,771,290 B l
`
`FIG. 10
`
`r 182 -I
`
`Report computer
`Usage Information
`
`1
`
`Download
`New Banners
`
`Reset
`Flag Alert
`
`14
`
`I
`
`Select &
`Display Banner
`
`174
`
`Google Ex. 1005, pg 16
`
`
`
`U,S, Patent
`
`Aug. 3,2004
`
`Sheet 12 of 16
`
`US 6,771,290 B1
`
`12/16
`
`FIG. 11
`
`Browser and open
`Banner Llnk
`
`-
`
`/" 198
`Set
`Priority = Medium
`
`/-- 200
`Execute Shortcut/
`Application
`
`,- 206
`/-' 204
`Set - Open Category
`Links Window
`Priority = Medium
`
`1
`
`-#
`
`Link
`Selected
`
`r 2 1 2
`
`I
`
`I
`
`Set
`Priority = High
`
`Run Default
`-
`Browser and open
`Specified Link
`
`--+
`
`'
`
`No
`
`I
`
`Google Ex. 1005, pg 17
`
`
`
`U,S, Patent
`
`Aug. 3,2004
`
`Sheet 13 of 16
`
`US 6,771,290 B1
`
`FIG. 12
`
`Start
`
`Determine
`Priority Level
`
`c 2 2 0
`
`Select & Display
`Banner
`
`Record Event, Time,
`& Banner Display
`
`I
`
`I
`
`t
`
`increment
`Banner Count
`
`Move to Next
`Set of Banners
`
`f-234
`
`Notify Flag
`Alert Component
`
`Google Ex. 1005, pg 18
`
`
`
`U.S. Patent
`
`Aug. 3,2004
`
`Sheet 14 of 16
`
`US 6,771,290 B1
`
`Start
`
`FIG. 13
`
`Access Version Numbers for
`each Upgradable Component
`in Client Application
`
`236
`
`I
`
`r 2 3 8
`
`1 r246
`
`Generate
`Current
`B1 ueprint
`
`I
`
`/-240
`Access updated
`Blueprint Erom ADM
`Server
`
`Determine New
`Component( s) Needed
`
`I
`
`Builder Module
`
`Pass Control to
`Auxiliary Module
`
`Terminate Builder
`Execution
`
`254
`
`Yes I
`
`No Upgrading
`Necessary
`
`Download and Install
`New Component(s)
`
`'
`
`1
`
`0
`
`
`
`Google Ex. 1005, pg 19
`
`
`
`U.S. Patent
`
`Start +
`
`Aug. 3,2004
`
`Sheet 15 of 16
`
`US 6,771,290 B1
`
`FIG. 14
`
`256
`
`Access Updated
`Blueprint ID
`from ADM Server
`
`f i - 258
`
`Send Current
`ID to ADM Server
`
`No upgrading
`Necessary
`
`Download & Install
`Updated Component(s)
`
`I
`
`Restart
`GUI
`
`266
`
`Google Ex. 1005, pg 20
`
`
`
`US. Patent
`
`Aug. 3,2004
`
`Sheet 16 of 16
`
`US 6,771,290 B l
`
`c
`
`'%
`
`M
`
`\
`
`c
`
`1
`
`0 /-
`
`i
`
`\n M
`M
`
`-I-
`
`I
`
`03
`M
`M
`
`Google Ex. 1005, pg 21
`
`
`
`US 6,771,290 Bl
`
`1
`2
`locators, known as URLs) embedded within web pages. By
`COMPUTER INTERFACE METHOD AND
`using embedded links, the advertisements need not be
`APPARATUS WITH PORTABLE NETWORK
`located on the same server as the web pages themselves.
`ORGANIZATION SYSTEM AND TARGETED
`When the web page is loaded or reloaded, the advertising
`ADVERTISING
`5 server is accessed to obtain a new advertisement which is
`incorporated into the web page displayed on the user’s
`CROSS REFERENCE TO R E W D
`screen. These advertisements are simple graphical images
`APPLICATION
`(such as animated gifs) that are retrieved from the advertis-
`The present application is a continuation-in-part of US.
`ing server along with an associated link to additional infor-
`patent application Ser. No. 09/118,351, filed Jul. 17, 1998,
`mation about the advertised product or service. While this
`now Pat. No. 6,141,010.
`permits new advertising to be displayed each time a web
`page is loaded or refreshed, and while this allows geographi-
`TECHNICAL FIELD
`cally unlimited advertising, it at most permits targeting of
`This invention relates in general to user interfaces for
`the advertisement based upon the type of information con-
`accessing computer applications and informa tion resources
`tained in the web page. Moreover, access to a new adver-
`and, in particular, to user interfaces that provide advertising
`tisement is only available during the period of time that the
`obtained over a global computer netwopk such as the Inter-
`client computer is connected to the Internet.
`net. This invention also relates to user interfaces for
`Currently-available computer programs that incorporate
`maintaining, organizing and communicating information
`advertising into their user interface include the necessary
`accessible to a computer network such as the Internet and,
`2o programming built into the software itself. That is, the
`in particular, to user interfaces that provide the user with
`various parameters relating to the presentation of the adver-
`availability to that information in a personalized manner.
`tisement is pre-determined and programmed into the soft-
`ware. These parameters may include such things as where on
`BACKGROUND OF THE INVENTION
`the screen the advertisement is displayed, the display size,
`The continuing expansion of the Internet and other private
`25 the duration of display, the number of times a particular
`and semi-private networks has led to the now widespread
`advertisement is displayed, the conditions under which a
`practice of electronic distribution of software to end users,
`particular advertisement is to be displayed, the type of action
`taken upon a user clicking on the advertisement, and so
`whether as freeware, shareware, or fully paid-up licensed
`software. Traditionally, freeware programs have generally
`forth. One problem with these currently available programs
`been small, unsupported single-purpose programs that are of 30 is that these parameters can only be changed by replacement
`limited use. Since no income was derived from these
`of the entire program with an updated, revised version,
`programs, there was little incentive for the creators of this
`making it difficult to respond to desired changes in adver-
`type of software to undertake major development efforts.
`tising approaches.
`To provide demographically-targeted advertising, the
`More recently, however, a new tYPe of free SOftware has
`emerged which, while free to end users, does provide 35 advertiser or distributor of the advertising must obtain
`demographic data on its end users. Perhaps the most com-
`income to the creator of the software via advertising incor-
`porated into the software. This is of benefit both to the end
`mon way to acquire demographic data regarding users via
`user and advertiser, as the end user obtains useful software
`the Internet is to request the information using a form written
`at no cost and the advertiser gets advertising exposure for its
`in html (HyperText Markup Language) and provided to the
`products or services. One well known example of this type 40 user over the World-Wide Web (WWW using http
`of arrangement is in push technology products, such as
`(HyperText Transfer Protocol). This is sometimes done as a
`PointcastTM, which permits a user to receive and display
`prerequisite to allowing the user access to information
`resources or download software from a particular web site.
`broadcasted information over the Internet. Using this
`software, new advertising is periodically received along While authentication of demographic information obtained
`with various requested types of news information (e.& 45 this way is difficult and rarely done, it has been found that
`financial, business, sports) and is stored locally on the user’s
`end users typically provide accurate demographic data in
`computer for later retrieval and display by the program.
`return for free download access to software. Furthermore,
`The new advertising medium provided by the Internet has
`studies have shown that while people are concerned about
`privacy issues and, in particular, do not wish to provide
`a number of significant advantages for advertisers. First, the
`users of the software within which the advertising is placed 50 specific information that identifies them (such as their name,
`have, on average, much more disposable income to spend on
`address, or Social Security number), they generally do not
`products and services than the average user of other tradi-
`mind providing demographic information, nor do they mind
`tional advertising media, such as television or print. Second,
`monitoring of their computer usage as long as their usage is
`the advertising can, in some instances, be targeted in various
`not associated with any specific information that could be
`ways, such as demographically or reactively. An example of 55 used to identify them.
`the latter of these is in push technology where the user
`Various other arrangements have been suggested for
`requests certain types of information and this request is used
`obtaining and reporting information about an end user over
`a computer network such as the Internet. For example, US.
`to select the type of advertisement sent to the user along with
`Pat. No. 5,724,521 to Dedrick discloses an electronic adver-
`the requested content. Third, the advertising can not only
`include audio and video elements as well as simple visual 60 tising system in which a user profile is created and trans-
`ferred to a metering server where it is used along with other
`elements, but can also be interactive. For example, by
`clicking on the advertisement, the user can be provided with
`end user profiles to charge advertiser’s according to a
`additional information about the advertised products or
`consumer scale. The profile data is also used by the metering
`services and can even be given the opportunity to purchase
`server to select advertisement titles that are sent to the end
`the products or services electronically.
`65 user for viewing at the request of the end user. When a user
`One of the most common methods of advertising via the
`requests an advertisement, the metering server sends the
`Internet is through the use of links (e.g., uniform resource
`advertisement to the end user, charges the advertiser, and
`
`Google Ex. 1005, pg 22
`
`
`
`US 6,771,290 B1
`
`5
`
`10
`
`15
`
`20
`
`25
`
`3
`provides the advertiser with profile data on that end user. The
`system can include client-side software which acquires and
`compiles information concerning the user’s interaction with
`the advertising or other content provided by the metering
`server.
`US. Pat. No. 5,732,218 to Bland et al. discloses a system
`for gathering data concerning an end-user’s access to infor-
`mation resources and reporting the data back to the servers
`that contain the information resources. Data gathering at the
`client is accomplished using an applet, plug-in, or other
`browser extension that acquires the data and then reports
`that data to those servers accessed by the client, either
`periodically or in response to a specific request by the
`servers. In this way, the servers being accessed for their
`information resources get reported back to them information
`concerning the end-user’s use of that information. Limited
`demographic information (e.g., time zone, locale, client
`hardware) can be included in this reporting as well.
`One of the disadvantages of prior art systems that acquire
`data regarding an end-user’s computer usage is that they are
`generally limited to gathering information concerning only
`certain limited uses of the computer. For example, in Bland
`et al., the focus of the gathering and use of end-user data is
`in the user’s interaction with web pages, whether over the
`Internet or otherwise. Similarly, in Dedrick, the compilation
`of data is directed to interaction between the end-user and
`the advertising or other content provided by the metering
`server itself. By limiting the reported data in this manner, it
`is difficult to develop accurate profiles for the individual
`users that are useful in targeting the advertising.
`U.S. Pat. No. 5,347,632 to Filepp et al. discloses a
`reception system in which both user demographics and
`individual system usage information can be used to target
`advertising. However, this information is used to select
`which advertisements are to be placed into an advertisement
`queue from which advertisements are then accessed, appar-
`ently in the order in which they were placed in the queue.
`Thus, this system permits targeting of advertising generally,
`but does not provide real time targeting of advertising based
`upon user actions.
`Internet users typically employ browser applications and
`related technologies in order to access the WWW, and to
`locate and view files, documents and audiohide0 clips.
`Exemplary browser applications include Opera by Opera
`Software, Netscape Navigator, Netscape Communicator 4.6
`and Microsoft Internet Explorer 5.0. Browser applications
`are loaded onto a user’s computer, and then can be used for
`communication over networks using protocols such as that
`utilized by the WWW. Browsers are useful for accessing
`desired files and web sites, and also have the capability of 50
`storing information regarding visited or favorite web sites on
`the user’s computer. However, it has been common practice
`for browsers to be employed by the user for fairly limited
`purposes, such as for accessing information. Certain
`applications, such as Windows NT 4.0, allow a user to 55
`receive and store electronic information on a limited net-
`work system. However, the usefulness and flexibility of such
`systems are severely limited, because each browser instal-
`lation traditionally has been independent of other browser
`installations to which a user has access. Thus, information 60
`within one browser is not easily transportable to the other
`browser.
`Except as may be explicitly indicated otherwise, the
`following definitions shall apply:
`browser-A
`program that can communicate over a net- 65
`workusing http or another protocol and that can display
`html information and other digital information.
`
`30
`
`35
`
`40
`
`45
`
`4
`computer that is connected to a
`client computer-A
`network (including computers that are connected only
`occasionally to the network such as, for example, by a
`modem and telephone line) and that can be used to send
`requests for information to other computers over the
`network.
`apparatus having a processing device that
`computer-An
`is capable of executing instructions, including devices
`such as personal computers, laptop computers, and
`personal digital assistants, as well as set top television
`boxes, televisions, radios, portable telephones, and
`other such devices having a processing capability.
`computer usage information-Data concerning a person’s
`use of a computer, including such things as what
`programs they run, what information resources they
`access, what time of day or days of the week they use
`the computer, and so forth.
`data set-A
`group of data items; for example, links,
`keywords, or entries in an address book.
`capable of display by a computer,
`display object-Data
`including graphical images as well as multimedia pre-
`sentations or other display data that includes audio in
`addition to visually-perceived data.
`file-Any digital item, including information, documents,
`applications, audio/video components, and the like, that
`is stored in memory and is accessible via a file alloca-
`tion table or other pointing or indexing structure.
`graphical image-Visually-perceived
`data stored in n
`graphic format (e.g., jpeg, gif, bmp, tiff, pcx, etc.),
`including electronically-reproduced photographs,
`graphics, animations, icons, and textual messages.
`source of information stored on
`information resource-A
`a server or other computer that is accessible to other
`computers over a network.
`keyword-A
`textual data item used in locating related
`sources of information
`item that identifies the location or address of
`link-Adata
`a program or information resource. A URL is a link, as
`is a path and filename of an information resource.
`system having at least two computers in
`network-A
`communicable connection, including intranets, per-
`sonal networks, virtual private networks, and global
`public networks such as the Internet.
`non-volatile data storage device-A memory device that
`retains computer-readable data or programming code in
`the absence of externally-supplied power, including
`such things as a hard disk or a floppy disk, a compact
`disk read-only memory (CDROM), digital versatile
`disk DVD), magneto-optical disk, and so forth.
`profile-User-specific
`information relating to an indi-
`vidual using a computer.
`program component-Aset of instructions stored in a file
`in computer-readable format, whether as object code or
`source code, and whether written in a compiled
`language, in byte code (such as JavaTM), or in a
`scripting or other interpreted language.
`program module-One
`or more related program compo-
`nents.
`program-One
`or more related program modules.
`response to some type of user input, such
`reactively-In
`as a mouse click on a particular user application or on
`a link to an information resource
`server-A computer on a network that stores information
`and that answers requests for information.
`
`Google Ex. 1005, pg 23
`
`
`
`US 6,771,290 B1
`
`5
`software application-A program and associated libraries
`and other files; for example, a word processing
`application, a spreadsheet application, or a personal
`information management application.
`SUMMARY OF THE INVENTION
`In accordance with one aspect of the present invention
`there is provided an apparatus for use by a computer to
`provide a user of the computer with access to information
`resources via the Internet or otherwise. The apparatus com-
`prises a non-volatile data storage device with first and
`second program modules stored on the non-volatile storage
`device. The first program module is operable upon execution
`to display a graphical user interface comprising a window
`separated into a number of regions, with a first one of the
`regions including a number of user-selectable items, at least
`some of which are each associated with a different data set.
`The data sets are each representative of a different category
`of information (e.g., financial, news, sports, etc.) and each of
`the data sets comprise a number of user-selectable links to
`different information resources. For example, the data sets
`can be groups of related URIs, whereby the information
`resources comprise web pages accessible via the Internet. A
`second one of the regions comprises an information display
`region which can display such things as banner advertise-
`ments. The second program module is operable upon execu-
`tion to select informational data to be displayed in the
`information display region. The first program module is
`operable in response to selection of a first one of the links to
`provide the user with access to its associated information
`resource and to notify the second program module of the
`selection of that first link. The second program module can
`be operable in response to notifications from the first pro-
`gram module to select the informational data to be displayed
`from among a larger amount of informational data, and the
`second program module can be further operable to store
`statistical data regarding the display of the selected infor-
`mational data. This permits targeting of banner advertise-
`ments based upon the type of link (financial, news, sports,
`etc.) selected by the user, the software applications clicked
`on by the user, and other network accessible files accessed
`by the user.
`In addition, the apparatus further includes user specific
`maintenance and organization of that user’s individual files
`and resources represented by the user-selectable links con-
`tained within the first program module, in order that an
`individual user can gain access to those files and resources
`from a computer having network access, or that multiple
`users can gain access to individual files stored on the same
`computer. Preferably, this is accomplished by storing a user
`profile and user library on a server connected to the network.
`Then, when a user runs the first program module, it identifies
`the user and connects to the server to access that user’s
`profile and library, with the profile being used to specify that
`individual’s user-selected links to be displayed in the first
`region and the library being used to store these individual
`files and resources that the user wishes to be able to access
`from anywhere on the network. Furthermore, either of the
`two program modules can be disabled, and instead of using
`both modules, the user can use either of the modules
`individually and independently.
`In accordance with another aspect of the invention, there
`is provided a computer-readable memory for use by a
`computer to provide a user of the computer with an
`automatically-upgradeable software application. The com-
`puter readable memory comprises a non-volatile data stor-
`age device and a program that is separated into a plurality of
`
`6
`program modules that are stored on the non-volatile data
`storage device. Some or all of the program modules have at
`least one version identifier associated with them. One of the
`program modules is operable upon execution to access the
`stored version identifier(s) and at least one updated version
`identifier from a server via a network, including a global
`public network such as the Internet. These updated version
`identifier(s) represent updated program modules accessible
`from a server via the network. This program module is
`further operable to download one or more updated program
`modules when the stored version identifier and the updated
`version identifier are different, with the updated program
`module(s) replacing one or more of the program modules. In
`this way, software upgrades can be carried out automatically
`15 without any user action required. Also, upgrading can be
`accomplished without having to download and install the
`entire software package. Preferably, the computer-readable
`memory is such that software can be updated even if
`multiple users have access to individual files stored on the
`20 same computer. Such updated software can be provided for
`the computer itself, or for selected users of that computer.
`In accordance with another aspect of the present
`invention, there is provided a computer-readable memory
`for use by a computer that provides a software developer/
`25 distributor with an efficient mechanism for distributing
`software via a network. The computer readable memory
`comprises a non-volatile data storage device and a program
`that is separated into a plurality of program modules that are
`stored on the non-volatile data storage device. Some or all
`30 of the program modules have at least one version identifier
`associated with them. One of the program modules is
`operable upon execution to access the stored version
`identifier(s) and at least one updated version identifier from
`a server via a network, including a global public network
`35 such as the Internet. These updated version identifier(s)
`represent updated program modules accessible from a server
`via the network. This program module is further operable, if
`desired, to download one or more updated program modules
`when the stored version identifier and the updated version
`40 identifier are different, with the updated program module(s)
`replacing one or more of the program modules. In this way,
`software upgrades can be carried out, either as desired and
`requested or automatically without any user action required.
`Also, upgrading can be accomplished without having to
`45 download and install an entire software package. Preferably,
`the computer-readable memory is such that software can be
`updated even if different users have access to individual files
`stored on the same computer. Alternatively, rather than
`replacing its own program modules, the program can be
`50 operable to handle distribution and upgrading of a separate
`software application using version identifiers for the various
`modules of the software application. Also, rather than com-
`paring version identifiers at the client computer, this com-
`parison can be carried out at the server, with the necessary
`55