摘要:
A wireless application GUI is described as a set of atomic screen components. The application screens are defined through a structured language such as XML, HTML or XHTML and are expressed as a collection of nested layouts and UI controls. Representation of these visual components is facilitated through the use of an intelligent Device Runtime framework that provides a set of services for screen presentation, management and user interaction. The designation of the screen components provides for an interactive and dynamic UI, and provides for delegation of some of the user interface management to the intelligent Device Runtime framework. The screen components utilize conditional controls in the wireless application definition. Conditional controls are dynamic screen elements that determine their appearance or behavior by virtue of satisfying a particular condition. Conditional controls include so-called driving (primary) and dependent (secondary) controls that modify application runtime screen behavior.
摘要:
A Repetitive Layout scheme is provided that operates on a collection of data objects, such that each data object accords to the same data object definition (data model) expressed in a structured definition language. The Repetitive Layout consists of one UI section repeated for every object in the collection. Each UI section is composed of a set of UI controls or sub-layouts. The UI controls in each section are associated with the data fields of the corresponding data object. A user of a wireless application interacting with the data objects can select UI sections and edit the controls within them via the user interface of the wireless device executing the application. Any modifications are propagated to the data objects mapped to the respective UI sections. Similarly, all modifications (driven by the application logic or incoming server messages) to the data objects are reflected in the UI section mapped to these objects. The generation and application of the repetitive layout scheme can include the steps: dynamic data entity generation (Data Composer stage); determining the collection of data objects that need to be presented by the user interface (Rules Engine stage); sorting the collection of data objects (Sorting Processor stage); generating the UI Layout (Layout Generator stage); propagating UI changes back to the Data Model having the definitions of the data objects (Data Dispatcher stage); propagating data changes to the Repetitive Layout; and propagating changes to nodes of the data model.
摘要:
Wireless data message optimization for messages sent between a wireless device and a server that provides a service that the wireless device is authorized to access is provided using an application gateway that serves as a proxy between the wireless device and the server. The application gateway maps optimized service request messages generated by the wireless device to a service request message format expected by the server, and maps response messages generated by the server to an optimized response message format expected by the wireless device. The optimized message format is flattened by removing unnecessary message structure, eliminates unnecessary message fields, and uses default and enumeration encoding to reduce optimized message size.
摘要:
It is desirable to drive down the complexity involved in developing the wireless application by reducing the need to do any explicit coding, as well as reducing device resources utilized by the application when provisioned. Having an intelligent wireless device runtime environment (Device Runtime) that provides a set of basic services to manage the wireless application as a series of application components, and their interactions, can simplify the development effort and reduce resource allocation. The wireless application is described as a set of components. The data domain for this category of applications is defined using atomic data components. The communication between the device and a server is defined using atomic message components. Both message and data components are described in metadata using a structured definition language such as XML. The relationships between the message and data components are embedded in the XML definitions in the form of message/data mappings. Typically, outgoing messages are derived from some underlying data component and incoming messages affect the current state (or data representation) of the application. It is therefore apparent that the metadata defined mapping relationship is preferable between the expression of data and message components.
摘要:
An application generation environment coordinates development of component-based two-tiered applications using a unifying data model comprising an interconnected model of objects. The data model unifies the two-tiered application to present a single logical application for visualisation and for programming using a graphical user interface. The data model transparently programs tiers of the application in response to user input to program the single logical application. Application components are generated for execution within a two-tiered execution environment such as a client device (e.g. a wireless mobile device) and a gateway server providing a stateful proxy with which to access services or a remote data source via a network. The application components may by generated with marks to denote portions thereof for execution within the respective tiers of the two-tiered execution environment.
摘要:
A system and method is provided having an execution environment of an intelligent runtime device framework for generating user interface elements on a user interface (UI), declared on the device. The proposed method allows user interface definitions through XML metadata UI definitions (or other structured definition language schema) instead of requiring an implementation of the screen elements in executable code for the application. The UI definitions are stored in a common UI repository as a common resource of the applications on the device and is processed at runtime. The UI definitions are independent from the target platform of the device. The "look and feel" of all the applications on the device can be customized and branded as required. Defining layout and ordering of UI elements separately from the applications logic offers modularization of the applications. Such modularization allows reuse of already defined UI screens and sharing them between different applications. The system has a themes and branding repository, a UI repository, a visualization engine, an execution environment, and a UI service. The method includes steps of parsing the XML definitions, applying theme and branding characteristics, providing a screen model to the execution environment, visualizing the user interface, and event handling.