`US 6,449,638 B1
`(10) Patent No.:
`Sep. 10, 2002
`(45) Date of Patent:
`Weckeret al.
`
`US006449638B1
`
`(54)
`
`(75)
`
`(73)
`
`(21)
`
`(22)
`
`(60)
`
`61)
`
`(52)
`(58)
`
`(56)
`
`CHANNEL DEFINITION ARCHITECTURE
`EXTENSION
`
`5,705,995 A
`5,740,549 A
`
`........... 340/825.44
`1/1998 Laflin et al.
`4/1998 Reilly et al. oo. 705/14
`
`Inventors: Dave Wecker, Bothell; David
`Tuniman, Redmond, both of WA (US)
`
`Assignee: Microsoft Corporation, Redmond, WA
`(US)
`
`Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`US.C. 154(b) by 0 days.
`
`Appl. No.: 09/107,941
`
`Filed:
`
`Jun. 30, 1998
`
`Related U.S. Application Data
`Provisional application No. 60/070,720, filed on Jan. 7,
`1998, and provisional application No. 60/075,123,filed on
`Feb. 13, 1998.
`
`Int. C17 oe GO6F 15/16; GO6F 9/00
`
`(List continued on next page.)
`FOREIGN PATENT DOCUMENTS
`
`EP
`EP
`EP
`EP
`WO
`WO
`WO
`
`0 653 736 Al
`0 434 231 A2
`0 704 827 Al
`0 803 825 A
`WO 90/13213
`WO 97/35402
`WO 97/17682
`
`5/1988
`6/1991
`3/1996
`10/1997
`1/1990
`3/1996
`10/1996
`
`OTHER PUBLICATIONS
`
`Castedo Ellerman, “Channel Definition Format (CDF)’,
`Channel Definition Format Submission 970309, Mar. 10,
`1998, XP002103294.
`Jason Levitt, “Push Your Web Pages—Netscape’s Netcaster
`and Microsoft’s CDF make it easier than ever to join the
`push revolution”, Information Week, No. 634, Jun. 9, 1997,
`XP002103295.
`
`US. Che cece creecneceneees 709/217; 709/317
`
`(List continued on next page.)
`
`Field of Search ............0..cc cece 709/216, 217,
`709/218, 219, 223, 238, 317, 318, 328;
`707/10
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`6/1986 Hawkins .......cceee 179/2 EA
`4,593,155 A
`
`ow. 706/11
`4/1990 Allen et al.
`4,916,637 A *
`5/1991 Comroeet al.
`oe. 455/54
`5,014,345 A
`8/1991 May ou... eeeeeeeeeeeeee 340/825.44
`5,043,721 A
`
`5,367,667 A * 11/1994 Wahlquistet al.
`............ 714/32
`
`« 370/85.1
`5,400,331 A
`3/1995 Lucaket al.
`.........
`9/1996 Mousseauetal. ....... 370/85 .13
`5,559,800 A
`5,603,025 A *
`2/1997 Tabb et al.
`.ccccceceeen 707/2
`
`5,619,615 A *
`4/1997 Pitchaikani et al.
`.......... 706/10
`5,619,694 A *
`4/1997 Shimazu...........
`we. 707/104
`
`4/1997 Lyons wececcccscssseeees 707/10
`5,623,656 A *
`
`6/1997 Luther ..........
`w+. 345/302
`5,640,590 A *
`
`......... 707/6
`5,675,780 A * 10/1997 Plant-Masonet al.
`5,675,831 A * 10/1997 Caputo oo. eee 710/10
`.. 395/500.47
`5,680,585 A * 10/1997 Bruell
`
`5,701,451 A * 12/1997 Rogers et al. wo... TO7/1
`
`Primary Examiner—Zarmi Maung
`Assistant Examiner—Jason D. Cardone
`(74) Attorney, Agent, or Firm—Westman, Champlin &
`Kelly, P.A.
`
`(57)
`
`ABSTRACT
`
`A method for rendering information, such as, available
`through the Internet on a computer includesstoring a content
`structure file, a data file and a script file. The data file
`includes data indicative of the information andthe scriptfile
`includes script information indicative of a desired form in
`whichthe data is to be rendered. The content structure file,
`data file and script file are independently receivable by the
`computer. The content structure file is read to ascertain
`which script in the script file is associated with data to be
`rendered. The data from the data file is retrieved and the
`
`associated script file is executed to render the data. Instruc-
`tions can be provided on a computer readable medium to
`implement the method.
`
`24 Claims, 8 Drawing Sheets
`
`SYNC.
`COMPONENT
`28
`
`
`
`
`
`
`MODEM 24
`
`
`
`
`MESSAGE
`ROUTER 210
`
`II'!
`
`lli
`
`
`
`
`
`
`
`
`
`
`
`
`
`ROUTING
`UNPACKER
`
`COMPONENT fe
`ANDJOINER||
`
`218
`
`
`
`
`
`
`
`
`
` +
`CHANNEL
`}——-»} DISPLAY45
`BROWSER,
`
`
`
`
`218
`
`HTML
`PAGE
`24
`
`1
`
`SAMSUNG 1006
`
`IPR2024-00145
`Apple EX1006 Page 1
`
`
`
`US 6,449,638 B1
`
`Page 2
`
`6,085,224 A *
`6,112,242 A *
`6,151,610 A
`
`7/2000 Wagner occ 709/203
`
`ee 709/225
`8/2000 Jois et al.
`wo.
`11/2000 Senn... .eeeeeeteeees 707/516
`
`U.S. PATENT DOCUMENTS
`.
`5,754,242 A *
`5/1998 Obkami ou... eee 348/441
`5,796,952 A *
`8/1998 Davis et al. veces 709/224
`
`5,799,151 A
`8/1998 Hoffer cee 395/200.34
`OTHER PUBLICATIONS
`5,809,247 A *
`9/1998 Richardsonetal. ........ 709/218
`Vitali, F. et al., “Exending HTMLin a principled way with
`5,861,883 A *
`1/1999 Cuomoetal. ....
`.. 345/326
`displets”. C
`N
`ks
`and ISDN S
`1 29
`
`5,875,306 A *
`709/220
`2/1999 RBereiter ........
`isplets”, Computer Networks an
`ystems, vol.
`29,
`
`5,884,097 A *
`3/1999 Lietal. vce 710/43
`No. 8-13, Sep. 1, 1997, pp. 1115-1128, XP004095309.
`
`5,903,262 A *
`5/1999 Ichihashi etal.
`........... 725/136
`Salampasis, M. et al., “Hyper Tree: A Structural Approach to
`5,905,856 A
`5/1999 Offensooser ........... 395/183.14
`Web Authoring”, Software—Practice and Experience, vol.
`5,920,696 A *
`7/1999 Brandt et al... 709/218
`27, No. 12, Dec. 1, 1997, pp. 1411-1426, XP000726053.
`5,923,738 A
`7/1999 Cardillo, IV et al.
`..... 379/93.25
`“Dynamic Documents: Mobile Wireless Access to the
`5,933,826 A *
`8/1999 Ferguson ........ cece 707/9
`WWW”, M.Frans Kaashoek,et al., IEEE, Dec. 8, 1994, pp.
`5,935,060 A
`8/1999 Tiff eee eeeeeeeeeee 600/300
`179-184
`co
`*
`.
`5,937,041 A
`8/1999 Cardillo, Wet al.
`.... 379/93.25
`Oliverio, G., “A Paging HPC”, Handheld Systems, Creative
`5,943,486 A
`8/1999 Li eee eeeeeeceeeeeee 395/685
`fe
`oa:
`:
`5.946.326 A
`... 370/486
`8/1999 Rinne...........
`Digital Publishing Inc., (retrieved from Internet Jun. 10,
`
`5,953,523 A *
`9/1999 Martinez et al.
`............ 395/701
`1999), No. 5.4, Jul. 1997—Aug. 1997, XP002106345.
`5,953,524 A *
`9/1999 Meng et al. wececccccen TL7/L
`Scardinal, M., “The PageCard SDK”, Handheld Systems,
`
`5,963,944 A
`..eeceeeeeeeeee JOT/10
`10/1999 Adams ou...
`Creative Digital Publishing Inc., (retrieved from Internet
`
`5,974,085 A
`10/1999 Smith wee 375/222
`Jun.
`10,
`1999), No.
`5.6, Nov.
`1997-Dec.
`1997,
`5,974,238 A
`. 395/200.78
`10/1999 Chase, Jr.
`..
`XP002106346.
`
`oattes A * S000 Anderson cae son “Minstrel Plus™” brochure,
`for Novatel Wireless,
`Inc.
`ayafune et al.
`...........
`,041,
`.
`5/2000 Chadha et al.
`seecesssesse-- 707/513
`6,061,698 A *
`COPYFight 1998.
`6,078,743 A *
`6/2000 Apte et al. vee TAV/L
`* cited by examiner
`
`IPR2024-00145
`Apple EX1006 Page 2
`
`
`
`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 1 of 8
`
`US 6,449,638 B1
`
`vb
`
`SSATAYIM
`
`c2YAANISOSY
`
` cLYAGIAONd
`
`
`
`
`YaINYVOSSSTSYIM
`
`LINALNOD
`
`
`
`
`
`
`
`
`
`‘ONAS“ONAS
`
`
`
`8+J0IAROATIGOWINANOdWOOdINANOdWODotabiesG
`
`
`
`gz92
`
`a)
`
`
`
`IPR2024-00145
`Apple EX1006 Page 3
`
`
`
`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 2 of 8
`
`US 6,449,638 B1
`
`MEMORY
`
`PROCESSOR =
`
`APP(S)
`
`OBJECT
`STORE 44
`
`| RECEIVER 37
`
`DESKTOP
`COMMUNICATION
`INTERFACE
`
`WIRELESS
`
`FIG.2
`
`IPR2024-00145
`Apple EX1006 Page 4
`
`
`
`
`
`U.S. PatentU.S. Patent
`
`
`
`Sep. 10, 2002Sep. 10, 2002
`
`
`
`Sheet 3 of 8Sheet 3 of 8
`
`
`
`US 6,449,638 B1US 6,449,638 B1
`
`
`
`
`IPR2024-00145
`Apple EX1006 Page 5
`
`IPR2024-00145
`Apple EX1006 Page 5
`
`
`
`
`
`U.S. PatentU.S. Patent
`
`
`
`Sep. 10, 2002Sep. 10, 2002
`
`
`
`Sheet 4 of 8Sheet 4 of 8
`
`
`
`US 6,449,638 B1US 6,449,638 B1
`
`18
`18
`
`IPR2024-00145
`Apple EX1006 Page 6
`
`IPR2024-00145
`Apple EX1006 Page 6
`
`
`
`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 5 of 8
`
`US 6,449,638 B1
`
`FIG. 5
`
`ro
`Optical drive
`.
`Removable storage
`61
`59
`
`[J
`
`Motitor 77
`
`
`
`COMPUTER 16
`
`
`VIDEO ADAPTER
`8
`
` Optical Disk Drive
`
`
`
`60
`
`ROM 54
`
`
`BIOS 56 RAM25|
`
`
`
`OPERATING
`PROGRAM
`SYSTEM 65
`APPLICATION|MODULE 67
`
`_PROGRAMS66|BROGRAM DATA 68
`
`NETWORK
`SERIAL PORT
`Ee
`ADAPTER 8&3
`INTERFACE 76
`
`
`
`
`MODEM 8&4
`
`ne
`Keyboard
`
`'
`Mouse
`72
`
`REMOTE
`COMPUTER 79
`
`MEMORY &0
`
`IPR2024-00145
`Apple EX1006 Page 7
`
`
`
`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 6 of 8
`
`US 6,449,638 B1
`
`COMPONENT
`m
`
`FIG. 6
`
`RECEIVER
`
`AND DRIVER 22
`
`
`SCRIPT
`TEMPLATES
`
`204
`
`
`
`MESSAGE
`ROUTER 210
`
`
`CACHE 206
`
`
`UNPACKER
`ROUTING
`TRANSLATORS
`
`
`
`COMPONENT
`AND JOINER|
`
`214
`
`
`212
`216
`
`
`
`
`229
`
`LOADABLE
`TRANSPORT
`
`CHANNEL
`BROWSER
`218
`
`
`
`
`DISPLAY 45
`
`IPR2024-00145
`Apple EX1006 Page 8
`
`
`
`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 7 of 8
`
`US 6,449,638 B1
`
`FIG. 7
`
`
`
`
`
`
`SCRIPT
`TEMPLATES
`204
`
`DATA
`202
`
`8fmecenermeereewesmmeeeemeeeeeeeeeoewd
`
`
`
`
`PREFERENCES
`230
`
`
`
`DEFAULT
`TEMPLATES
`232
`
`
`
`
`LOADABLE
`TRANSPORT
`
`220
`
`CHANNEL
`BROWSER
`
`218
`
`DISPLAY 45
`
`IPR2024-00145
`Apple EX1006 Page 9
`
`
`
`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 8 of 8
`
`US 6,449,638 B1
`
`Channels
`
`Channel 2000
`
`242
`
`244
`
`252
`
`245 News and Technology
`
`© CBS SportsLine Channel
`
`240
`
`
`[nese ceiioy
`
`a©
`
`
`
`(x] Baseball
`2] NBA
`[x] College Basketball
`[aJNFL
`[x] College Football
`(R]NHL
`fg]Auto Racing
`fa} Boxing
`(y] Golf
`{2} Soccer
`
`2] Tennis
`/JESPN SportsZone
`
`257
`
`253
`254
`255
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`f.] MSNBC Sports
`
`246
`
`247
`
`250
`
`264
`
`
`
`ADVERTISEMENT
`
`IPR2024-00145
`Apple EX1006 Page 10
`
`
`
`US 6,449,638 B1
`
`1
`CHANNEL DEFINITION ARCHITECTURE
`EXTENSION
`
`CROSS-REFERENCE TO RELATED
`APPLICATION
`
`The present application is based on and claimsthe benefit
`of provisional patent application, Serial No. 60/070,720filed
`on Jan. 7, 1998, and provisional application Serial No.
`60/075,123 filed on Feb. 13, 1998.
`
`BACKGROUND OF THE INVENTION
`
`The present invention relates to personal mobile comput-
`ing devices commonly known as mobile devices. More
`particularly, the present invention relates to a system and
`methodfor delivering and receiving information on a mobile
`device.
`
`Mobile devices are small electronic computing devices
`often referred to as personal digital assistants. Many such
`mobile devices are hand held devices, or palm-size devices,
`which comfortably fit within the hand. One commercially
`available mobile device is sold under the trade name Hand-
`Held PC (or H/PC) having software provided by Microsoft
`Corporation of Redmond, Wash.
`Generally, the mobile device includes a processor, ran-
`dom access memory (RAM), and an input device such as a
`keyboard and a display. The keyboard can be integrated with
`the display, such as where the keyboard is incorporated as a
`touch sensitive display. A communication interface is
`optionally provided and is commonly used to communicate
`with a desktop computer. A replaceable or rechargeable
`battery powers the mobile device. Optionally, the mobile
`device can receive power from an external power sourcethat
`overrides or recharges the built-in battery.
`In some prior applications, the mobile device is used in
`conjunction with a desktop computer. For example, the user
`of the mobile device may also have access to, and use, a
`desktop computer at work or at home, or both. The user
`typically runs the same types of applications on both the
`desktop computer and on the mobile device. Thus,it is quite
`advantageous for the mobile device to be designed to be
`coupled to the desktop computer to exchange information
`with, and share information with, the desktop computer.
`Another technique for providing information to such
`mobile devicesis through a wireless transmission link. Such
`information can include electronic mail or news, weather,
`sports, traffic and local event information. The information
`is typically obtained from a desktop computer connected to
`the Internet and delivered over a wired connection.
`However, it may be desirable to deliver such information
`over a wireless connection as well. A wireless receiver on
`the mobile device can act to receive information as it is
`
`being sent to the mobile device.
`There is presently no reasonable wayto deliver push style
`content (such as hypertext mark-up language (HTML)con-
`tent provided on a global network such as the internet and
`world wide web) to such devices in a wireless manner and
`in an open andavailable architecture. The bit rate of con-
`ventional wireless channels is very low. Thus, the delivery
`of very large content (such as HDMLcontent) is highly
`impractical.
`One conventional type of approach to delivering such
`information is to rewrite the content into a device friendly
`format, such as HTML.The content is then obtained over a
`pull-style model. Another approach currently being used to
`deliver information via a wireless medium in a closed
`
`55
`
`60
`
`65
`
`2
`In a closed model, a content provider can only
`model.
`provide content which is written in a format suitable for
`receipt by a specific device implementing a specific type of
`software. This means that the vast majority of web content
`is unavailable for viewing on such devices.
`
`SUMMARYOF THE INVENTION
`
`A method for rendering information, such as, available
`through the Internet on a computer includesstoring a content
`structure file, a data file and a script file. The data file
`includes data indicative of the information andthe scriptfile
`includes script information indicative of a desired form in
`whichthe data is to be rendered. The content structure file,
`data file and script file are independently receivable by the
`computer. The content structure file is read to ascertain
`which script in the script file is associated with data to be
`rendered. The data from the data file is retrieved and the
`associated script file is executed to render the data. Instruc-
`tions can be provided on a computer readable medium to
`implement the method.
`In one preferred embodiment, the content structure file
`includes references to data and scripts in a hierarchy. In
`particular,
`the content structure file includes script
`tags
`associated with the scripts in the script file wherein the script
`tags are arranged in the hierarchy. When the content struc-
`ture file 1s read to ascertain which script in the script file is
`associated with the data to be rendered, the script is chosen
`as a function of the hierarchy. Organization of the script tags
`in a hierarchy allowstag inheritance. Specifically, if there is
`no associated script tag for the data in the lower portion of
`the hierarchy, a script referenced by a script tag in a higher
`portion of the hierarchy will be executed to render the data.
`In another embodiment, if a referenced script in the content
`structure file cannot be found in the script file, a default
`script is executed in order to render the data.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a simplified block diagram illustrating one
`embodiment of a mobile device in a system in accordance
`with the present invention.
`FIG. 2 is a more detailed block diagram of one embodi-
`ment of a mobile device shown in FIG. 1.
`
`FIG. 3 is a simplified pictorial illustration of one embodi-
`ment of the mobile device shownin FIG. 2.
`
`FIG. 4 is a simplified pictorial illustration of another
`embodiment of the mobile device shown in FIG. 2.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`FIG. 5 is a block diagram of one embodimentof a desktop
`computer in accordance with one aspect of the present
`invention.
`
`FIG. 6 is a flow diagram illustrating the operation of a
`mobile device in accordance with one aspect of the present
`invention.
`
`FIG. 7 is a simplified block diagram of FIG. 6.
`FIG. 8 is a diagrammatic illustration of a graphical user
`interface rendered by the present invention.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENTS
`
`FIG. 1 illustrates a system 10 in which the present
`invention isillustratively implemented. System 10 includes
`content provider 12, wireless carrier 14, desktop computer
`16 and mobile device 18. Content provider 12 provides any
`suitable type of data from a database or other data source.
`For example, content provider 12 is discussed hereinafter as
`11
`
`IPR2024-00145
`Apple EX1006 Page 11
`
`
`
`US 6,449,638 B1
`
`3
`In the
`a provider of internet world wide web content.
`preferred embodiment, the content is provided in a standard
`format, such as HTML, JPEG, GIF, WAV, etc. The web
`content is also preferably described in a contentstructure file
`also known commonly as a channel definition format (CDF)
`file. A single portion of content (such as a web page or a web
`site) is referred to herein as a mobile channel.
`A mobile channel
`is a self describing web site that
`containsall the information necessaryfor efficient download
`of web content to mobile device 18. Three components are
`provided in a preferable mobile channel. The components
`include a channeldefinition format (CDF)file, a set of script
`files to render the channel, and a set of data files to be
`rendered. The CDF files are described in greater detail
`below. Briefly, the CDF is an inventory of content contained
`on the mobile channel.
`
`The script files contain script which defines templates
`which specify the appearance of the data on the screen of
`mobile device 18. Scripts are preferably written in visual
`basic script (VBS).
`The data files correspond to one or morescript files and
`include data whichis indicative of the substantive content of
`the channel to be rendered. The data is packaged in small
`and simple text files. All of this information is used to define
`web content.
`
`Operation of system 10 using separate script and data files
`is described in detail in co-pending U.S. patent application,
`Ser. No. 09/107,666, filed on Jun. 30, 1998, entitled “SYS-
`TEM FOR DELIVERING DATA CONTENT OVER A
`LOW BIT RATE TRANSMISSION CHANNEL”, and
`hereby incorporated by reference. Briefly, however, wireless
`carrier 14 is configured to receive web content from the web
`content provider 12 via dial-up or direct internet connection,
`or a network connection. Wireless carrier 14 also includes a
`wireless push server 20. Server 20 splits the content received
`from content provider 12 into pieces which are compatible
`with the particular type of transport being used by wireless
`carrier 14. For instance, server 20 may split the data such
`that it conforms to maximum packet size constraints, char-
`acter set requirements, etc. for the channel type or transport
`type being used. Prior to transmission, the data is preferably
`translated to a different
`form. Translation may include
`compression, encryption, encoding and then packaging.
`Once the data has been split appropriately such that it
`conforms to the transport constraints, the data is then con-
`figured for transmission over the air through a wireless
`network (such as through a paging channel) to be received
`directly on mobile device 18. The transmitted data is
`received by a wireless receiver and driver component 22 on
`mobile device 18 where the data is prepared for use by
`mobile device 18.
`
`Mobile device 18 can also includes a modem 24. Thus,
`rather than being transmitted through wirelesscarrier 14, the
`web content can be transmitted directly from web content
`provider 12 through a direct dial-up modem connection to
`mobile device 18.
`
`Desktop computer 16 will also be described in greater
`detail later in the specification. Briefly, however, desktop
`computer 16 is preferably provided with a standard web
`browser, such as Internet Explorer 4.0 commercially avail-
`able from the Microsoft Corporation of Redmond, Wash.
`That being the case, the users of desktop 16 can preferably
`subscribe to channels in a standard fashion which provide
`the user with certain channel content which can be browsed
`off-line or on-line. Desktop computer 16 is preferably pro-
`vided with a loadable transport that accesses the script files
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`and acts on the corresponding data file (in accordance with
`the script) to render the content where desktop computer 16
`renders the data. Desktop computer 16,
`through the
`transport, can periodically retrieve or receive new and
`updated script, data and CDFfiles either for further trans-
`mission to mobile device 18 or simply for rendering the data.
`The script, data and CDF files can be transmitted either
`together or independently of one another. Since scripting
`files typically need updating much less frequently than the
`data files, this provides the user with the ability to view the
`web content on the desktop (off-line) while requiring only
`small amounts of bandwidth for incremental updating of the
`datafiles.
`
`Desktop computer 16 also preferably includes synchro-
`nization component 26. Briefly, synchronization component
`26 is configured to interact with a similar synchronization
`component28 on mobile device 18 such thatfiles which are
`the subject of synchronization can be synchronized from
`desktop computer 16 to mobile device 18, or vice versa.
`Once synchronized, both files (those on computer 16 and
`mobile device 18) contain up to date information.
`More specifically, mobile device 18,
`in the preferred
`embodiment, can be synchronized with either desktop com-
`puter 16, or another mobile device 18, or both. In that
`instance, properties of objects stored in an object store on
`mobile device 18 are similar to properties of other instances
`of the same object stored in an object store on desktop
`computer 16 or another mobile device 18. Thus,
`for
`example, when a user changes one instance of an object
`stored in an object store on desktop computer 16, the second
`instance of that object in the object store of mobile device 18
`is updated the next time mobile device 18 is connected to
`desktop computer 16 so that both instances of the same
`object contain up-to-date data. This is referred to as syn-
`chronization.
`
`In order to accomplish synchronization, synchronization
`components 26 and 28 run on both mobile device 18 and
`desktop computer 16 (or another mobile device 18). The
`synchronization components communicate with one another
`through well defined interfaces to manage communication
`and synchronization.
`Mobile device 18 is also preferably provided with a script
`interpreter which, in one preferred embodiment, is the same
`as or similar to the loadable transport on desktop computer
`16. Such a transport may be, for example, a down-sized
`visual basic interpreter, which receives and interprets the
`formatting script. The script is associated with a certain data
`file (typically a text file) that holds the raw data for the web
`content. Thus,
`the script interpreter operates on the data
`associated with a given script to provide a rendering of the
`web content to the user of mobile device 18.
`
`Byseparating the script from the data in the web content,
`web content can be transmitted to mobile device 18 over
`
`very low bit rate channels. The script will only typically
`need to be transmitted very infrequently. Also, since an
`individualfile is typically much smaller than the scriptfiles,
`the data can be updated quite frequently, giving the user of
`mobile device 18 updated web content information, without
`transmitting new script. Thus, the separation of the script
`and data allows the transmission of web content information
`
`in a very efficient manner over low bit rate channels.
`It is worth noting that, in the preferred embodiment, while
`mobile device 18 can be coupled to desktop computer 16, it
`can be also coupled to another mobile device 18. This
`connection can be made using any suitable, and commer-
`cially available, communication link and using a suitable
`12
`
`IPR2024-00145
`Apple EX1006 Page 12
`
`
`
`US 6,449,638 B1
`
`5
`in one preferred
`communications protocol. For instance,
`embodiment, mobile device 18 communicates with either
`desktop computer 16 or another mobile device 18 with a
`physical cable which communicates using a serial commu-
`nications protocol. Other communication mechanisms are
`also contemplated by the present invention, such as infra-red
`CR) communication or other suitable communication
`mechanisms.
`
`FIG. 2 is a more detailed block diagram of mobile device
`18. Mobile device 18 preferably includes microprocessor 30,
`memory 32,
`input/output (I/O) components 34, desktop
`communication interface 36 wireless receiver 37 and
`
`10
`
`antenna 39. In a preferred embodiment, these components of
`mobile device 10 are coupled for communication with one
`another over a suitable bus 38.
`
`15
`
`Memory 32 is preferably implemented as non-volatile
`electronic memory such as random access memory (RAM)
`with a battery back-up module (not shown) such that infor-
`mation stored in memory 32 is not lost when the general
`power to mobile device 18 is shut down. A portion of
`memory 32 is preferably allocated as addressable memory
`for program execution, while another portion of memory 32
`is preferably used for storage, such as to simulate storage on
`a disc drive.
`
`Memory32 includes operating system 40, an application
`program 42 (such as a personal information manager or
`PIM) as well as an object store 44. During operation,
`operating system 40 is preferably executed by processor 30
`from memory 32. Operating system 40, in one preferred
`embodiment,
`is a Windows CE brand operating system
`commercially available from Microsoft Corporation. The
`operating system 40 is preferably designed for mobile
`devices, and implements database features which can be
`utilized by PIM 42 through a set of exposed application
`programming interfaces and methods. The objects in object
`store 44 are preferably maintained by PIM 42 and operating
`system 40, at
`least partially in response to calls to the
`exposed application programming interfaces and methods.
`1/O components 34,
`in one preferred embodiment, are
`provided to facilitate input and output operations from a user
`of mobile device 18. I/O components 34 are described in
`greater detail with respect to FIGS. 3 and 4.
`Desktop communication interface 36 is optionally pro-
`vided as any suitable communication interface. Interface 36
`is preferably used to communicate with desktop computer
`16, content provider 12, wireless carrier 14 and optionally
`another mobile device 18, as described with respect to FIG.
`1. Thus, communication interface 36 preferably includes
`synchronization components 28 for communicating with
`desktop computer 16 and modem 24 for communicating
`with content provider 12. Wireless receiver and driver 22 are
`used for communicating with wireless carrier 14.
`FIG. 3 is a simplified pictorial illustration of one preferred
`embodiment of a mobile device 10 which can be used in
`accordance with the present invention. Mobile device 10, as
`illustrated in FIG. 3, can be a desktop assistant sold under
`the designation H/PC having software provided by the
`Microsoft Corporation.
`In one preferred embodiment,
`mobile device 18 includes a miniaturized keyboard 43,
`display 45 and stylus 46. In the embodiment shown in FIG.
`3, display 45 is a liquid crystal display (LCD) which uses a
`contact sensitive display screen in conjunction with stylus
`46. Stylus 46 is used to press or contact the display 45 at
`designated coordinates to accomplish certain user input
`functions. Miniaturized keyboard 43 is preferably imple-
`mented as a miniaturized alpha-numeric keyboard, with any
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`suitable and desired function keys which are also provided
`for accomplishing certain user input functions.
`FIG. 4 is another simplified pictorial illustration of the
`mobile device 18 in accordance with another preferred
`embodiment of the present invention. Mobile device 18, as
`illustrated in FIG. 4, includes some items which are similar
`to those described with respect to FIG. 3, and are similarly
`numbered. For instance, mobile device 18, as shown in FIG.
`4, also includes touch sensitive screen 45 which can be used,
`in conjunction with stylus 46, to accomplish certain user
`input functions. It should be noted that the display 45 for the
`mobile device as shown in FIGS. 3 and 4 can be the same
`size as one another, or different sizes from one another, but
`would typically be much smaller than a conventional display
`used with a desktop computer. For example, displays 45
`shown in FIGS. 3 and 4 may be defined by a matrix of only
`240x320 coordinates, or 160x160 coordinates, or any other
`suitable size.
`The mobile device 18 shown in FIG. 4 also includes a
`numberof user input keys or buttons (suchas scroll buttons
`47) which allow the user to scroll through menu options or
`other display options which are displayed on display 45, or
`which allow the user to change applications, without con-
`tacting display 45. In addition, the mobile device 18 also
`shownin FIG. 4 also preferably includes a power button 49
`which can be used to turn on andoff the general power to the
`mobile device 18.
`
`It should also be noted that, in the embodimentillustrated
`in FIG. 4, mobile device 18 includes a hand writing area 51.
`Hand writing area 51 can be used in conjunction with stylus
`46 such that the user can write messages whichare stored in
`memory 42 for later use by the mobile device 18. In one
`illustrative embodiment,
`the hand written messages are
`simply stored in hand written form and can be recalled by
`the user and displayed on the display screen 45 such that the
`user can review the hand written messages entered into the
`mobile device 18. In another preferred embodiment, mobile
`device 18 is provided with a character recognition module
`such that the user can enter alpha-numeric information into
`mobile device 18 by writing that alpha-numeric information
`on area 51 with stylus 46. In that instance, character recog-
`nition module in the mobile device 18 recognizes the
`alpha-numeric characters and converts the characters into
`computer recognizable alpha-numeric characters which can
`be used by the application programs 42 in mobile device 18.
`FIG. 5 and the related discussion are intended to provide
`a brief, general description of a suitable desktop computer
`16 in which portions of the invention may be implemented.
`Although not required, the invention will be described, at
`least in part, in the general context of computer-executable
`instructions, such as program modules, being executed by a
`personal computer 16 or mobile device 18. Generally, pro-
`gram modules include routine programs, objects,
`components, data structures, etc.
`that perform particular
`tasks or implementparticular abstract data types. Moreover,
`those skilled in the art will appreciate that desktop computer
`16 may be implemented with other computer system
`configurations,
`including multiprocessor systems,
`microprocessor-based or programmable consumer
`electronics, network PCs, minicomputers, mainframe
`computers,and the like. The invention mayalso be practiced
`in distributed computing environments where tasks are
`performed by remote processing devices that are linked
`through a communications network. In a distributed com-
`puting environment, program modules may be located in
`both local and remote memory storage devices.
`With reference to FIG. 5, an exemplary system for imple-
`menting desktop computer 16 includes a general purpose
`13
`
`IPR2024-00145
`Apple EX1006 Page 13
`
`
`
`US 6,449,638 B1
`
`7
`computing device in the form of a conventional personal
`computer 16,
`including processing unit 48, a system
`memory 50, and a system bus 52 that couples various system
`components including the system memory 50 to the pro-
`cessing unit 48. The system bus 52 may beany of several
`types of bus structures including a memory bus or memory
`controller, a peripheral bus, and a local bus using any of a
`variety of bus architectures. The system memory 50 includes
`read only memory (ROM) 54 a random access memory
`(RAM)55. A basic input/output system (BIOS) 56, contain-
`ing the basic routine that helps to transfer information
`between elements within the desktop computer 16, such as
`during start-up, is stored in ROM 54. The desktop computer
`16 further includes a hard disk drive 57 for reading from and
`writing to a hard disk (not shown) a magnetic disk drive 58
`for reading from or writing to removable magnetic disk 59,
`and an optical disk drive 60 for reading from or writing to
`a removable optical disk 61 such as a CD ROM orother
`optical media. The hard disk drive 57, magnetic disk drive
`58, and optical disk drive 60 are connected to the system bus
`52 by a hard disk drive interface 62, magnetic disk drive
`interface 63, and an optical drive interface 64, respectively.
`The drives and the associated computer-readable media
`provide nonvolatile storage of computer
`readable
`instructions, data structures, program modules and other
`data for the desktop computer 16.
`Although the exemplary environment described herein
`employs a hard disk, a removable magnetic disk 59 and a
`removable optical disk 61, it should be appreciated by those
`skilled in the art that other types of computer readable media
`which can store data that is accessible by a computer, such
`as magnetic cassettes, flash memory cards, digital video
`disks (DVDs), Bernoulli cartridges, random access memo-
`ries (RAMs), read only memory (ROM),and the like, may
`also be used in the exemplary operating environment.
`Anumberof program modules may be stored on the hard
`disk, magnetic disk 59, optical disk 61, ROM 54 or RAM 55,
`including an operating system 65, one or more application
`programs 66 (which may include PIMs), other program
`modules 67 (which may include synchronization component
`26), and program data 68. A user may enter commands and
`information into the desktop computer 16 through input
`devices such as a keyboard 70, pointing device 72 and
`microphone 74. Other input devices (not shown) may
`include a joystick, game pad,satellite dish, scanner, or the
`like. These and other input devices are often connectedto the
`processing unit 48 throug