Version 1.0
04-Sept-2002
Prepared by:
Web Commerce Group
7721 Six Forks Road Suite
120
Raleigh, NC 27615
Voice: 919.841.5992
Fax 919.841.5994
www.wc-group.com
Contact: Jason Williams,
jwilliams@wc-group.com
Along with the advent of the wireless Internet has emerged a unique set of challenges for the Web author. Not only does the developer have a much smaller screen on which to present his content, the devices that his audience may use to view the content are increasingly varied. It is becoming impractical to design multiple versions of a web site, each of which is geared toward a particular device or set of devices.
According to the W3C's Authoring Scenarios1 document, there are
many implications to consider for content authors and authoring techniques. The
following are addressed in this paper (section references refer to Authoring
Scenarios document):
This position paper presents an alternative adaptation technique for delivering content and application to multiple devices, which takes advantage of device capabilities for a better user experience while keeping maintenance cost low and reuse of authored contents high.
Table 1 lists some of the current techniques that try to address the above problem along with their respective advantages and disadvantages.
Technique |
Advantages |
Disadvantages |
Abstracted API's and Tags |
|
|
Direct Lookup |
|
|
HTTP Header Parsing |
|
|
Lowest Common Denominator (LCD) |
|
|
Profile Matching2 |
|
|
Stylesheet Selection |
|
|
Transcoding |
|
|
Table 1: Current DI Techniques
No single solution is the answer to the device independence problem.
A solution that combines several of these techniques and extends them helps to alleviate the drawbacks. The "Add-On" technique combines the techniques of LCD, HTTP header parsing, profile matching and direct lookup.
The author begins by having a local repository of current profile information available to them. The author then must create profile groups that are broken up based on common features and navigation. Each of these groups will have an LCD profile associated with it. How many groups to create and which criteria to use is up to the author and will depend on the intended audience and content to be displayed.
The author then creates a base design for each group. This may be in the form of stylesheets, servlet pages or distinct static pages. These base designs are constructed using the LCD profile for each group. However, they should also have room for "add- ons". For example, if an LCD profile for a group has a WML deck size of 1492 bytes, but several profiles in the group have larger deck sizes, the author can have an add-on to allow for larger deck sizes. In other words, the LCD profile is the author's "baseline" design guide, but the add-ons allow the author to take advantage of additional capabilities within the group that don't apply across the board.
This technique allows for different navigation and layout for different groups with the ability to take advantage of certain device's additional capability. Header information, though limited, can be helpful in determining user preferences and augmenting the profile originating from the profile repository. Figure 1 gives an overview of the process.
Figure 1: Add-on technique overview
Table 2 discusses how this technique overcomes some of the disadvantages of the previous techniques.
Current Technique |
Current Disadvantages |
How Solution Mitigates |
Direct Lookup |
|
|
HTTP Header Parsing |
|
|
Lowest Common Denominator (LCD) |
|
|
Profile Matching |
|
|
Stylesheet selection |
|
|
Table 2: Advantages over current techniques
There are still disadvantages with this solution:
There is no easy way to get around maintaining a profile repository. With the exception of the HTTP Header technique, and perhaps the LCD technique, all the current techniques rely on having some form of repository of profile data available. Who maintains this repository can vary; it could be done by the author or by some commercial or community process. Nevertheless, there will be some form of repository in the process and someone must maintain it.
CC/PP and UAProf attempt to get around this requirement by placing profiles (or most likely a URI pointing to a server that contains the profile) in the header of an agent, however the net effect is that the "repository" is simply spread out over all the device manufacturer's servers at a substantial cost to them. Also, until these standards are fully accepted in the market, there must be support for those non-compliant devices that linger even after CC/PP gains momentum.
The Add-on technique provides content authors with a reliable and accurate method for presenting to a wide variety of devices. The four implications of device independent techniques outlined in the first section are achieved using this technique.
Implication |
How Solution Mitigates |
Allow authors to support a wide variety of device capabilities without excessive effort | Profile groups can be as coarse grained as the author desires. |
Protect applications from the appearance of new devices by providing mechanisms that allow them to be supported in some basic way without change to the existing site if at all possible | Based on the preferred markup language given in the header, a new device can, at the very least, be given an LCD profile in its respective markup language. |
Allow authors to support a wide variety of devices with diverse capabilities without the need for detailed knowledge of the precise characteristics of each one. | Profile groups can be as coarse grained as the author desires. |
Allow authors to customise presentations for particular devices or classes of device. | Features of high-end devices can be utilized by add-ons to LCD profiles. |
A different style or navigation for every device is impractical, while just one (LCD) navigation or style for all devices is not sufficient. Profile grouping gives the author enough flexibility to highlight certain device's features, while easing the amount of up- front design work by grouping similar devices together.
1"Authoring Scenarios for Device Independence", http://www.w3.org/2001/di/public/as/
2The term "profile matching" refers to the technique of matching an incoming profile against a known profile by comparing and contrasting attribute values to determine superiority, inferiority or equality.
Copyright© 2002, Web Commerce Group