Documentation Center

Contextual view switching

The contextual view switching functionality in SDL Digital Experience Accelerator (DXA) allows you to display your Views in a format proper for the device you are using.

The contextual view switching functionality is governed by the device-families.xml file which contains a set of definitions for device families that DXA recognizes. These definitions allow DXA to distinguish between, for example, a mobile phone from a tablet. Each definition consists of context claims which hold values which need to met by your device in order for DXA to display a View in a proper format.

Here is an example of a device definition for a smartphone:
<devicefamily name="smartphone">
        <condition context-claim="device.mobile" value="true"/>
        <condition context-claim="device.tablet" value="false" />
        <condition context-claim="device.displayWidth" value="&gt;319" />
    </devicefamily>
Whenever a View is to be displayed, DXA scans the definitions in the device-families.xml file, and if all conditions set for a particular device family are met, a proper View is displayed. The View naming conventions is the following: Viewname.<device_family_name>.cshtml|jsp

If the conditions for your device are not found in any of the device families definitions, DXA will use the default View.

In device-families.xml, you can define your own device family definitions. You can find the device-families.xml file in the following locations:
  • For Tridion 2013 SP1: \web\2013sp1\dist\bin\
  • For Web 8: \web\web8\dist\bin\
  • For Java: \web\sources\dxa-example-webapp\src\main\resources\