[Back] [Forward] [Contents] [Home]

Section 3: Introducing the eXtensible Markup Language and Related Technologies

3.4 Web browsers and parsing

The different versions of Web browsers currently in use vary in their support of XML technology. This is a particular issue for client-side processing and is seen by many as a major factor inhibiting the adoption and development of XML and related tools (Warwick and Pritchard 2000). For example, as the W3C standards for XSL have evolved, different browsers have included different parsers. Earlier browsers do not support XML and XSLT for the obvious reason that neither existed when the browsers were released (Fitzgerald 2004, 7).

The W3C Schools website provides an overview of browsers and statistics. Microsoft Internet Explorer (IE) is the most commonly used Web browser; IE 5 was the first major browser with XML support, but is not compliant with full XML/XSL standards. At the time of writing, 65% of users use IE 6.0, and 60% operate on a Windows XP platform. At present, IE 6.0 best supports XML features, using the Microsoft XML parser MSXML 3.0, although an updated MSXML 4.0 can be downloaded from the Microsoft website (McGrath 2002, 8). However, there is a bug relating to the charset encoding in IE 6.0 (Castro 2001, 61). Netscape Navigator 4 has no XML support, Netscape 6 and 7 have basic support for CSS and XML, but no XSL capability. Opera versions 6 and 7 can parse and display XML documents, but do not support XSL formatting objects or XSLT transformations (Fitzgerald 2004, 7).

At the time of writing there was no indication on the Microsoft website regarding when an updated version of Internet Explorer might appear, nor to what extent XML technologies will be supported in future updates or releases of MSXML. Similarly, there is no further indication on the Netscape and Opera browser Webpages. Mozilla, however, has a Webpage that clearly sets out existing XML support in the Mozilla 1.6 and 1.7 browsers and future developments.

There are many open-source XML parsers and XSL processors freely available for download, such as the Aelfred XML parser and Saxon XSLT and Xquery Processor from SourceForge; the Apache XML project Xerces XML parser, Xalan XSL stylesheet processor and the Cocoon Project. Saxon, for example, is widely used by the Oxford Text Archive (J. Cummings, pers. comm. August 2004).

3.4.1 Client-side vs server-side processing

On the client side, an XML document can be transformed in an XML-supporting browser for display as HTML. The practical case-study presented in Section 4 utilised this method of processing during development through Microsoft Internet Explorer 6.0 with MSXML 4.0, despite the limitations that this brings (see 4.4.2). For the purposes of delivery as part of this article, the relevant files are being hosted on the Internet Archaeology server, and processed by Cocoon.

For client-side transformation of the case-study examples, the client must be able to parse and process XML and support XSL and CSS. As there are a number of Web browsers that do not support these functions, particularly the older browser versions referred to above, these present restrictions for those wishing to use XML technologies.

A solution to this problem is to provide server-side transformation of XML and XSL, which has a number of advantages over client-side processing. The XML document and XSL stylesheet are held on the server, and the XML can be processed to create (X)HTML files or other required formats before it is served to the browser. Thus, (X)HTML files can be generated 'on the fly' at the request of the user, and the XML support on the user's Web browser is not an issue. Another advantage of server-side transformation is that data from different sources may be combined. There is also added data security in that the full XML document does not need to be sent to the client.

[Back] [Forward] [Contents] [Home]