throbber
r
`
`\..
`
`PTO/SB/05 (08-08)
`Approved for use through 09/30/2010. 0MB 0651-0032
`U.S. Patent and Trademark Office. U.S. DEPARTMENT OF COMMERCE
`Under the Paperwork Reduction Act of 1995 no Persons are reauired to resPond to a collection of information unless it disPlavs a valid 0MB control number.
`
`UTILITY
`PATENT APPLICATION
`TRANSMITTAL
`
`Attorney Docket No.
`
`XPR.002USOC1
`
`First Inventor
`
`Title
`
`Steven H. Rempell
`
`SYSTEMS AND METHODS FOR PRESENT
`
`"
`
`(Only for new nonprovisional applications under 37 CFR 1.53(b))
`
`Express Mail Label No.
`
`_)
`
`APPLICATION ELEMENTS
`See MPEP chapter 600 concerning utility patent application contents.
`
`ADDRESS TO:
`
`Commissioner for Patents
`P.O. Box 1450
`Alexandria VA 22313-1450
`
`1.0 Fee Transmittal Form (e.g., PTO/SB/17)
`2.0 Applicant claims small entity status.
`See 37 CFR 1.27.
`3.0 Specification
`[Total Pages
`55
`Both the claims and abstract must start on a new page
`(For information on the preferred arrangement, see MPEP 608.0t(a))
`4.0 Drawing(s) (35 U.S.C. 113)
`[Total Sheets
`18
`
`5. Oath or Declaration
`
`[Total Sheets
`
`3
`
`a. 53 Newly executed (original or copy)
`
`b.
`
`i.
`
`A copy from a prior application (37 CFR 1.63(d))
`[]or continuation/divisional with Box 18 completed)
`DELETION OF INVENTOR(S)
`Signed statement attached deleting inventor(s)
`name in the prior application, see 37 CFR
`1.63(d)(2) and 1.33(b).
`
`6.0 Application Data Sheet. See 37 CFR 1. 76
`
`7.(cid:143)
`
`CD-ROM or CD-R in duplicate, large table or
`caputer Program (Appendix)
`Landscape Table on CD
`
`8. Nucleotide and/or Amino Acid Sequence Submission
`(if applicable, items a. - c. are required)
`a.
`Computer Readable Form (CRF)
`b.
`Specification Sequence Listing on:
`
`(cid:143)
`
`l
`
`I
`
`l
`
`10. 0
`
`ACCOMPANYING APPLICATION PARTS
`9. D Assignment Papers (cover sheet & document(s))
`
`Name of Assignee
`
`37 CFR 3.73(b) Statement
`(when there is an assignee)
`
`0Powerof
`Attorney
`
`11.(cid:143) English Translation Document (if applicable)
`12. 0 lnfoEj'tion Disclosure Statement (PTO/SB/08 or PT0-1449)
`Copies of citations attached
`
`13. 0
`Preliminary Amendment
`14. D Return Receipt Postcard (MPEP 503)
`(Should be specifically itemized)
`15. D Certified Copy of Priority Document(s)
`(if foreign priority is claimed)
`16. D Nonpublication Request under 35 U.S.C. 122(b)(2)(B)(i).
`
`Applicant must attach form PTO/SB/35 or equivalent.
`
`CD-ROM or CD-R (2 copies); or
`Paper
`
`17. D Other:
`
`(cid:143)
`(cid:143)
`
`i.
`ii.
`
`(cid:143)
`
`Statements verifying identity of above copies
`C.
`18. If a CONTINUING APPLICATION, check appropriate box, and supply the requisite information below and in the first sentence of the
`specification following the title, or in an Application Data Sheet under 37 CFR 1. 76:
`D Continuation-in-part (CIP)
`0 Continuation
`Prior application information:
`
`(cid:143)
`
`Divisional
`
`of prior application No.: .12!!:13o.,39.5 ................
`
`Examiner Xuiang Xia
`
`Art Unit: 2143
`
`0 The address associated with Customer Number: I
`
`40280
`
`I OR D Correspondence address below
`
`19. CORRESPONDENCE ADDRESS
`
`Name
`
`Address
`
`City
`
`Country
`
`Signature
`
`Name
`(Print/Type)
`
`I State
`I Telephone
`
`/Steven R. Vosen/
`
`Steven R. Vosen
`
`Zip Code
`
`Email
`I Date May 8, 2015
`Registration No. I
`(Attorney/ Aqent) 45,186
`
`This collection of information is required by 37 CFR 1.53(b). The information is required to obtain or retain a benefit by the public which is to file (and by the
`USPTO to process) an application. Confidentiality is governed by 35 U.S.C. 122 and 37 CFR 1.11 and 1.14. This collection is estimated to take 12 minutes to
`complete, including gathering, preparing, and submitting the completed application form to the USPTO. Time will vary depending upon the individual case. Any
`comments on the amount of time you require to complete this form and/or suggestions for reducing this burden, should be sent to the Chief Information Officer,
`U.S. Patent and Trademark Office, U.S. Department of Commerce, P.O. Box 1450, Alexandria, VA 22313-1450. DO NOT SEND FEES OR COMPLETED
`FORMS TO THIS ADDRESS. SEND TO: Commissioner for Patents, P.O. Box 1450, Alexandria, VA 22313-1450.
`If you need assistance in completing the form, ca/11-800-PTO-9199 and select option 2.
`
`SAP Exhibit 1002
`SAP v. Express Mobile, Inc.
`IPR2021-01145
`Page 00001
`
`

`

`SYSTEMS AND METHODS FOR PROGRAMMING MOBILE DEVICES
`
`TECHNICAL FIELD
`
`[0001]
`
`The present invention generally relates to providing software for mobile devices, and
`
`more particularly to a method and system for authoring Applications for devices.
`
`BACKGROUND ART
`
`[0002]
`
`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(cid:173)
`
`mobile devices including computing, input and output capabilities.
`
`[0003]
`
`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.
`
`[0004]
`
`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
`
`[0005]
`
`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 component 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.
`
`[0006]
`
`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-independent; and executing said first code and said second code on the platform
`
`to provide web components obtained over the network.
`
`[0007]
`
`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
`
`docket number: XPR.002WO0
`
`1
`
`IPR2021-01145 Page 00002
`
`

`

`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.
`
`[0008]
`
`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
`
`fragmentation.
`
`[0009]
`
`In another embodiment, one of the codes is an Application that is a device independent
`
`code that interpreted by the Player.
`
`[0010]
`
`These features together with the various ancillary provisions 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
`
`[0011]
`
`FIG. IA 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
`
`network;
`
`[0012]
`
`FIG. 1B is schematic of an alternative embodiment system for providing programming
`
`instructions to device over a network;
`
`[0013]
`
`FIG. 2A is a schematic of an embodiment of system illustrating the communications
`
`between different system components;
`
`[0014]
`
`FIG.2B is a schematic of one embodiment of a device illustrating an embodiment of
`
`the programming generated by authoring platform;
`
`[0015]
`
`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;
`
`[0016]
`
`FIG. 3C illustrates an embodiment of the Events Tab'
`
`[0017]
`
`FIG. 3D illustrates one embodiment of an Animation Tab;
`
`Docket Number XPR.002WO0
`
`2
`
`IPR2021-01145 Page 00003
`
`

`

`[0018]
`
`FIG. 3E illustrates one embodiment of Bindings Tab;
`
`[0019]
`
`FIG. 3F illustrates one embodiment of a pop-up menu for adding web components;
`
`[0020]
`
`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;
`
`[0021]
`
`FIG. 5 shows a display of launch strips;
`
`[0022]
`
`FIG. 6A is a display of a Channel Selection List;
`
`[0023]
`
`FIG. 6B is a display of a Widget Selection List;
`
`[0024]
`
`FIG. 6C is a display of a Phone List;
`
`[0025]
`
`FIG. 7 shows a display of a mash-up;
`
`[0026]
`
`FIG. 8 is a schematic of an embodiment of a push capable system;
`
`[0027]
`
`FIG. 9 is a schematic of an alternative embodiment of a push capable system;
`
`[0028]
`
`FIG. 10 is a schematic of one embodiment of a feed collector;
`
`[0029]
`
`FIG. 11 is a schematic of an embodiment of a Mobile Content Gateway;
`
`[0030]
`
`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
`
`[0031]
`
`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.
`
`[0032] Reference symbols are used in the Figures to indicate certain components, aspects or
`
`features shown therein, with reference symbols common to more than one Figure indicating like
`
`components, aspects or features shown therein.
`
`MODE(S) FOR CARRYING OUT THE INVENTION
`
`[0033]
`
`Figure IA 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 device 130
`
`over a network N. In one embodiment, device 130 is a wireless device, and network N includes
`
`wireless communication to the device. Alternatively, system 100 may provide access over
`
`network N to other information, data, or content, such as obtainable as a web service over the
`
`Docket Number XPR.002WO0
`
`3
`
`IPR2021-01145 Page 00004
`
`

`

`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.
`
`[0034]
`
`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 network N, and that, in particular, the
`
`location is not limited to any particular server, for example.
`
`[0035] 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 network, 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.
`
`[0036] 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 indicated by the line labeled
`
`"A" and to receive information, as indicated by the line labeled "B."
`
`[0037] 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 CDERâ„¢ publishing platform (Express Mobile, Inc.,
`
`Novato, CA).
`
`Docket Number XPR.002WO0
`
`4
`
`IPR2021-01145 Page 00005
`
`

`

`[0038]
`
`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.
`
`[0039]
`
`Routines 114 may include device-specific routines - that is, codes that are specific to
`
`the operating system, programming 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 reference 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 114 may include Java API's and an authoring tool
`
`System Development Kit (SDK) for specific devices 130.
`
`[0040]
`
`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 transmission to another
`
`device or system at a later time.
`
`[0041]
`
`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
`
`program 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 interface 130 for storage in memory 133.
`
`[0042]
`
`In an alternative embodiment, analytics information from devices 130 may be returned
`
`from device 130, through network 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.
`Docket Number XPR.002WO0
`
`5
`
`IPR2021-01145 Page 00006
`
`

`

`[0043]
`
`Content server 140 is a computer or computer system that includes a network interface
`
`141, a memory 143.and a processor 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 processor to accepts requests R from device 130 and provide content C over a
`
`network, such as web server content the Internet, to device 130.
`
`[0044]
`
`Figure 1 B 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. IA. The embodiment of FIG. 1B illustrates that system 100 may include multiple servers
`
`120 and/or multiple devices 130.
`
`[0045]
`
`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 particular, the systems
`
`and methods described herein may be executed on one or more server 120.
`
`[0046] 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.
`
`[0047] 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 "device platforms." Differing device platforms may result, for example and
`
`without limitation, to different operating systems, different versions of an operating system, or
`
`different versions of virtual machines on the same operating system. In some embodiments,
`
`devices 130 are provided with some programming from authoring system 100 that is particular to
`
`the device.
`
`[0048]
`
`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(cid:173)
`
`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
`
`Docket Number XPR.002WO0
`
`6
`
`IPR2021-01145 Page 00007
`
`

`

`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 independent of device platform. Thus in one embodiment, device 130
`
`utilizes a Player and an Application to execute programming from authoring platform 110. A
`
`device having the correct Player is then able to interpret and be programmed according to the
`
`Application.
`
`[0049]
`
`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 numbers,
`
`such as a short code.
`
`[0050] 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 programming 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.
`
`[0051] Authoring tool 112 may, for example, produce and store within memory 111 a
`
`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 necessary, 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.
`
`[0052]
`
`Thus, for example and without limitation, in one embodiment, 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 programming 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
`
`execution on a specific device 130 according to the device platform. The Application may in
`Docket Number XPR.002WO0
`7
`
`IPR2021-01145 Page 00008
`
`

`

`general include, without limitation, instructions for generating a display on screen 137,
`
`instructions for accepting input from input device 139, instructions for interacting with a user of
`
`device 130, and/or instructions for otherwise operating the device, such as to place a telephone
`
`call.
`
`[0053]
`
`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-independent 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.
`
`[0054]
`
`In one embodiment, system 100 provides Players and Applications to one server 120,
`
`as in FIG. IA. In another embodiment, system 100 provides Players to a first server 120a and
`
`Applications to a second server 120b, as in FIG. 1B.
`
`[0055]
`
`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 embodiment, 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.
`
`[0056]
`
`In one embodiment, authoring platform 110 allows user to arrange objects for display
`
`on screen. A graphical user interface ("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, or an
`
`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
`
`information in memory 133, to navigate to another display or service, or to perform other actions,
`
`such as dialing a telephone number.
`
`Docket Number XPR.002WO0
`
`8
`
`IPR2021-01145 Page 00009
`
`

`

`[0057]
`
`In certain embodiments, the applicant model used in developing 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 Services or backend business logic
`
`that interacts with the user.
`
`[0058] One embodiment for compacting data that may be used is described in co-pending U.S.
`
`Patent 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 database. The terminology
`
`used here is a PDL, that is the "internal database" of Rempell is equivalent to the PDL of the
`
`present Application.
`
`[0059]
`
`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
`
`compressed 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
`
`memory manager of the Player more efficiently. As an example, the reassembled primitives of
`
`the Java objects may first undergo logical compression, followed by LZ encoding.
`
`[0060]
`
`The use of a PDL also provides virtual machine and operating system independence.
`
`Since the reassembled primitives of the Application no longer have any dependencies from the
`
`original programming language (Java) that they were defined in. The PDL architecture takes full
`
`advantage of this by abstracting all the virtual machine and/or operating system interfaces from
`
`the code that processes the PDL.
`
`[0061]
`
`In one embodiment, the PDL is defined by the means of nested arrays of primitives.
`
`Accordingly, the use of a PDL provides extensibility and compatibility, with a minimal amount
`
`of constraints in extending the Player seamlessly as market demands and device capabilities
`
`continue to grow. Compatibility with other languages is inherent based on the various Player
`
`abstraction implementations, which may be, for example and without limitation, Java CDC, J2SE
`
`or MIDP2 implementations.
`Docket Number XPR.002WO0
`
`9
`
`IPR2021-01145 Page 00010
`
`

`

`[0062]
`
`In one embodiment, the architecture of Player P includes an abstraction interface that
`
`separates all device, operating system and virtual machine dependencies from the Player's
`
`Application model business logic (that is, the logic of the server-side facilities) that extend the
`
`Application on the Player so that it is efficiently integrated into a comprehensive client/server
`
`Application. The use of an abstraction interface permits the more efficient porting to other
`
`operating systems and virtual machines and adding of extensions to the Application model so that
`
`a PDL can be implemented once and then seamlessly propagated across all platform
`
`implementations. The Application model includes all the currently supported UI objects and their
`
`attributes and well as all of the various events that are supported in the default Player. Further,
`
`less robust platforms can be augmented by extending higher end capabilities inside that
`
`platform's abstraction interface implementation.
`
`[0063]
`
`In one embodiment, authoring platform 110 provides one or more pages, which may be
`
`provided in one Application, or a plurality of Applications, which are stored in memory 123 and
`
`subsequently provided to memory 133. In certain embodiments, the Application includes
`
`instructions R to request content or web services C from content server 140. Thus, for example
`
`and without limitation, the request is for information over the network via a web service, and the
`
`request R is responded to with the appropriate information for display on device 130. Thus, for
`
`example, a user may request a news report. The Application may include the layout of the
`
`display, including a space for the news, which is downloaded form content server 140 for
`
`inclusion on the display. Other information that may be provided by content server 140 may
`
`include, but is not limited to, pages, Applications, multimedia, and audio.
`
`[0064]
`
`Figure 2A is a schematic of a system 200 of an embodiment of system 100 illustrating
`
`the communications between different system components. System includes a response director
`
`210, a web component registry 220, and a web service 230. System 200 further includes
`
`authoring platform 110, server 120, device 130 and content server 140 are which are generally
`
`similar to those of the embodiments of FIGS. IA and 1B, except as explicitly noted.
`
`[0065]
`
`Response director 210 is a computer or computer system that may be generally similar
`
`to server 120 including the ability to communicate with authoring platform 110 and one or more
`
`devices 130. In particular, authoring platform 110 generates one or more Players (each usable by
`
`certain devices 130) which are provided to response director 210. Devices 130 may be operated
`
`to provide response director 210 with a request for a Player and to receive and install the Player.
`
`In one embodiment, device 130 provides response director 210 with device-specific information
`
`including but not limited to make, model, and/or software version of the device. Response
`
`Docket Number XPR.002WO0
`
`10
`
`IPR2021-01145 Page 00011
`
`

`

`director 210 then determines the appropriate Player for the device, and provides the device with
`
`the Player over the network.
`
`[0066] Web service 230 is a plurality of services obtainable over the Internet. Each web
`
`service is identified and/or defined as an entry in web component registry 230, which is a
`
`database, XML file, or PDL that exists on a computer that may be a server previously described
`
`or another server 120. Web component registry 230 is provided through server 120 to authoring
`
`platform 110 so that a user of the authoring platform may bind web services 230 to elements to
`
`be displayed on device 130, as described subsequently.
`
`[0067]
`
`In one embodiment, authoring platform 110 is used in conjunction with a display that
`
`provides a WYSIWYG environment in which a user of the authoring platform can produce an
`
`Application and Player that produces the same display and the desired programming on device
`
`130. Thus, for example, authorin

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