`Gidron et a].
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 7,283,811 B2
`Oct. 16, 2007
`
`US007283811B2
`
`SYSTEM AND METHOD FOR
`AGGREGATION OF USER APPLICATIONS
`FOR LIMITED-RESOURCE DEVICES
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`(54)
`
`(75)
`
`Inventors: Yoad Gidron, Yokneam Illit (IL);
`Ophir Holder, Haifa (IL); Haim
`Teicholtz, Hadera (IL)
`
`(73)
`
`Assignee: Lucent Technologies Inc., Murray Hill,
`NJ (US)
`
`Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 379 days.
`
`(21)
`
`(22)
`
`(65)
`
`(60)
`
`(51)
`
`(52)
`(58)
`
`Appl. No.: 09/987,514
`
`Filed:
`
`Nov. 15, 2001
`
`Prior Publication Data
`
`US 2002/0142760 A1
`
`Oct. 3, 2002
`
`Related US. Application Data
`
`Provisional application No. 60/270,638, ?led on Feb.
`23, 2001.
`
`Int. Cl.
`(2006.01)
`H04M 3/42
`US. Cl. ............................... .. 455/414.1;379/88.23
`Field of Classi?cation Search .............. .. 455/411,
`455/412.1, 414.1; 707/1; 717/173; 709/231;
`379/88.12, 88.18, 88.23, 412.1, 411, 414.1,
`379/4142, 414.3, 414.4
`See application ?le for complete search history.
`
`7/1995 Weisser, Jr. ............... .. 370/389
`5,430,719 A *
`6,496,979 B1 * 12/2002 Chen et a1. ............... .. 717/178
`6,591,095 B1 *
`7/2003 Palaniswamy et a1. .... .. 455/411
`6,701,521 B1 *
`3/2004 McLlroy et a1. .......... .. 717/173
`6,757,530 B2 *
`6/2004 Rouse et a1. .... ..
`455/4l2.l
`2002/0065067 A1 *
`5/2002 Khare et a1.
`.... .. 455/414
`2004/0014459 Al* l/2004 Shanahan .... ..
`455/4l4.l
`2004/0058673 A1 *
`3/2004 Irlam et a1. ............ .. 455/4l2.l
`
`* cited by examiner
`
`Primary Examiner4Gerald Gauthier
`
`(57)
`
`ABSTRACT
`
`A system and a method for directed provisioning and
`management of user applications on limited resource
`devices by a content provider, through an integrated plat
`form Which handles all aspects of aggregation and manage
`ment of such applications. By “content aggregation”, it is
`meant the procedure by Which applications are introduced
`by a content provider, and are then aggregated into a service
`for provision by that content provider and/or service pro
`vider. Preferably, the collected applications may then be
`examined by the user according to a content directory, Which
`is a hierarchical organization of di?cerent applications
`according to one or more categories and/or attributes. The
`service provider preferably controls access to the content or
`user applications by the user, for example according to a
`subscription of the user and/or capabilities of the limited
`resource device of the user.
`
`20 Claims, 3 Drawing Sheets
`
`submission of
`00111811!
`(stage 1)
`1
`
`transmission of content
`to “verifying” state
`(stage 2)
`
`testing of content
`(stage 3)
`
`approval of content
`(stage 4)
`
`enabling access to
`content
`(stage 5)
`
`Netflix v. VideoLabs
`IPR2023-00628
`Netflix. Ex. 1010
`
`
`
`U.S. Patent
`
`Oct. 16, 2007
`
`Sheet 1 0f 3
`
`US 7,283,811 B2
`
`Figure 1
`
`submission of
`content
`(stage I)
`l
`
`transmission of content
`to “verifying” state
`(stage 2)
`
`testing of content
`(stage 3)
`
`approval of content
`(stage 4)
`
`enabling access to
`content
`(stage 5)
`
`
`
`U.S. Patent
`
`Oct. 16, 2007
`
`Sheet 2 0f 3
`
`US 7,283,811 B2
`
`Figure 2
`
`cellular
`telephone
`(12)
`
`cellular
`carrier
`(14)
`
`provisioning platform (16)
`
`billing module (23)
`
`l?
`
`application module (20)
`
`__ content
`provider
`(13)
`
`service
`provider
`(22)
`
`10
`
`
`
`U.S. Patent
`
`Oct. 16, 2007
`
`Sheet 3 of3
`
`US 7,283,811 B2
`
`Figure 3
`
`content
`provider (18)
`
`service
`provider (22)
`
`Submission
`sawed“)
`
`Content
`management tool
`
`pending submissions repository (26)
`
`application
`content
`repository
`
`customer care
`(34)
`
`Personalization
`subscription
`preferences <— Service (44)
`repository (36)
`
`
`
`US 7,283,811 B2
`
`1
`SYSTEM AND METHOD FOR
`AGGREGATION OF USER APPLICATIONS
`FOR LIMITED-RESOURCE DEVICES
`
`This Application claims priority from US. Provisional
`Application No. 60/270,638, ?led on Feb. 23, 2001, Which
`is hereby incorporated by reference as if fully set forth
`herein.
`
`FIELD OF THE INVENTION
`
`The present invention relates to a system and a method for
`aggregation of user applications for limited-resource
`devices, and in particular, to such a system and method in
`Which applications are aggregated into a service for provi
`sion by a service provider. Examples of suitable devices
`include, but are not limited to, cellular telephones and
`handheld computers. These devices are “limited-resource
`devices” in that computational resources such as memory,
`storage space and/or data processing capabilities are limited,
`particularly in comparison to other computational devices
`such as PCs (personal computers), for example.
`
`BACKGROUND OF THE INVENTION
`
`Cellular telephones have recently become increasingly
`popular for mobile voice communication, as Well as for the
`exchange of text messages and other types of data. For voice
`communication, cellular telephone systems provide similar
`services as the ?xed, Wire-based telephony system, or PSTN
`(public sWitched telephony network), except that cellular
`telephone systems are based upon signal transmission
`through radio frequency signals rather than Wires. Hence,
`cellular telephones are also termed “Wireless telephones”,
`and communication over such telephones is termed “Wire
`less communication”.
`One advantage of cellular telephones is that they permit
`mobile communication, such that subscribers are able to
`communicate While traveling, or otherWise When they are
`not at a ?xed physical location. In addition, cellular tele
`phones permit subscribers to be contacted regardless of the
`location of the subscribers. These advantages of mobile
`communication are also useful for the exchange of data,
`such as for text messages and even Web pages, for example.
`Cellular telephones are able to receive text messages
`through message exchange protocols such as SMS (short
`message service), for example, Which permit one-to-one
`communication betWeen cellular telephones through text
`messages. In addition, the WAP (Wireless application pro
`tocol) protocol enables cellular telephones, Which are WAP
`enabled to receive Web pages. Thus, cellular telephones
`potentially provide a full communication solution for all of
`the different types of electronic communication for a sub
`scriber.
`HoWever, cellular telephones have a number of disadvan
`tages over other types of computational devices Which are
`used to exchange data, such as desktop computers, for
`example. Cellular telephones have limited resources, and as
`such can be considered to be limited resource devices. They
`are limited by at least one of available memory, storage
`space, siZe of the display screen, and/or computational
`poWer, as represented by the ability to perform various data
`processing tasks. These limitations are imposed by the
`requirements of portability, convenient and simple opera
`tion, battery lifetime, Weight and siZe. In addition, the type
`of limitations and the hardWare speci?cations of each cel
`lular telephone, or other related handheld device, also differ
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`betWeen, cellular telephone service providers and even
`manufacturers. Thus, designing a single type of application
`Which is suitable for all cellular telephones, for example, is
`clearly very difficult.
`In addition, the heterogeneity of this computational envi
`ronment extends to the types of communication protocols
`according to Which these different cellular telephones com
`municate for data transmission. As described above, tWo of
`these protocols include SMS, for character-based messages
`only, and WAP, for more rich data transmissions Which may
`also include graphics. Other protocols include “I-mode”, the
`packet-based cellular telephone data transmission protocol
`of the Japanese carrier, NTT DoCoMo (Japan).
`Unlike the static content Which is delivered through WAP
`or I-mode, the Java 2 Micro Edition (J2ME) provides a
`platform for the execution of dynamic content on mobile
`devices. J2ME is a reduced edition of the popular Java
`programming language (originally developed by Sun Micro
`systems), Which Was adapted to the limitations of consumer
`and embedded devices. It is being de?ned as an industry
`standard by companies Which manufacture limited resource
`devices, such as Motorola, Nokia and Palm.
`Another emerging standard is the Mobile Station Appli
`cation Execution Environment (MExE), Which is de?ned by
`the Third Generation Partnership Project (3GPP). MExE
`provides a standardiZed execution environment in a mobile
`station, as Well as the ability of the mobile station to
`negotiate supported capabilities With a MExE service pro
`vider, thereby alloWing applications to be developed across
`different platforms. Thus, the capabilities of different cellu
`lar telephones and other limited resource devices can be
`accommodated by a particular application.
`This last attempted solution, MExE, is the closest attempt
`to the provision of an integrated platform for delivering
`applications to a Wide variety of cellular telephones and
`other limited resource devices. HoWever, MExE still suffers
`from the draWbacks of lacking a speci?cation or support for
`a server architecture or speci?c management functions, both
`of Which are required in order to actually deliver the
`applications to different limited resource devices. Further
`more, all of the above solutions focus on either a method for
`creating a user application for operation by a limited
`resource device, such as the modi?ed version of Java; or a
`method for delivering and displaying content on the limited
`resource device, such as WAP. They do not provide an
`integrated solution for creating the user application; adapt
`ing the application according to the different requirements of
`different limited resource devices; and delivering the appli
`cation to the device through a client-server system Which is
`compatible With such devices, particularly for Wireless com
`munication. In addition, these systems do not provide a
`solution to the problem of at least semi-automatically col
`lecting the applications for conversion into a service for
`provision to the limited resource device.
`
`SUMMARY OF THE INVENTION
`
`The background art does not teach or suggest a system
`and a method for providing user applications for limited
`resource devices by a service provider, in Which the process
`of collecting the applications from content providers and
`then aggregating such applications into a service is at least
`partially automated.
`The present invention overcomes these de?ciencies of the
`background art by providing a system and a method for
`directed provisioning of user applications to limited resource
`devices, through an integrated platform Which handles all
`
`
`
`US 7,283,811 B2
`
`3
`aspects of aggregation and management of such applica
`tions. Preferably, the integrated platform is able to perform,
`or at least to support the performance of, user application
`development, submission, publication, subscription and
`delivery to the limited resource device. In addition, the
`integrated platform more preferably enables applications
`which have been adjusted to the characteristics of the
`speci?c user device to be properly selected and delivered.
`According to preferred embodiments of the present inven
`tion, a service provider performs aggregation and manage
`ment of user applications on limited resource devices by a
`service provider, through the integrated platform which
`handles all aspects of aggregation and management of such
`applications. By “content aggregation”, it is meant the
`procedure by which applications are introduced by a content
`provider, and are then aggregated into a service for provision
`by the service provider.
`Hereinafter, the term “limited-resource device” refers to a
`computational device in which computational resources
`such as memory, storage space, network bandwidth and/or
`data processing capabilities are limited, particularly in com
`parison to desktop computers such as PCs (personal com
`puters), for example.
`According to the present invention, there is provided a
`method for provisioning a user application by a service
`provider for delivery to a limited resource device through an
`integrated platform, the steps of the method comprising: (a)
`creating the user application by the content provider; (b)
`examining the user application by the integrated platform;
`(c) if the user application is accepted, publishing the user
`application by the integrated platform.
`According to another embodiment of the present inven
`tion, there is provided a system for providing a user appli
`cation, the system comprising: (a) a limited resource device
`for receiving the user application; (b) a content provider for
`creating the user application; and (c) a service provider for
`examining the user application, and if the user application is
`accepted, publishing the user application for being received
`by the limited resource device.
`According to still another embodiment of the present
`invention, there is provided a method for aggregating a user
`application for delivery to a limited resource device by a
`service provider, the limited resource device having at least
`one characteristic, the method comprising: submitting the
`user application to the service provider; determining at least
`one rule for controlling the user application; altering at least
`one function of the user application according to the at least
`one characteristic of the limited resource device; and cus
`tomiZing the user application according to the at least one
`rule by the service provider.
`According to yet another embodiment of the present
`invention, there is provided a method for provisioning a user
`application by a content provider for delivery to a limited
`resource device, the method comprising: providing a service
`provider for delivering the user application to the limited
`resource device; creating the user application by the content
`provider; determining at least one characteristic of the user
`application by content provider; submitting the user appli
`cation to the service provider by the content provider,
`wherein at least one of creating the user application, deter
`mining the at least one characteristic of the user application,
`and submitting the user application is controlled by at least
`one rule determined by the service provider; and aggregating
`the user application by the service provider.
`Hereinafter, the term “network” refers to a connection
`between any two or more computational devices which
`permits the transmission of data.
`
`4
`Hereinafter, the term “cellular telephone” refers to any
`type of wireless handset or device which is capable of voice
`and data transfer through a radio frequency signal, option
`ally through a connection to the PSTN (public switched
`telephone network).
`For the present invention, a software application could be
`written in substantially any suitable programming language,
`which could easily be selected by one of ordinary skill in the
`art. The programming language chosen should be compat
`ible with the computational device according to which the
`software application is executed. Examples of suitable pro
`gramming languages include, but are not limited to, C, C++
`and Java.
`In addition, the present invention could be implemented
`as software, ?rmware or hardware, or as a combination
`thereof. For any of these implementations, the functions
`performed by the method could be described as a plurality
`of instructions performed by a data processor.
`
`20
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The invention is herein described, by way of example
`only, with reference to the accompanying drawings,
`wherein:
`FIG. 1 is a ?owchart of an exemplary basic work?ow for
`the integrated creation, aggregation and provisioning of user
`applications to limited resource devices according to the
`present invention;
`FIG. 2 is a schematic block diagram of an exemplary
`system according to the present invention; and
`FIG. 3 is a schematic block diagram of exemplary tools
`according to the present invention.
`
`DESCRIPTION OF THE PREFERRED
`EMBODIMENTS
`
`The present invention is of a system and a method for
`directed provisioning of user applications on limited
`resource devices by a content provider, through an inte
`grated platform which handles all aspects of aggregation and
`management of such applications. By “content aggrega
`tion”, it is meant the procedure by which applications are
`introduced by a content provider, and are then aggregated
`into a service for provision by a service provider. Preferably,
`the collected applications may eventually be discovered by
`the user who wishes to download such an application
`according to a content directory, which is a hierarchical
`organization of different applications according to one or
`more categories and/or attributes.
`The process of collecting the applications for conversion
`to one or more services is preferably at least partially
`automated, and is more preferably determined according to
`one of a plurality of rules. These rules are part of a policy for
`managing the submission of applications, and also their
`transmission to the limited resource device as one or more
`services.
`As used herein, the term “user application” refers to a unit
`of dynamic content and/or to a set of instructions for
`execution by the limited resource (user) device, possibly
`interacting with a server side application across the network.
`The content may optionally include any type of media,
`including but not limited to, any one of audio data, video
`data, graphic images and text, or a combination thereof
`Preferably, the user application includes such a set of
`instructions for execution by the device, which optionally
`and more preferably are written in a interpreted language
`such as Java, for example. However, the user application
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`
`
`US 7,283,811 B2
`
`6
`During the “verifying” state, the content is preferably
`validated through various automatic checks/examinations,
`such as certi?cation validation, siZe checking, various con
`ventions, matching to target devices, and so forth. Some of
`these checks are provided by the system and others can be
`de?ned by the service provider. If one of the checks fails, the
`content preferably moves to the Rejected state. Altema
`tively, if the content successfully passes these checks/ex
`aminations, the content preferably moves to the “testing”
`state, as shown in stage 3.
`In the “testing” state, manual tests are preferably per
`formed by the service operator through emulation tools or
`real devices, in order to determine whether the content
`behaves as predicted when delivered to the limited-resource
`devices of the users. In this stage, the service operator is
`more preferably able to examine the actual functionality and
`behavior of the content before it becomes available to
`subscribers. In addition, the charging scheme is optionally
`and more preferably reviewed, optionally with modi?ca
`tions.
`The possible transitions from this state are preferably to
`the “approved” state if the content receives approval from
`the service provider, as shown in stage 4. Alternatively, the
`content is rejected by the service provider and then moves to
`the “rejected” state.
`Turning to stage 4, once the content is in the “approved”
`state, the service provider is preferably able to publish the
`content for access to users, for example to eligible subscrib
`ers. More preferably, when the content is published, it is
`associated with one or more categories. Categories are nodes
`in the content directory. Each category represents a folder of
`other categories or applications. This repository is also
`termed taxonomy.
`After publication, as shown in stage 5, the content is in the
`“enabled” state, from which the content may optionally be
`discovered and downloaded by subscribers. The content is
`optionally placed into the “disabled” state by a manual
`action or according to at least one dynamic rule, for example
`according to the date and/or the number of downloads.
`The following table is intended as a non-limiting example
`only of a set of rules that can be de?ned for a speci?c service
`provider.
`
`Source
`State
`
`Trigger
`
`Condition
`
`True
`State
`
`False
`State
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`5
`optionally and most preferably also features one or more
`components of a user interface, for example in order to
`select a particular set of instructions and/or type of content.
`Therefore, the integrated platform of the present invention
`is able to provide an end-to-end solution for managing the
`work?ow of creating, aggregating and publishing user appli
`cations for provisioning to the limited resource devices of
`the users. The work?ow starts with the creation of the user
`applications by the content provider. The service provider
`then tests the submitted user applications, which may be
`rejected or approved. Some of the tests are optionally and
`preferably performed automatically by the system while
`others are optionally and preferably performed manually by
`the administrator. The actual set of tests is preferably deter
`mined by the service provider and may optionally vary from
`one content provider to another. If approved, the user
`applications are published and may then be enabled. Option
`ally, the user applications may only be enabled for certain
`users, for example as a function of subscription service. For
`other users, these applications may be disabled.
`The principles and operation of the present invention may
`be better understood with reference to the drawings and the
`accompanying description.
`Referring now to the drawings, FIG. 1 is a ?owchart of an
`exemplary basic work?ow for the integrated creation, aggre
`gation and provisioning of user applications to limited
`resource devices according to the present invention. The
`work?ow is based on states and transitions, in which the
`state is a tag that describes the current stage of the content
`item in the work?ow. The transitions de?ne the mechanism
`by which a content item moves from state to state, and are
`preferably determined according to dynamic rules. The
`infrastructure of the integrated platform preferably enables a
`number of elements to be de?ned, including but not limited
`to, the set of states and actions, and the set of transition rules.
`The set of actions is optionally and more preferably
`de?ned as being selected from manual (performed by the
`user), pre-de?ned processing (performed by the system) or
`user-de?ned processing (also performed by the system,
`according to the direction of the user). Each rule is option
`ally and more preferably composed of the following ele
`ments: source state, or the state in which the rule is appli
`cable; trigger for activating the rule which is the execution
`of an action; condition which may be present in order for the
`rule to be true or false, and which is checked against the
`properties of the content item and system-level information
`(may be empty); true state, which is the new state of the
`content if the condition is met; and false state, which is the
`new state of the content if the condition is not met. With
`regard to the trigger, if the action is automatic and/or a
`trigger is not speci?ed, preferably the rule is executed upon
`entering the source state.
`Turning now to FIG. 1, as shown in stage 1, the content
`is submitted by the content provider to the service provider,
`at which point the content is in the “submitted” state. The
`content is preferably associated with various attributes in
`various languages. These attributes are more preferably used
`for classifying and delivering the content at later stages. The
`content provider can also optionally specify a charging
`scheme that is to be used for charging subscribers for
`consuming the content.
`Transitions from the “submitted” state are as follows. The
`content may optionally be updated by the content provider
`and left in the submitted state. Preferably, the “process”
`transition is performed by the service provider, in order to
`move the content to the “verifying” state, as shown in stage
`2.
`
`55
`
`60
`
`65
`
`50
`
`N/A
`Submitted
`Submitted
`Verifying
`
`Submit
`Update
`Process
`
`Verifying
`
`Testing
`Testing
`Approved
`Enabled
`Enabled
`
`Validate
`matching
`to target
`device
`Approve
`Reject
`Publish
`Disable
`Download
`
`Disabled
`
`Enable
`
`Content
`size < = 50
`KB
`Content is
`valid
`
`Download
`count < 500
`
`Submitted
`Submitted
`Verifying
`Verifying
`
`Rejected
`
`Testing
`
`Rejected
`
`Approved
`Rejected
`Enabled
`Disabled
`Enabled
`
`Enabled
`
`Disabled
`
`FIG. 2 is a schematic block diagram of an exemplary but
`preferred implementation of a system according to the
`present invention with regard to application creation for, and
`delivery to, limited resource devices, including a mechanism
`
`
`
`US 7,283,811 B2
`
`7
`for billing the user for consuming the content at the limited
`resource device. The present invention is described With
`regard to cellular telephones as the limited resource devices,
`it being understood that this is for the purposes of illustration
`only and is not intended to be limiting in any Way. The
`described system is an example only of a suitable system for
`performing the How of operations described With regard to
`FIG. 1 above.
`As shoWn, a system 10 features a cellular telephone 12,
`operated by a user (not shoWn), Who subscribes to a cellular
`carrier 14. Cellular carrier 14 typically provides a number of
`different services through cellular telephone 12, including,
`but not limited to, voice communication and data transmis
`sion. Cellular carrier 14 may also include other types of
`functions, provided through a variety of different hardWare
`and/or softWare components, as is Well knoWn in the art.
`For the purposes of the present invention, cellular carrier
`14 is also in communication With a provisioning platform 16
`according to the present invention. As described in greater
`detail beloW, provisioning platform 16 features a number of
`different components, for the creation of user applications
`Which are adaptable to a variety of devices such as cellular
`telephone 12; for the delivery of such applications to cellular
`telephone 12, and optionally other devices, preferably only
`as required or “on-demand”; and for optionally receiving
`such applications from third party content providers.
`With regard to the last feature, provisioning platform 16
`is preferably in communication With a content provider 18.
`Content provider 18 preferably actually submits each such
`user application to an application repository 20 of provi
`sioning platform 16, Which is managed by service provider
`22. This process is described With regard to stage 1 of FIG.
`1 as the “submitted” state. Once the content has been
`validated by service provider 22 (as described With regard to
`stages 2 and 3 of FIG. 1), then the content may optionally be
`published by service provider 22 (as described With regard
`to stage 4 of FIG. 1).
`Each user application, more preferably With any required
`and/or preferred modi?cations or speci?c implementations,
`may then be transmitted to cellular telephone 12 and/or
`another limited resource device (not shoWn), as described
`With regard to stage 5 of FIG. 1. Optionally and most
`preferably, the user subscribes to any particular user appli
`cation through cellular carrier 14, in order to receive such an
`application through cellular telephone 12.
`According to preferred embodiments of the present inven
`tion, the procedure for providing such a user application
`through system 10 is preferably performed as folloWs. This
`description is of an illustrative process Which may be
`performed by using the components of system 10, and Which
`may optionally also be incorporated Within, or otherWise
`combined With, the How of operations described in FIG. 1
`above.
`As described With regard to FIG. 2, ?rst the user appli
`cation itself is preferably developed, for example by a third
`party such as content provider 18. More preferably, the user
`application is created through an API (application program
`ming interface) and set of tools according to the present
`invention, as described in greater detail beloW. In addition,
`preferably content provider 18 is required to register in
`advance, before the user application may be submitted.
`More preferably the registration process includes the sub
`mission of such information as the name and contact infor
`mation for content provider 18, Which in turn more prefer
`ably receives a user name and passWord.
`Next, content provider 18 preferably submits a neW user
`application to service provider 22, Which manages such user
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`applications. This procedure for submitting a neW user
`application is preferably performed according to a standard
`iZed application submission protocol. For example, option
`ally and more preferably content provider 18 is able to
`submit the application through a plurality of paths, including
`but not limited to, uploading the ?le from the system of
`content provider 18 itself to service provider 22; uploading
`the ?le from a system Which is external to content provider
`18; and providing an external link, or URL, for the ?le by
`content provider 18. In the latter situation, more preferably
`service provider 22 is able to then automatically doWnload
`the ?le, and/or to doWnload the ?le upon request from
`content provider 18. Content provider 18 also more prefer
`ably de?nes such features of the application as “?avors” and
`attributes (see beloW for a description) and/or different
`human languages. For example, content provider 18 could
`optionally specify different versions of the application to be
`automatically doWnloaded according to the location of cel
`lular telephone 12.
`Next, service provider 22 preferably uses a set of tools
`according to the present invention in order to inspect and
`certify the submitted applications. Optionally and most
`preferably, the application is also submitted With any other
`meta-information Which may be required by another com
`ponent of system 10, such as pricing scheme and delivery
`information, for example.
`If the user application is found to be suitable, service
`provider 22 then preferably approves and publishes the neW
`application. Publication enables the neW user application to
`be available to user devices such as cellular telephone 12 for
`example. Publication is preferably performed by placing the
`user application in application repository 20, for delivery to
`cellular telephone 12.
`According to preferred embodiments of the present inven
`tion, an application Which is currently being examined by
`service provider 22, and/or an accepted application for
`Which a neW version is available, may optionally be replaced
`by a submission of a neW application version by content
`provider 18.
`After publication, application repository 20 then option
`ally and more preferably organiZes the user applications into
`a dynamic application content directory, Which contains
`information about the available applications. This directory
`is most preferably organiZed by using a service package
`implementation, Which de?nes various concepts and struc
`tures for distributing content according to various service
`packages. Optionally, such distribution may also include
`features for supporting ?nancial remuneration, for example
`through subscriptions and/or “pay per usage” models in
`Which separate payment is required for each application, as
`described in greater detail beloW.
`With such a directory, applications are optionally and
`preferably organiZed into a hierarchical structure of catego
`ries and sub-categories, and are also more preferably asso
`ciated With attributes. A “category” is therefore preferably a
`portion of the content directory, Which maps applications to
`a hierarchical structure. A category may optionally contain
`sub-categories or applications. A speci?c sub-category and/
`or application may optionally and more preferably be
`reached from several paths in the directory, such that the
`speci?c sub-category and/or application is optionally and
`more preferably shared by a plurality of categories in the
`directory. Such sharing enables the user to locate the desired
`sub-category/application from multiple paths.
`In this model, an application itself may be considered to
`be a node in the