Client Framework 1

The Client Framework 1 is a platform that you can use to create XDIME 2 applications with a rich client-side user interface, for a wide range of devices. The Client Framework 1 provides developers with a simple, standards-compliant authoring environment. Control over widget behavior and transitions is available as either policy theme properties or as attributes on markup.

The Client Framework 1 is a platform that you can use to create XDIME 2 applications with a rich client-side user interface, for a wide range of devices. The Client Framework 1 provides developers with a simple, standards-compliant authoring environment. Control over widget behavior and transitions is available as either policy theme properties or as attributes on markup.

The Client Framework 1 consists of two parts. On the server-side, you use a combination of XDIME 2 markup and policy values to access the widget functions. In addition, you can include JavaScript in your markup to invoke functions in the client library. On the client-side, a widget library consists of JavaScript that implements the functions.

You can use extensions to XDIME 2 markup to specify widgets, and control their behavior and transitions using either theme policies, the style element, or style attributes on the markup. Examples include folding items, ticker-tape, progress bars, popups and carousels. The widget elements will help you develop applications that draw the user's attention, and apply appealing transitions when users switch from one item to the next.

The Client Framework 1 package is installed automatically by the MCS installer. So it can be accessed over HTTP, in the same way as the rest of the default MCS web application.

Actions and responses

Many widgets are active, in that they are able to load or refresh their content or status. These actions are implemented using Asynchronous JavaScript and XML (AJAX).

You use the XDIME response vocabulary to provide data for widgets. You should always use this vocabulary; any other approach might result in unexpected behavior. Refer to Widget response structure for more information.

You can allow users to suspend content polling through a provided JavaScript API, but note that it affects only automatic interval-based polling. Polling triggered by the user or JavaScript API is not affected. See JavaScript support for details.

Non-client fallback

If the device does not support the Client Framework 1, the server-side processing of the XDIME 2 widget provides a static rendering that assures the basic widget functions. In addition, the XDIME authors can control fallback styling with normal HTML mechanisms – for example by putting a widget in a div element. Please see the Fallback styling section for details.

Sample application

The MCS distribution contains a sample Client Framework 1 application that demonstrates the use of all of the widgets and transition effects. The project contains all the MCS policies and pages of the application. It is located in the ${MCS_HOME}/webapps/mcs.war/projects/client-app directory.

Related topics