Header Sep
Latest News
My Rating Score
Login to rate page

October 27, 2003
WML/xHTML Development for Sony Ericsson Phones

[Back]

A few years have passed since the peak of the WAP hype.  Since then, we have not heard much about it.  Now that WAP 2.0 is reaching the mainstream, it is worth another look.
 
Most of the current devices support the old standard, WAP 1.2.1.  WAP 1.2.1 is available on Sony Ericsson phones such as the T100, T200 and T600.

WAP 1.0 and 1.1 introduced wireless markup language (WML) and a simple scripting language with WML script.  WAP defined a protocol stack optimized for wireless, including transport layer security. WML supports simple text types, Unicode, user input, variables, and monochrome bitmaps. WAP 1.2.1 then added push capability, WIM and UAProf. This is what you can do with the simpler Sony Ericsson phones listed above.

A major stumbling block for WAP's adoption is that while earlier versions of WAP addressed the low-bandwidth characteristics of devices at the time, they were not compatible with Internet protocols such as HTTP and TCP. Furthermore, WAP was not compatible with HTML, the lingua franca for displaying and hyperlinking information, and conducting operations on the Web. This meant that vendors had to retool their web sites and support a WAP gateway, so that customers could access their information.

WAP 2.0 has dramatically changed this by supporting TCP as a transport protocol, and a subset of XHTML as a rendering/control interface. WAP 2.0 thus offers the potential for customers to access many more Web-based services on the Internet. Many recent phones now support WAP 2.0, such as Sony Ericsson's T300, T310, T610, T68i, P800 and Z600.

What follows is a more detailed discussion of the more important parts of WAP 2.0's feature set.  For a complete description, see the WAP 2.0 White Paper from OMA (Open Mobile Alliance) formerly known as WAP Forum.

Internet protocols - WAP 2.0 adds the Internet standards HTTP and TCP as an alternative to the WAP stack as a means of communicating with a WAP device.  This means that WML content can be accessed without the use of a WAP gateway. The benefits are a more direct route to the content server and no delay associated with converting from WAP to Internet protocol. WAP 2.0 specifies the use of Wireless Profiled TCP, a way to configure TCP for better performance in wireless environments.
 
XHTML Mobile Profile (XHTML MP) - WAP 2.0 defines XHTML mobile profile, a strict subset of XHTML. XHTML is based on HTML 4.1 but conforms to XML, whereas HTML does not. XHTML MP is in turn a superset of the W3C (the World Wide Web Consortium) XHTML basic profile. An XHTML page, written in either XHTML MP or XHTML basic, can be viewed in a WAP 2.0 browser or any standard Web browser. All basic XHTML features are supported, including text, images, links, checkboxes, radio buttons, headings, horizontal rules, and lists.

The tags are the same for XHTML MP and HTML 4.1, and thus standard web tools can be used. CHTML, the popular markup language used by iMode, is similar.  However, it is not strictly XML and does not support CSS.

Not all Sony Ericsson phones that support WAP 2.0 support all of the WAP 2.0 features.  For example, T68i, T300, T310, T610 and Z600 support XHTML; T68i and T610 support CSS; T300/302, T600/616/6198  and Z600 support push; and all have a UAProf link in their request header but do not send the UAProf content over the air.
 
The smartphone family of phones takes care of this confusing array of mark-up languages by supporting them all.  The Opera browser, available as a download, not only supports all of the mark-up languages mentioned above, it also supports HTML, JavaScript and more.  The browser does justice to HTML web content by gracefully formatting it for the 240x320 screen.
 
Cascading Style Sheets (CSS) - Based on the Mobile Profile of CSS from the W3C, WAP support covers both inline and external style sheets, which are commonly supported by most Internet browsers.  See the W3C standard for details on how the Mobile Profile CSS differs from CSS.

CSS allows the presentation format to be separately defined from the content.  It makes the developer's job easier and makes for a more consistent presentation.  By making a single formatting change in the style sheet, all pages that reference that style sheet will pick up the change.  Additionally, the device can cache a style sheet that can be used with subsequent pages that reference it, saving bandwidth and time.  Style sheets can control positioning, text attributes, fonts, borders, margins and flow.

Push - This capability enables information to be sent to a WAP device, rather than the user explicitly requesting ("pulling") it.  For example, a service could watch a stock price and only send information to the device when a certain price is reached.  Behind the scenes, a specially formatted SMS begins the process. When the user reads the SMS and selects to view the content, the URL from the SMS is fetched and rendered by the WAP browser.  Operators avoid spam by allowing only trusted applications to send push messages.

UAProf - User Agent Profiles are used to identify the characteristics of the handset.  The UAProf describes hardware characteristics (screen size, color capabilities, image capabilities, manufacturer, etc.), and software characteristics (operating system vendor and version, support for MExE (Mobile Execution Environment), list of audio and video encoders, etc.). The profile also describes the application/user preferences (browser manufacturer and version, markup languages and versions supported, scripting languages supported, etc.), WAP characteristics (WML script libraries, WAP version, WML deck size, etc.), and network characteristics (bearer characteristics such as latency and reliability, etc).

When the browser requests content from the server, it includes a reference to its User Agent profile.  The server can then use the information to make decisions about what content to send to the device and how to format it.

MMS - This service provides the framework to implement a feature-rich messaging solution.  WAP defines an architecture that delivers MMS content to the device using the WAP stack as a transport.

After you create an MMS, you can send an MMS notification to the device via SMS.  The client then uses a WSP (Wireless Session Protocol) or HTTP Get to fetch and then render the MMS. See the WAP-209-MMSEncapsulation specification for information on how this works.
MMS is supported in the following Sony Ericsson devices: T68i, T226, T230, T300, T310, T312, T316, T610, T616, T618, T630, P800, P900, Z600 and Z1010.

Provisioning - This service provides a standard approach to providing WAP clients with information needed to operate on the wireless networks. Provisioning permits the network operator to manage the devices on its network using a common set of tools, manage distribution and charging for content. The new features introduced in WAP 2.0 should finally make WAP a more attractive platform.  Developers will like the familiarity and flexibility of XHTML and CSS.  UAProf allows them to better tailor content to a variety of devices.  And users will be attracted to the richness of MMS and the convenience of pushed content.
 
For More Information:

My Rating Score
Login to rate page