Opentopia Directory Encyclopedia Tools

XUL

Encyclopedia : X : XU : XUL : XUL


XUL (XML User Interface Language) is a markup language developed by the Mozilla project for its applications. Like UIML and XAML it is an application of XML that describes user interfaces. The name is pronounced as zool ([zu:l]).

XUL is not yet a public standard, though it uses many existing standards and technologies, including CSS, JavaScript, DTD and RDF, which makes it relatively easy to learn for people with a background in web programming and design.

The main benefit of XUL is that it provides a simple and portable definition of common widgets. This reduces the software development effort in a way analogous to the savings offered by 4GL tools.

Introduction

An XUL interface is typically defined to consist of three discrete sets of components: (See here for an example.)

XUL elements

XUL defines a wide range of elements, which roughly belong to the following types:
Top-level elements
e.g. window, page, dialog, wizard, etc.
Widgets
e.g. label, button, text box, list box, combo box, radio button, check box, tree, menu, toolbar, group box, tab box, color picker, spacer, splitter, etc.
Box model
e.g. box, grid, stack, deck, etc.
Events and Scripts
e.g. script, command, key, broadcaster, observer, etc.
Data source
e.g. template, rule, etc.
Others
e.g. overlay (analogous to SSI, but client side and more powerful), iframe, browser, editor, etc.
It is possible to use elements from other applications of XML within XUL documents, such as XHTML, SVG, and MathML.

Some common widgets - such as spinbox, slider, and canvas - are not available in the current XUL widget set, but are planned for XUL 2.0 [link].

Usage

While XUL is mostly used for creating the Mozilla applications and their extensions, it is possible to use it for web applications transferred over HTTP. One of the most well-known XUL applications of this type is the Mozilla Amazon Browser, which provides a rich interface for searching books at Amazon.com. However, many of the powerful features of Mozilla, like privileged XPCOM objects, are not available to unprivileged XUL documents (unless the script is digitally signed), and such documents also suffer from various limitations of the browser, such as the inability to load remote XUL, DTD and RDF documents.

Film references

THERE IS NO DATA.
THERE IS ONLY [XUL].
The XUL name is a reference to the film Ghostbusters, in which the ghost of an ancient Sumerian deity called Zuul possesses the character Dana Barrett (played by Sigourney Weaver) and declares "There is no Dana, only Zuul". Since XUL is unusual in using XML to define an interface, rather than a document, its developers adopted the slogan "There is no data, only XUL". This is referred to by the XML namespace URI at the beginning of every XUL document, http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul; when viewed with a XUL-capable application, the document pointed to displays the slogan in large letters in the center of the screen (similar to that to the right).

"Keymaster" and "gatekeeper" are also references to the same plotline. This is not the only reference to Ghostbusters within Mozilla - for instance, the JavaScript debugger component is called Venkman, one of the main characters in the film.

See also

External links

 


From Wikipedia, the Free Encyclopedia. Original article here. Support Wikipedia by contributing or donating.
All text is available under the terms of the GNU Free Documentation License See Wikipedia Copyrights for details.

Search Titles
0123456789
ABCDEFGHIJ
KLMNOPQRST
UVWXYZ?

E-mail this article to:

Personal Message: