throbber
Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 1 of 41
`Case 5:20-cv-08339—VKD Document 1—2 Filed 11/25/20 Page 1 of 41
`
`EXHIBIT B
`
`EXHIBIT B
`
`

`

`US009063755B2
`
`(12) United States Patent
`Rempell et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 9,063,755 B2
`Jun. 23, 2015
`
`(54) SYSTEMS AND METHODS FOR
`PRESENTING INFORMATION ON MOBILE
`DEVICES
`
`(75) Inventors: Steven H. Rempell, Novato, CA (US);
`David Chrobak, Clayton, CA (US); Ken
`Brown, San Martin, CA (US)
`(73) Assignee: Express Mobile, inc., Novato, CA (US)
`(*) Notice:
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 154 days.
`12/936,395
`Apr. 6, 2009
`PCT/US2009/039695
`
`(21) Appl. No.:
`(22) PCT Filed:
`(86). PCT No.:
`S371 (c)(1),
`Nov. 3, 2010
`(2), (4) Date:
`(87) PCT Pub. No.: WO2009/126591
`PCT Pub. Date: Oct. 15, 2009
`
`(65)
`
`Prior Publication Data
`US 2011 FO1 O7227A1
`May 5, 2011
`
`Related U.S. Application Data
`(60) Provisional application No. 61/166.651, filed on Apr.
`3, 2009, provisional application No. 61/113,471, filed
`on Nov. 11, 2008, provisional application No.
`61/123,438, filed on Apr. 7, 2008.
`(51) Int. Cl.
`G06F 3/048
`G06F 9/44
`G06F 9/45
`
`(2013.01)
`(2006.01)
`(2006.01)
`
`(52) U.S. Cl.
`CPC .................................... G06F 9/4443 (2013.01)
`(58) Field of Classification Search
`CPC ....................................................... GO6F 3/048
`USPC .......................................................... 71.5/738
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`2004/0055017 A1* 3/2004 Delpuchet al. ............... 725/110
`2004/0163020 A1* 8, 2004 Sidman ..........
`... 714,100
`2005, 01499.35 A1* 7, 2005 Benedetti ....
`... 718, 102
`2005/0273705 A1* 12/2005 McCain .........
`T15,513
`2006/0063518 A1
`3/2006 Paddon et al. ................ 455,418
`
`OTHER PUBLICATIONS
`
`Stina Nylander etal. “The Ubiquitous Interactor-Device Independent
`Access to MobileServices” (Computer-Aided Design for User Inter
`faces IV, Proceedings of the Fifth International Conference on Com
`puter-Aided Design of User Interfaces CADUI 2004, Jan. 2004, pp.
`271-282).*
`* cited by examiner
`Primary Examiner — Jennifer To
`Assistant Examiner — Xuyang Xia
`(74) Attorney, Agent, or Firm — Steven R. Vosen
`(57)
`ABSTRACT
`Embodiments of a system and method are described for gen
`erating and distributing programming to mobile devices over
`a network. Devices are provided with Players specific to each
`device and Applications that are device independent.
`Embodiments include a full-featured WYSIWYG authoring
`environment, including the ability to bind web components to
`objects.
`
`28 Claims, 18 Drawing Sheets
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 2 of 41
`
`OO y
`
`A
`Server
`110 Authoring — 120
`Platform
`------------------------121 Network
`11 Memory
`Interface
`
`12 Auerns
`
`114 Devi
`Routines
`
`"s.
`
`13 Processor
`
`17 input
`Device
`
`Content
`140 Server
`14 Network
`terface
`
`143 Memory
`
`145 Processor
`
`123 Memory
`
`25 Processor
`
`
`
`131 Network
`Interface
`
`133 Memory
`
`Processor
`
`137 Screen
`139 input
`device
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 1 of 18
`
`US 9,063,755 B2
`
`OO N
`
`
`
`1 O Authoring
`Patform
`111 Memory
`112 Authoring
`Too
`
`114 Device
`Routines
`
`3 Processor
`11
`
`-------------------------- . 121 Network
`interface
`B-1
`
`31 Metwork
`interface
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 3 of 41
`
`FG. A
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 2 of 18
`
`US 9,063,755 B2
`
`
`
`OO N 1 O Authoring
`
`C-1, R-1
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 4 of 41
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 3 of 18
`
`US 9,063,755 B2
`
`2OO N
`
`Players
`y
`
`
`
`O.
`Authoring
`Platform
`
`Lpad Registry
`
`Applications
`
`
`
`Access
`
`Y. W. W.
`
`W. W. W.
`
`W.
`
`W. W.
`
`W. W. W. W. W. W. W.
`
`W. W. W.
`
`W. W.
`
`W.
`
`W. W.
`
`W.
`
`W. W.
`
`W. W.
`
`W. Y
`
`Registry
`
`220
`WebComponent
`Registry
`
`W
`Applications
`
`Deploy
`Registry
`
`
`
`210 Response
`Director
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 5 of 41
`
`FG. 2A
`
`Web
`
`Request
`
`Proxy
`HTP/XM
`Request
`and
`Response
`230
`
`
`
`Web Service
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 4 of 18
`
`US 9,063,755 B2
`
`
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 6 of 41
`
`JOSS3DO)
`
`8 Z '91-'
`
`

`

