This MedLibrary.org supplementary page on XBL is provided directly from the open source Wikipedia as a service to our readers. Please see the note below on authorship of this content, as well as the Wikipedia usage guidelines. To search for other content from our encyclopedia supplement, please use the form below:
Related Sponsors
XBL (XML Binding Language) is an XML-based markup language used to declare the behavior and look of XUL-widgets and XML elements.
XBL was developed by the Mozilla project for use in the Mozilla application suite; the language is not currently described by any formal standard and is thus proprietary to Mozilla, with the only implementation being the Gecko layout engine. XBL 2.0 is the new version of XBL, which is in process of being standardized by the World Wide Web Consortium.
Contents |
XBL basics
In XUL one defines the user interface layout of an application, and then by applying "styles" one can customize the look of various different elements. The drawback is that XUL provides no means to change an element's function. For example, one might want to change how the pieces of a scroll bar work. This is where XBL comes in.
An XBL file contains "bindings", each of which describes the behavior of a XUL-widget or XML element. For example, a binding might be attached to a scroll-bar. The behavior describes the properties and methods of the scroll-bar and also describes the XUL elements defining the scroll-bar.
The root element of an XBL file is the <bindings> element, which contain one or more <binding> elements. Each <binding> element declares one binding, which can be attached to any XUL element. It may also possess an id attribute. A binding is assigned to an element by setting the CSS property -moz-binding to the URL of the binding's file. For example:
scrollbar {
-moz-binding: url('somefile.xml#binding1');
}
wherein binding1 is the id of the binding.
History and future
XBL was initially developed and implemented as part of the Mozilla platform, alongside the XUL language, so XBL is available in most Mozilla-based products: Firefox, Thunderbird, SeaMonkey, etc. There used to be an XBL 1.0 specification document on mozilla.org, which was submitted to W3C as a Technical Note, but the actual implementation never did match the specification.
The new version of the specification, called XBL 2.0, is under development to address the problems of XBL 1.0 and to allow for implementation with a broader range of Web browsers.
While the body of this version of the specification was created by the Mozilla project, outside the World Wide Web Consortium, as was the case for the XBL 1.0 version, the W3C Web Application Formats Working Group is now guiding this specification along the W3C Recommendation track.
The Candidate Recommendation of the specification was released by W3C in March, 2007 [1]. It is stated in the document that it will remain at the Candidate stage until two complete and interoperable implementations exist1.
Relationship with other specifications
The sXBL specification aims to do for SVG documents what XBL has done for XUL documents. SVG is an XML language proposed by the W3C supporting graphics, animations, embedded media, events and scripted behavior.
XBL 2.0 will supersede the sXBL draft [2], as stated in the W3C Web Application Format Working Group site. Also the chapters of the sXBL specification are a subset of those of XBL 2.0.
See also
- XForms also is designed to be extended using XBL
- Wikibook XForm example of XBL
- XUL
- sXBL
References
- ^ The upcoming 1.7 version of Batik, a Java library for manipulating SVG content has a preliminary almost full implementation of the sXBL specification, a very similar - although specific to SVG - W3C standard that will be dropped in favor of XBL
External links
Documentation/Browser implementations
- Mozilla XBL documentation
- W3C XBL 2.0 Candidate Recommendation
- XBL 2.0 Primer Working Draft
- The latest XBL 2.0 update on mozilla website (same content as W3C version)
- Partial implementation of the XBL 2.0 in the Java based X-Smiles browser
Cross-Browser implementations
- Cross-browser XBL 2.0 implementation in JavaScript
- Partial implementation of XBL 2.0 in JavaScript by Sean Hogan
- XBL Marquee - An example implementation.
|
|||||||||||||||||
|
|||||||||||
Wikipedia content modification information:
- This page was last modified on 18 July 2008, at 03:31.
Wikipedia Authorship and Review
Wikipedia content provided here is not reviewed directly by MedLibrary.org. Wikipedia content is authored by an open community of volunteers and is not produced by or in any way affiliated with MedLibrary.org.
Wikipedia Usage Guidelines
This article is licensed under the GNU Free Documentation License. It uses material from the Wikipedia article on "XBL".
The URL for this specific entry is:
All Wikipedia text is available under the terms of the GNU Free Documentation License. (See Copyrights for details). Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc.
