The Value Proposition
As you probably know by now, XML allows data to be stored in a structured, well-defined manner within an XML document. The design of this document is specified within a Document Type Definition (DTD). When XML is parsed (using an XML parser), it is validated for conformance against the document's DTD and the basic rules of the XML language (case sensitivity, required opening/closing elements, and so on). Because this validation step occurs whenever an XML parser is used, XML conformance is always a top priority. This eliminates "browser drift" problems such as those seen by HTML as browser developers opted to "embrace and extend" the actual HTML specification (resulting in nonstandard HTML implementations).
XSL Transformations (XSLT) is, from the specification, "a language for transforming XML documents into other XML documents." For wireless developers, this means that we can store our data or documents in XML and transform these documents using XSLT to produce another valid document! This "new" document could be XML, XHTML, WML, HTML, or any other output format based on XML, single-handedly solving the problem of multiple mobile device support! In this article, we'll use a simple XML data file in conjunction with an XSL template to support both WAP and HTML browser clients.