`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 7 of 41
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 7 of 41
`
`U.S. Patent
`
`n
`
`3
`
`0
`
`001
`
`US 9,063,755 B2
`
`JUmom
`2,mmom
`uRem
`Mmom5\mmom
`mumom 520m20m20m
`mom.1\\\\\\\\\\\\\x\
`
`SmtomEomfem
`
`WISmif8m
`
`mmom
`
`gmom
`
`.§§
`~x\\\\\\.
`
`umom
`
`<mdE
`
`

`

`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 8 of 41
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 8 of 41
`
`23,2
`
`5
`
`ehS
`
`00
`
`US 9,063,755 B2
`
`emmOm
`
`U.S. Patent
`
`n...m
`
`woomvmomuQOmDoommmom
`
`nmmmom0..,
`e_
`
`h_momEBm
`mNmoomA/t£8
`
`
`m:
`
`mom
`
`
`
`”I:com
`
`unom
`
`mm@E
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 7 of 18
`
`US 9,063,755 B2
`
`--
`309b
`
`SS
`
`
`
`Soto Exterisai Nei Page sepiacing Crest Fame
`{SE} xSassages age 388.8 is a Se; iii.38
`Sato a specific page Fiest
`$8 Exissates age Sesiacing Saci Fiasis
`$goto the next Page view
`Execisie JavaScriptiletics
`assessessie age is ext:
`Execisie & Applicatics
`G8 is a Specisi: Side is a Page siew
`£isis:
`Exit Player
`Piace psafe Cai
`Sessi Sising 8 FIRE
`Sasi Siig is ERE { SYasic says
`
`* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
`
`Šssascaissatastise Seigs
`Stsiastiaissaries
`Sisatiss Esty Sssssssss
`Eisaite Series listeres
`Sisi is R.
`Tessia Cities as RE
`iiie SS-Seister Cities
`
`
`
`is:se Sisie
`
`309b3
`
`Object Selected Audio Settings
`ar, R. Sise
`
`309b.4
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 9 of 41
`
`
`
`Object Selected: Text Field
`
`FG. 3C
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 8 of 18
`
`US 9,063,755 B2
`
`
`
`Š S. S
`
`w
`
`Šiš
`
`Sco Sigis
`SSESS
`Šišiliš'
`
`
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 10 of 41
`
`FG. 3D
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 9 of 18
`
`US 9,063,755 B2
`
`309e
`
`
`
`
`
`
`
`309e2
`
`eis (aparter at set Servi
`Y
`Attributes Exposed
`S
`S
`
`
`
`
`
`
`
`seat Siege
`sex.
`S
`309es tagse assie
`
`as :
`
`
`
`w
`
`309e11
`
`309e12
`
`309e8
`
`Seise
`Retsie's
`
`. ... is
`
`ite fee
`N
`s
`8
`S
`"r
`Sesii:
`r
`S. . . . . . . . . . . . . .a & S
`. . . . . . . . . . . . . . . . . . . . . . sas
`. .
`
`Operatio:
`
`3O9e1 O
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 11 of 41
`
`
`
`309e9
`
`FG.3E
`
`

`

`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 12 of 41
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 12 of 41
`
`US. Patent
`
`Jun. 23, 2015
`
`Sheet 10 of 18
`
`US 9,063,755 B2
`
`319
`
`31 9b
`
`31 9C
`
`31 9d
`
`31 9e
`
`Ewan}
`
`59kt? Rem{is} Page
`
`

`5
`
`I
`.ficfimfiofl {Emma‘s
`,
`
`g 3
`“m
`;
`
`'
`
`
`‘
`
`319a
`
`
`
`
`
`Same w xcammnmt
`
`RES Elia-{3 35F mu
`
`waggwaimflifecfim agetfliseflmna
`RMWEESL‘SQXfifiWZEEaSEeF-PampfinN
`
`
`Nwfluest—Gfiifimpfimsm i-9‘ampeanfi
`fiafifimfi-fiefifimfiflusfie{3232343353E
`
`mmuasuaemammsmfiampaaaw
`
`Wwfiuesiemfiemtmlw 96m.gemfiapflma
`“WWW?““WfiW “WWWW
`fikpfltsesimt 319$
`mm tea
`SemiSNS
`L IA
`weather:
`Weathe:
`mafia-5
`Sim-ks-
`:F mamas gait? Hews
`‘Fafifififlrflsafifi Rams
`FBfiflgfiGfl 5.3-9an
`3F Bfiafienagetm
`‘Famtimlsmmfimmo
`mam
`Wet} Seasick
`R 5 $1
`gamma? flgemBYDQ'Es-fl
`
`RingMae-37w“: 8
`
`Sea whim
`Seami:
`
`55323 mi: Ringimea
`
`, fikggkfifige
`I
`I
`I
`I
`
`
`
`flmm
`
`
`
`
`
`
`I
`
`I
`
`I
`
`FEG. 3F
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 11 of 18
`
`US 9,063,755 B2
`
`
`
`/8 ||
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 13 of 41
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 12 of 18
`
`US 9,063,755 B2
`
`
`
`
`
`
`
`
`
`
`
`
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 14 of 41
`
`?ZOG
`
`pZOG
`
`DZOG CIZOGZ09
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 13 of 18
`
`US 9,063,755 B2
`
`700
`
`7O 1 a
`
`
`
`701b.
`
`701 d
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 15 of 41
`
`FG. 7
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 14 of 18
`
`US 9,063,755 B2
`
`8OO N
`
`8O1
`Website System
`
`8O3.
`SMS Server "
`
`805
`Content Server
`
`
`
`Promo Code
`
`805
`Content Server
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 16 of 41
`
`FG. 9
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 15 of 18
`
`US 9,063,755 B2
`
`OOO N
`
`
`
`
`
`
`
`
`
`
`
`
`
`isis
`Qafter
`$8$8y
`
`OO
`
`
`& 8:::::::::8: O
`
`Atemiss RaF
`& Es:
`
`
`
`
`
`O2
`O3
`O4.
`
`1 O 5
`
`
`
`
`
`
`
`
`
`
`
`O6
`
`Of
`
`O8
`O 9
`O2)
`
`O2
`
`
`
`
`
`Sassasax assawaxas
`
`
`
`
`
`F.G. 1 O
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 17 of 41
`
`
`
`is:
`
`iyassi: V.
`Carter Serger
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 16 of 18
`
`US 9,063,755 B2
`
`
`
`88 || ||
`
`65 ? ?
`
`s
`
`&zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzºzzzzzzzzzzzzzzzzzzz
`
`sy Syssssssssssss
`
`%
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 18 of 41
`
`

`

