The drawbacks of these technologies include problems in ensuring consistent layout and presentation of content on different mobile devices, limited variety and quality of content available, and the need to provide and maintain separate content for mobile devices and the PC environment.
But as wireless networks evolve towards high data rates and packet data capabilities, and mobile devices become more capable in terms of the display, memory, battery, and networking capabilities, more versatile content-authoring languages like XHTML (specifically XHTML Basic) are being employed to take advantage of the new opportunities. XHTML provides an integration point for both wireless and wired Internet content.
The WAP Forum and World Wide Web Consortium (W3C) recommend XHTML as the standard for all Web development for desktops as well as mobile devices, such as handsets. Being an integral part of Internet standards sanctioned by W3C ensures that XHTML will be widely accepted and that it will maintain its viability in the long term. WAP 2.0, the next-generation WAP standard, includes XHTML Basic as the WAP markup language, replacing the WML used in earlier versions. Let's look at the advantages of XHTML for wireless Web development.
XHTML Basic is XHTML 1.0 minus certain capabilities, such as frames, which are not relevant for mobile devices given their limited display capabilities. XHTML takes the tags and syntax from the latest HTML version (4.1) and adds modularity and enforces strict adherence to language rules--which are, of course, the basic characteristics of XML. Strict enforcement of language syntax is particularly significant from a wireless applications point of view, as we'll see in a little while.
XHTML provides better content presentation abilities for the smaller screens of wireless devices. This could be a major advantage, considering the lukewarm user response to dull-looking WML content.
WAP 2.0 specifications include XHTML mobile profile for content authoring. XHTML mobile profile basically extends XHTML Basic with modules, elements, and attributes to provide a richer authoring language for resource-constrained Web clients that do not support the full set of XHTML features, like mobile phones, PDAs, pagers, and set-top boxes. (The XHTML Mobile profile provides more information.)Several properties make XHTML an attractive choice for wireless application development. Some of the advantages of using XHTML for wireless devices are:
- Easier development and maintenance. Since XHTML uses HTML v4.1 tags, you don't have to learn new language tags and you can employ the same tools you use for PC Web development. This means lower development costs as well as lower maintenance costs (no need to maintain different versions of content).
- Better performance. HTML allows for ambiguous code, whereas XHTML, being an XML application, enforces strict syntax. To handle HTML's ambiguities, HTML browsers are typically complex and large--not an option for small mobile devices with limited memory capabilities. XHTML makes relatively simple demands on memory and processing power and thus offers improved persformance
- Consistent look and feel. Many types of wireless devices exist, each with its own display, memory, and processing capabilities. Use of strict XML syntax rules (well-formed document) ensures that content looks consistent on different device types. Also, each document is associated with a Document Type Definition (DTD), which essentially specifies what each tag means and how it should be treated.
- Segregation of content and presentation. XHTML allows for a clean separation between content and its presentation. This is made possible by Cascading Style Sheets (CSS), which allows you to specify the presentation of applications using style sheets. You can apply different style sheets depending on the intended device. Layout and presentation can thus be changed without modifying the basic content. A style sheet includes elements such as fonts, alignment, bulleting, text attributes, margins, and flow. By using default style sheets, operators can offer a consistent and operator-specific look and feel on the content provided by different content providers.
- Transformation into alternate forms. Because XHTML is an XML application, it can use XSLT (eXtensible Stylesheet Language Transformations) for automatic parsing and transcoding of content. XSLT can transform one form of XML content into other forms, such as XHTML and HTML, thereby eliminating the need for developing different types of content. Note that XHTML can itself be the XML content you're transforming.
- XML development model. Although the language tags are familiar HTML tags, making it easy for developers to begin writing XHTML applications, XHTML (being an XML application) also introduces a modular and extensible model for looking at data. This should prove advantageous in making wireless application development modular and structured. A related benefit is the somewhat easier extensibility with specialized markup languages such as SMIL (multimedia), MathML (mathematics), SVG (vector graphics), SyncML (synchronization), and XForms (forms).
- Converging wireless and Web development. According to W3C, XHTML is now the official Web markup standard, replacing HTML. Wireless development so far has been more or less going on in parallel to the Web development. This has had a significant impact on the growth of wireless Internet. Following the official Web markup standard is expected to bring in the much-needed convergence of wireless Internet and the wired Internet.
XHTML's support for CSS and for XML adherence to syntax rules makes it an ideal format for creating wired and wireless Web content.