The Browser War continued: XML support in IE and Mozilla
Mozilla 5 alpha
The mozilla group has recently released the Milestone 12 version of their browser.
This browser uses XML internally as well as for Web documents.
Mozilla uses the expat XML Parser, written in C by James Clark. Expat is the foundation
for everything XML-related in mozilla, for both inner workings and XML document
support.
XML for browser-internal data
Configuration data such as user preferences and bookmarks are stored in RDF (Resource
Description Framework), an XML standard for expressing semantic networks. XML is also
used for data exchange with a server for SmartBrowsing services.
The user interface is expressed in XUL (XML-based User Interface Language) and then
displayed by the rendering engine, similar to HTML for the documents.
Aurora
Aurora is the codename for the browser's internal datastore, which uses XML in the form
of RDF, the Resource Description Framework. The browser needs to store quite a bite of local
and user information, both persistent and transient, in the form of
- bookmarks
- history of visited Web pages
- search results
- information on file systems
- FTP locations
- Web site maps
Aurora stores and manipulates all these data items as RDF data structures, providing
uniform access to all kinds of data flavors. This illustrates XML's potential use as
a universal data storage format.
SmartBrowsing
Netscape and Alexa have pioneered the concept of smart browsing, where the user
types keywords instead of cryptic URLs into the location bar,
and receives additonal information on Web pages such as a list of related sites.
The communications between client and server is also encoded in XML, making
a good example of XML as a communications protocol format sent over standard HTTP, bypassing
Internet-unfriendly protocols such as COM, CORBA or Java RMI.
XUL
XUL stands for "XML-based user interface language." It is an XML-based language for describing
the contents of windows and dialogs. XUL has language constructs for all of the typical dialog
controls, as well as for widgets like toolbars, trees, progress bars, and menus.
Where HTML describes the contents of a single document, XUL describes the contents of an entire
window (which could itself contain multiple HTML documents). This mechanism is a very
helpful tool for cross-platform support because it allows one user interface described
in XUL to be rendered by platform-specific implementations of the XUL engine, on different
platforms.
XML document support
Mozilla also supports the use of XML as a document format, albeit in a different way than
Internet Explorer. Both browsers support XML formatted with CSS, but while IE supports XSL
Mozilla evolves into the direction of CSS2. Mozilla M12 supports:
- XML with links to external CSS stylesheets
- Advanced CSS2 features - tables, positioning, visual effects
- XML Namespaces
- HTML elements included using the HTML namespace
- Simple XML links
- DOM Level 1 access
Mozilla contains a complete CSS1 implementation, with more advanced CSS2 features,
such as CSS2 selectors, tables, and fixed elements.
XSLT in Mozilla
Mozilla M12 doesn't offer out-of-the-box XSLT support. The group added hooks to enable you to
call an external XSLT engine, and Eric Krock from Netscape informed me that an
external developer is developing just such an engine on an open
source basis. So the ability exists to plug in an XSLT engine to Mozilla if you wish.
They will evaluate "officially" adding XSLT support in the future.
Eric invites you to join the development:
"Keep in mind that since Mozilla is completely free and open source,
anyone who wants to
make this happen sooner is welcome to get involved and contribute the
necessary source.
An XSLT newsgroup has just been started on mozilla.org, and we'll be
happy to provide
everything necessary for anyone who wishes to set up their own project
(project area,
Bugzilla components, etc.). Look at the excellent work Roger Sidje &
co. have done on
MathML to see how quickly this approach can produce results. Please
convey to your
readers my formal invitation to start an XSLT project on mozilla.org."
If you, like me, want to use that stuff rather than implement it, we can only
hope that somebody will pick this up soon.
Soapbox
Netscape and mozilla.org claim full standards support for HTML 4.0, CSS1, DOM1, and XML.
I am sure a detailed examination of this will show up in the HTML and DHTML sections
at WebReference real soon now.
Curently XSL is out of scope for Mozilla version 5. Even if you feel like fiddling with
the code base to plug in XSLT support, you end up with your personal version of the browser,
increasing the number of variations out there with different features, and different bugs.
Proliferation continues....
next page

Produced by Michael Claßen
All Rights Reserved. Legal Notices.
URL: http://www.webreference.com/xml/column4/2.html
Created: Jan. 17, 2000
Revised: Jan. 17, 2000