`U.S. Patent
`
`US 9,063,755 B2
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 19 of 41
`
`

`

`U.S. Patent
`
`Jun. 23, 2015
`
`Sheet 18 of 18
`
`US 9,063,755 B2
`
`Receive
`
`easier
`
`SSSSSSSSSSSSS3&SSSSSSSSSSSSSS3&SSSSSSSSSSSSSS3&S
`
`
`
`SSSSSSSSSS&S
`
`Exisery for
`& ice &&isities
`Operator aid acaie
`
`
`
`S&reate
`
`
`
`
`
`2 O
`
`Respoise Eirector
`
`
`
`tiery and Receive
`JRi. for atching Player
`
`
`
`
`
`
`
`
`
`Bewice Appropriate isye iristaii
`
`payer Profile
`at&tas
`
`
`
`305 \
`
`Player Build Process
`Generate Fayets for a:
`Asfact: it pi&;8&ntatios
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 20 of 41
`
`FG, 3
`
`

`

`US 9,063,755 B2
`
`1.
`SYSTEMS AND METHODS FOR
`PRESENTING INFORMATION ON MOBILE
`DEVICES
`
`TECHNICAL FIELD
`
`The present invention generally relates to providing soft
`ware for mobile devices, and more particularly to a method
`and system for authoring Applications for devices.
`
`BACKGROUND ART
`
`Internet-connected mobile devices are becoming ever
`more popular. While these devices provide portability to the
`Internet, they generally do not have the capabilities of non
`mobile devices including computing, input and output capa
`bilities.
`In addition, the mobility of the user while using such
`devices provides challenges and opportunities for the use of
`the Internet. Further, unlike non-mobile devices, there are a
`large number of types of devices and they tend to have a
`shorter lifetime in the marketplace. The programming of the
`myriad of mobile devices is a time-consuming and expensive
`proposition, thus limiting the ability of service providers to
`update the capabilities of mobile devices.
`Thus there is a need in the art for a method and apparatus
`that permits for the efficient programming of mobile devices.
`Such a method and apparatus should be easy to use and
`provide output for a variety of devices.
`
`DISCLOSURE OF INVENTION
`
`10
`
`15
`
`25
`
`30
`
`2
`In another embodiment, one of the codes is an Application
`that is a device independent code that interpreted by the
`Player.
`These features together with the various ancillary provi
`sions and features which will become apparent to those
`skilled in the art from the following detailed description, are
`attained by the system and method of the present invention,
`preferred embodiments thereof being shown with reference
`to the accompanying drawings, by way of example only,
`wherein:
`
`BRIEF DESCRIPTION OF DRAWINGS
`
`FIG. 1A is an illustrative schematic of one embodiment of
`a system including an authoring platform and a server for
`providing programming instructions to a device over a net
`work;
`FIG.1B is schematic of an alternative embodiment system
`for providing programming instructions to device over a net
`work;
`FIG. 2A is a schematic of an embodiment of system illus
`trating the communications between different system com
`ponents;
`FIG. 2B is a schematic of one embodiment of a device
`illustrating an embodiment of the programming generated by
`authoring platform;
`FIGS. 3A and 3B illustrate one embodiment of a publisher
`interface as it appears, for example and without limitation, on
`a screen while executing an authoring tool;
`FIG. 3C illustrates an embodiment of the Events Tab'
`FIG. 3D illustrates one embodiment of an Animation Tab:
`FIG.3E illustrates one embodiment of Bindings Tab:
`FIG.3F illustrates one embodiment of a pop-up menu for
`adding web components;
`FIG. 4A shows a publisher interface having a layout on a
`canvas; and FIG. 4B shows a device having the resulting
`layout on a device Screen;
`FIG. 5 shows a display of launch strips:
`FIG. 6A is a display of a Channel Selection List:
`FIG. 6B is a display of a Widget Selection List;
`FIG. 6C is a display of a Phone List:
`FIG. 7 shows a display of a mash-up:
`FIG. 8 is a schematic of an embodiment of a push capable
`system;
`FIG. 9 is a schematic of an alternative embodiment of a
`push capable system;
`FIG. 10 is a schematic of one embodiment of a feed col
`lector;
`FIG. 11 is a schematic of an embodiment of a Mobile
`Content Gateway;
`FIG. 12 is a schematic of one embodiment of a system that
`includes a response director, a user agent database, an IP
`address database, and a file database; and
`FIG. 13 is a schematic of another embodiment of a system
`that includes a response director, a user agent database, an IP
`address database, and a file database.
`Reference symbols are used in the Figures to indicate cer
`tain components, aspects or features shown therein, with
`reference symbols common to more than one Figure indicat
`ing like components, aspects or features shown therein.
`
`MODE(S) FORCARRYING OUT THE
`INVENTION
`
`FIG. 1A is an illustrative schematic of one embodiment of
`a system 100 including an authoring platform 110 and a
`server 120 for providing programming instructions to a
`
`In certain embodiments, a system is provided to generate
`code to provide content on a display of a platform. The system
`includes a database of web services obtainable over a network
`and an authoring tool. The authoring tool is configured to
`define an object for presentation on the display, select a com
`ponent of a web service included in said database, associate
`said object with said selected component, and produce code
`that, when executed on the platform, provides said selected
`component on the display of the platform.
`In certain other embodiments, a method is provided for
`providing information to platforms on a network. The method
`includes accepting a first code over the network, where said
`first code is platform-dependent; providing a second code
`over the network, where said second code is platform-inde
`pendent; and executing said first code and said second code
`on the platform to provide web components obtained over the
`network.
`In certain embodiments, a method for displaying content
`on a platform utilizing a database of web services obtainable
`over a network is provided. The method includes: defining an
`object for presentation on the display; selecting a component
`of a web service included in said database; associating said
`object with said selected component; and producing code
`that, when executed on the platform, provides said selected
`component on the display of the platform.
`In one embodiment, one of the codes is a Player, which is
`a thin client architecture that operates in a language that
`manages resources efficiently, is extensible, Supports a robust
`application model, and has no device specific dependencies.
`In another embodiment, Player P is light weight and extends
`the operating system and/or virtual machine of the device to:
`Manage all applications and application upgrades, and
`resolve device, operating system, VM and language fragmen
`tation.
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 21 of 41
`
`

