The focus for much of wireless development so far has been on wireless Internet technologies like WAP 1.x and Wireless Markup Language (WML), which present content to the mobile users adhering to bandwidth and memory limitations of mobile devices.
The drawbacks of such technology have been the 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 toward 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, like 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. WAP2.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 the mobile adaptation of XHTML 1.0
XHTML Basic is XHTML 1.0 minus certain capabilities, such as frames, which are not relevant for mobile devices because they have 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.
WAP2.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. You can refer to XHTML Mobile profile (WAP-277-XHTMLMP-20011029-a) for more information.
XHTML: No more messy markup practices
HTML allows great flexibility in how you code, but XHTML imposes a stricter syntax. This article explains the various differences you'll find in XHTML.
Other advantages of XHTML for wireless development
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, as shown in Listing A. To handle HTML's ambiguities, HTML browsers are typically complex and large—not an option for small mobile devices with limited memory capabilities. XHTML puts relatively simpler requirements on memory footprint and processing power and as a result offers greater performance.
- 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. Listing B shows a sample DTD.
- 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 (Listing C). 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. In future articles, I will dive into the details of the XHTML mobile profile used in WAP2.0 specifications.