An Introduction to Device Independence

Device Independence | Working Group

What is Device Independence?

A few years ago, virtually the only way to access the Web was through a personal computer or workstation. True, there were variations between the facilities offered by various browsers, some being capable of use on text-based terminals. However, almost invariably, Web access, for individuals without specific accessability needs, involved using a machine with a reasonably large, color display with full graphic capabilities. While this is still primarily true, since the middle of 2000, the number of different kinds of device that can access the Web has grown from a small number with essentially the same core capabilities to many hundreds with a wide variety of different capabilities. At the time of writing, mobile phones, smart phones, personal digital assistants, interactive television systems, voice response systems, kiosks and even certain domestic appliances can all access the Web.

The range of capabilities for input and output and the range of markup languages and networks supported greatly complicate the task of authoring web sites and appllications that can be accessed by users whatever device they choose to use. Device Independence encompasses the techniques required to make such support an affordable reality. In particular the activity focuses on

Without this initiative, there is an increasing danger that parts of the Web will become unavailable to users unless they employ a particular type of device.

An Architectural View

an architecture diagram showing high level components involved in device independence

Figure 1: Overall architecture for a client request and associated response

Figure 1 shows high level components involved in device independence. A Web client is shown accessing a resource on a server, in this case an origin server. This access might be direct, or might occur via one or more intermediaries. These are also shown in Figure 1.

The client initiates the access by making a request. In addition to an appropriate reference to the desired resource, the request carries with it information associated with the client. The purpose of this information, known as the delivery context, is to provide information that may be needed to allow the final response to be adapted to the capabilities of the client. The request and the delivery context flow from the client, through any intermediaries to the server. The server uses the appropriate repositories of content in constructing the response to the request. This response then flows back to the client..

The Figure 1 also shows that adaptation can occur anywhere in the path from server back to client. It might, for example, occur completely on the server. The server might, using information from the delivery context, select particular materials, arrange the physical layout and style the result in a way appropriate for the client. The response, already adapted to the needs of the client, flows back through any intermediaries. If adaptation is possible in intermediaries, it might be that no adaptation occurs on the server. The server responds with material that requires adaptation, and this occurs at the appropriate intermediary, for example. Adaptation can also occur on the client. The architecture supports models in which adaptation is distributed, occuring at multiple points as the response flows from server to client.

Publications and the Architecture

a diagram showing the relationship between the architecture and DIWG publications

Figure 2: Relationship between the architecture and various Device Independence Working Group publications.

Figure 2 shows the relationships between the architecture diagram from Figure 1 and various documents on device independence prepared by the Device Independence Working Group. The following list relates the acronyms used in the diagram with the particular documents involved:

the Device Independence Principles Working Draft
the Authoring Challenges for Device Independence Working Draft
the Delivery Context Overview for Device Independence Working Draft
the Core Presentation Characteristics: Requirements and Use Cases Working Draft

In addition, the Device Independence Working Group has prepared a Glossary of Terms for Device Independence.

Stephane Boyera
Rhys Lewis, Chair DIWG

Level A conformance icon, W3C-WAI Web Content Accessibility Guidelines 1.0 Valid XHTML 1.0!