`

`US 9,063,755 B2
`
`5
`
`10
`
`15
`
`25
`
`35
`
`40
`
`45
`
`3
`device 130 over a network N. In one embodiment, device 130
`is a wireless device, and network N includes wireless com
`munication to the device. Alternatively, system 100 may pro
`vide access over network N to other information, data, or
`content, such as obtainable as a web service over the Internet.
`In general, a user of authoring platform 110 may produce
`programming instructions or files that may be transmitted
`over network N to operate device 130, including instructions
`or files that are sent to device 130 and/or server 120. The result
`of the authoring process is also referred to herein, and without
`limitation, as publishing an Application.
`Embodiments include one or more databases that store
`information related to one or more devices 130 and/or the
`content provided to the devices. It is understood that such
`databases may reside on any computer or computer system on
`networkN, and that, in particular, the location is not limited to
`any particular server, for example.
`Device 130 may be, for example and without limitation, a
`cellular telephone or a portable digital assistant, includes a
`network interface 131, a memory 133, a processor 135, a
`screen 137, and an input device 139. Network interface 131 is
`used by device 130 to communication over a wireless net
`work, such as a cellular telephone network, a WiFi network or
`a WiMax network, and then to other telephones through a
`public switched telephone network (PSTN) or to a satellite, or
`over the Internet. Memory 133 includes programming
`required to operate device 130 (such as an operating system or
`virtual machine instructions), and may include portions that
`store information or programming instructions obtained over
`network interface 131, or that are input by the user (such as
`telephone numbers or images from a device camera (not
`shown). In one embodiment screen 137 is a touch screen,
`providing the functions of the screen and input device 139.
`Authoring platform 110 includes a computer or computer
`system having a memory 111, a processor 113, a screen 115,
`and an input device 117. It is to be understood that memory
`111, processor 113, screen 115, and input device 117 are
`configured such a program stored in the memory may be
`executed by the processor to accept input from the input
`device and display information on the screen. Further, the
`program stored in memory 111 may also instruct authoring
`platform 110 to provide programming or information, as indi
`cated by the line labeled “A” and to receive information, as
`indicated by the line labeled “B”
`Memory 111 is shown schematically as including a stored
`program referred to herein, and without limitation, as an
`authoring tool 112. In one embodiment, authoring tool 112 is
`a graphical system for designing the layout of features as a
`display that is to appear on screen 137. One example of
`authoring tool 112 is the CDERTM publishing platform (Ex
`50
`press Mobile, Inc., Novato, Calif.).
`In another embodiment, which is not meant to limit the
`scope of the present invention, device 130 may include an
`operating system having a platform that can interpret certain
`routines. Memory 111 may optionally include programming
`referred to herein, and without limitation, as routines 114 that
`are executable on device 130.
`Routines 114 may include device-specific routines—that
`is, codes that are specific to the operating system, program
`ming language, or platform of specific devices 130, and may
`include, but are not limited to, Java, Windows Mobile, Brew,
`Symbian OS, or Open Handset Alliance (OHA). Several
`examples and embodiments herein are described with refer
`ence to the use of Java. It is to be understood that the invention
`is not so limited, except as provided in the claims, and that one
`skilled in the art could provide Players for devices using
`routines provided on a platform. Thus as an example, routines
`
`30
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 22 of 41
`
`55
`
`60
`
`65
`
`4
`114 may include Java APIs and an authoring tool System
`Development Kit (SDK) for specific devices 130.
`Server 120 is a computer or computer system that includes
`a network interface 121, a memory 123. and a processor 125.
`Is to be understood that network interface 121, memory 123,
`and processor 125 are configured such that a program stored
`in the memory may be executed by the processor to: accept
`input and/or provide output to authoring platform 110; accept
`input and/or provide output through network interface 121
`over network N to network interface 131; or store information
`from authoring platform 110 or from device 130 for transmis
`sion to another device or system at a later time.
`In one embodiment, authoring platform 110 permits a user
`to design desired displays for screen 137 and actions of device
`130. In other words, authoring platform 110 is used to pro
`gram the operation of device 130. In another embodiment,
`authoring platform 110 allows a user to provide input for the
`design of one or more device displays and may further allow
`the user to save the designs as device specific Applications.
`The Applications may be stored in memory 123 and may then
`be sent, when requested by device 130 or when the device is
`otherwise accessible, over network N, through network inter
`face 130 for storage in memory 133.
`In an alternative embodiment, analytics information from
`devices 130 may be returned from device 130, through net
`work N and server 120, back to authoring platform 110, as
`indicated by line B, for later analysis. Analytics information
`includes, but is not limited to, user demographics, time of day,
`and location. The type of analytic content is only limited by
`which listeners have been activated for which objects and for
`which pages. Analytic content may include, but is not limited
`to, player-side page view, player-side forms-based content,
`player-side user interactions, and player-side object status.
`Content server 140 is a computer or computer system that
`includes a network interface 141, a memory 143. and a pro
`cessor 145. It is to be understood that network interface 141,
`memory 143, and processor 145 are configured such that a
`stored program in the memory may be executed by the pro
`cessor to accepts requests R from device 130 and provide
`content C over a network, such as web server content the
`Internet, to device 130.
`FIG.1B is schematic of an alternative embodiment system
`100 for providing programming instructions to device 130
`over a network N that is generally similar to the system of
`FIG. 1A. The embodiment of FIG. 1B illustrates that system
`100 may include multiple servers 120 and/or multiple devices
`130.
`In the embodiment of FIG. 1B, system 100 is shown as
`including two or more servers 120, shown illustratively and
`without limitation as servers 120a and 120b. Thus some of the
`programming or information between authoring platform
`110 and one or more devices 130 may be stored, routed,
`updated, or controlled by more than one server 120. In par
`ticular, the systems and methods described herein may be
`executed on one or more server 120.
`Also shown in FIG. 1B are a plurality of devices 130,
`shown illustratively and without limitation as device 130-1,
`130-1,... 130-N. System 100 may thus direct communication
`between individual server(s) 120 and specific device(s) 130.
`As described subsequently, individual devices 130 may be
`provided with program instructions which may be stored in
`each device's memory 133 and where the instructions are
`executed by each device's processor 135. Thus, for example,
`server(s) 120 may provide device(s) 130 with programming
`in response to the input of the uses of the individual devices.
`Further, different devices 130 may be operable using different
`sets of instructions, that is having one of a variety of different
`
`

`

