User Agent Constraints
October 30, 2000
The second set of factors deals with the user-agent applications (the
web browsers) running on the target devices.
XHTML Element and CSS Property Support
As you may well be aware, there is considerable difference between
personal computer web browsers when it comes to element and property
support. The differences increase when you move beyond the computer
platform to set-top boxes and handheld devices. For example, the
WebTV platform does not support the <applet> element and the Palm web
clipping platform does not support the <frame> element.
File Format Support
Non-traditional web devices may only support a limited set of file
formats or features within these file formats. For example, the Palm
web clipping platform only supports JPEG and GIF files (not PNG or
animated GIF files). The WebTV platform is also limited on its native
support (what it can do on the set-top box), but there are special
servers that automatically convert many graphic file formats (such as
PNG) to these formats before the user sees the web page.
Plug-in Support
A great deal of the multimedia on the Web is realized through plug-in
decoders like Flash and Quicktime. While these types of plug-ins are
well supported by the major browsers, the lack of memory in many non-
traditional web devices prohibits their support. For example, the
WebTV Classic platform only supports Macromedia Flash Version 1 and
the Palm web clipping platform does not support any plug-ins.
Human Interface Device Constraints
The third set of factors deals with the way in which users interact
with the device.
Mouse Support
You can feel pretty confident that anyone accessing your web page on
a computer has a mouse, or something like a mouse, as an input
device. A common feature of these types of input devices is that they
control a cursor that can move from any pixel on the screen to any
other pixel on the screen, moving over any pixel on the screen.
This type of input is not always available on some web devices. For
example, on some set-top boxes, your users may only be able to use an
up-down-left-right set of keys that moves the cursor in a grid
pattern.
Key Support
Likewise, you can feel pretty confident that anyone accessing your
web page on a computer has a full-function keyboard. This means that
they can enter any alphanumeric symbol with relative ease.
This may not be the case on some web devices. For example, WebTV does
not normally ship with a keyboard. Therefore, many WebTV users must
use their remote control for entering alphanumeric characters – quite
cumbersome, indeed.
Viewing Distance
Another important factor is the distance between the display and the
user. As the user gets further away from a device, it is more
difficult (and stressful) for the user to move a cursor to a small
region on the screen.
Usage Models
In addition, the mode of the user may change as well. When the web
device moves from the office to the living room, the user will change
from an active, lean-forward, posture, to a passive, lean-backward,
posture.
The device may also go from a single owner device (like a handheld
device), to a single user at a time device (like a personal
computer), to multiple users at a time device (like a television set-
top box).
Strategies
So the big question is: how do you deal with all of these factors?
Well, the simple answer is that you do not need to deal with all of
these factors all of the time. First and foremost, you need to
identify:
- What you're trying to do with your Web page (your goals)?
- Who is your audience?
The answer to these two questions will help you identify which
'factors' you need to address.
Once you have identified which factors you need to address, you can
determine which strategies or combination of strategies are
appropriate to your needs.
There are three basic strategies for managing content that targets
multiple devices (rather than just traditional web browsers that we
looked at in the page and site design chapters earlier):
- Content selection
- Content generation
- Content adaptation
Each of these is described in the following sections.
Content Selection
The content selection strategy means that you have multiple versions
of your web page, each version tailored to one or more devices or web
browsers.
This is the simplest approach from a technical perspective – all you
have to do is determine which web browser is asking for your web page
and deliver the web page for that browser. On the other hand, it will
require that you author multiple versions of the same document. This
can become a considerable maintenance headache if the number of files
or the number of devices increases.
Content Adaptation
The content adaptation strategy means that you adapt an existing web
page to meet the constraints of the target device.
This strategy is very common in the Web. AOL and WebTV both perform
content adaptation using something called 'proxy servers'. Proxy
servers intercept documents as they move between the servers
originating the documents (often called origin servers) and the
client devices. These proxy servers adapt and cache the documents
before passing them onto the client devices.
Unfortunately, proxy servers are not always available and their
autonomous processing may lead to less than desirable results.
Content adaptation can be as simple as converting image and audio
formats into those understood by the target device (WebTV converts
PNG images to the GIF file format, for example), or content
adaptation can be as complex as changing the content of the document.
As an example of this, WebTV does not support frames in the set-top
box, rather, the WebTV proxy servers convert frames into tables.
A similar approach is being taken by the Wireless Application
Protocol (WAP) Forum, an industry group working with the World Wide
Web Consortium to define a markup language and protocols for
delivering web content to mobile terminals (like cell phones). The
WAP architecture calls for 'proxy servers' that can convert between
the HTML and XHTML languages into the WAP Markup Language (WML).
Content Generation and XSL Transformation
The content generation strategy means that you dynamically build a
web page that meets the constraints of the target device.
Typically, you would have an XHTML template for each target device,
and the content comes from a database. Today, each of these template-
database systems uses a proprietary solution.
The World Wide Web Consortium has introduced a new technology aimed
at solving this problem. This new technology, called XSL
Transformation (XSLT), is a language for transforming one XML
document into another XML document. This means that you will be able
to use your 'sniffer' technology to determine which browser is being
used, and then apply XSLT technology to generate the correct XHTML
document.
While the tools are not quite there yet, you can get a taste of XSLT
using Microsoft Internet Explorer.
Strategies for Handling Media Types
Beginning XHTML
Using XSL Transformations
|