Fallback styling

If a 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.

If a 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 XDIME 2 you can specify the styling that should be applied in cases when a widget is using fallback behavior. There are two possible methods. Both make use of the Supports client framework attribute defined in the System category of the device repository file.

You create two themes, one used by the Client Framework 1 supported devices, and a second to be used as a fallback.

Using a device category policy

In the MCS Theme editor, you specify both themes to use the Device category policy value of 'Supports client framework'. Then you set the values or 'true' and 'false' respectively in each of the Targets lists.

Using selection markup

The second approach makes use of selection markup. In the example the sel:expr attribute on the link element selects the theme.

<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/2002/06/xhtml2"
  xmlns:mcs="http://www.volantis.com/xmlns/2006/01/xdime/mcs"
  xmlns:widget="http://www.volantis.com/xmlns/2006/05/widget"
  xmlns:sel="http://www.w3.org/2004/06/diselect"
  xmlns:device="http://www.volantis.com/xmlns/mariner/device">
  <head>
    <title>Fallback</title>
    <link rel="mcs:theme" href="/fallback.mthm"
      sel:expr="device:policy-value('supports.client.framework')='false'"/>
    <link rel="mcs:theme" href="/CFsupported.mthm"
      sel:expr="device:policy-value('supports.client.framework')='true'"/>
  </head>
  <body>
    <div/>
  </body>
</html>

Related topics