`5
`“device platforms. Differing device platforms may result,
`for example and without limitation, to different operating
`systems, different versions of an operating system, or differ
`ent versions of virtual machines on the same operating sys
`tem. In some embodiments, devices 130 are provided with
`Some programming from authoring system 100 that is par
`ticular to the device.
`In one embodiment, system 100 provides permits a user of
`authoring platform 110 to provide instructions to each of the
`plurality of devices 130 in the form of a device- or device
`platform specific instructions for processor 135 of the device,
`referred to herein and without limitation as a “Player, and a
`device-independent program, referred to herein and without
`limitation as an "Application' Thus, for example, authoring
`platform 110 may be used to generate programming for a
`plurality of devices 130 having one of several different device
`platforms. The programming is parsed into instructions used
`by different device platforms and instructions that are inde
`pendent of device platform. Thus in one embodiment, device
`130 utilizes a Player and an Application to execute program
`ming from authoring platform 110. A device having the cor
`rect Player is then able to interpret and be programmed
`according to the Application.
`In one alternative embodiment, the Player is executed the
`first time by device 130 (“activated') through an Application
`directory. In another alternative embodiment, the Player is
`activated by a web browser or other software on device 130.
`In yet another alternative embodiment, Player is activated
`through a signal to device 130 by a special telephone num
`30
`bers, such as a short code.
`When the Application and the Player are provided to
`memory 133, the functioning of device 130 may occur in
`accordance with the desired programming. Thus in one
`embodiment, the Application and Player includes program
`ming instructions which may be stored in memory 133 and
`which, when executed by processor 135, generate the
`designed displays on screen 137. The Application and Player
`may also include programming instructions which may be
`stored in memory 133 and which provide instructions to
`processor 135 to accept input from input device 139.
`Authoring tool 112 may, for example, produce and store
`within memory 111a plurality of Players (for different
`devices 130) and a plurality of Applications for displaying
`pages on all devices. The Players and Applications are then
`stored on one or more servers 120 and then provided to
`individual devices 130. In general, Applications are provided
`to device 130 for each page of display or a some number of
`pages. A Player need be provided once or updated as neces
`sary, and thus may be used to display a large number of
`Applications. This is advantageous for the authoring process,
`since all of the device-dependent programming is provided to
`a device only once (or possibly for Some Small number of
`upgrades), permitting a smaller Application, which is the
`same for each device 130.
`Thus, for example and without limitation, in one embodi
`ment, the Player transforms device-independent instructions
`of the Application into device-specific instructions that are
`executable by device 130. Thus, by way of example and
`without limitation, the Application may include Java pro
`gramming for generating a display on Screen 137, and the
`Player may interpret the Java and instruct processor 135 to
`produce the display according to the Application for execu
`tion on a specific device 130 according to the device platform.
`The Application may in general include, without limitation,
`instructions for generating a display on Screen 137, instruc
`tions for accepting input from input device 139, instructions
`
`50
`
`Case 5:20-cv-08339-VKD Document 1-2 Filed 11/25/20 Page 23 of 41
`
`35
`
`40
`
`45
`
`55
`
`60
`
`65
`
`US 9,063,755 B2
`
`10
`
`15
`
`25
`
`6
`for interacting with a user of device 130, and/or instructions
`for otherwise operating the device. Such as to place a tele
`phone call.
`The Application is preferably code in a device-independent
`format, referred to herein and without limitation as a Portable
`Description Language (PDL). The device's Player interprets
`or executes the Application to generate one or more pages'
`(Applications Pages') on a display as defined by the PDL.
`The Player may include code that is device-specific—that it,
`each device is provided with a Player that is used in the
`interpretation and execution of Applications. Authoring tool
`112 may thus be used to design one or more device-indepen
`dent Applications and may also include information on one or
`more different devices 130 that can be used to generate a
`Player that specific devices may use to generate displays from
`the Application.
`In one embodiment, system 100 provides Players and
`Applications to one server 120, as in FIG. 1A. In another
`embodiment, system 100 provides Players to a first server
`120a and Applications to a second server 120b, as in FIG. 1B.
`In one embodiment, authoring tool 112 may be used to
`program a plurality of different devices 130, and routines 114
`may include device-specific routines. In another embodi
`ment, the Player is of the type that is commonly referred to as
`a “thin client’ that is, software for running on the device as
`a client in client-server architecture with a device network
`which depends primarily on a central server for processing
`activities, and mainly focuses on conveying input and output
`between the user and the server.
`In one embodiment, authoring platform 110 allows user to
`arrange objects for display on screen. A graphical user inter
`face (“GUI. or “UI) is particularly well suited to arranging
`objects, but is not necessary. The objects may correspond to
`one or more of an input object, an output object, an action
`object, or may be a decorative display, Such as a logo, or
`background color or pattern, such as a solid or gradient fill. In
`another embodiment, authoring platform 110 also permits a
`user to assign actions to one or more of an input object, an
`output object, oran action object. In yet another embodiment,
`authoring platform 110 also permits a user to bind one or
`more of an input object, an output object, or an action object
`with web services or web components, or permits a user to
`provide instructions to processor 135 to store or modify infor
`mation in memory 133, to navigate to another display or
`service, or to perform other actions, such as dialing a tele
`phone number.
`In certain embodiments, the applicant model used in devel
`oping and providing Applications is a PDL. The PDL can be
`conceptually viewed as a device, operating system and virtual
`machine agnostic representation of Java serialized objects. In
`certain embodiments, the PDL is the common language for
`authoring tool 112, the Application, and Player. Thus while
`either designing the Application with the authoring tool 112,
`or programming with the SDK, the internal representation of
`the programming logic is in Java. In one embodiment the
`SDK is used within a multi-language Software development
`platform comprising an IDE and a plug-in system to extend it,
`such as the Eclipse Integrated Development Environment
`(see, for example, http://www.eclipse.org/). At publish time
`the Java code is translated into a PDL. This translation may
`also occur in real-time during the execution of any Web Ser
`vices or backend business logic that interacts with the user.
`One embodiment for compacting data that may be used is
`described in U.S. Pat. No. 6,546,397 to Rempell (“Rempell”),
`the contents of which are incorporated herein by reference. In
`that patent the compressed data is described as being a data
`
`

`

`US 9,063,755 B2
`
`5
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`7
`base. The terminology used here is a PDL, that is the “internal
`database' of Rempell is equivalent to the PDL of the present
`Application.
`The use of a PDL, as described in Rempell, permits for
`efficient code and data compaction. Code, as well as vector,
`integer and Boolean data may be compacted and then com
`pressed resulting in a size reduction of 40 to 80 times that of
`the original Java serialized objects. This is important not only
`for performance over the network but for utilizing the virtual

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket