XBL

  • Revision slug: XBL
  • Revision title: XBL
  • Revision id: 130332
  • Created:
  • Creator: Federico
  • Is current revision? No
  • Comment added language: IT

Revision Content

XML Binding Language (XBL, sometimes also called Extensible Bindings Language) is a language for describing bindings that can be attached to elements in other documents. The element that the binding is attached to, called the bound element, acquires the new behavior specified by the binding.

Bindings can contain event handlers that are registered on the bound element, an implementation of new methods and properties that become accessible from the bound element, and anonymous content that is inserted underneath the bound element.

Most XUL widgets are at least partially implemented using XBL. You can build your own reusable widgets from existing XUL, HTML, SVG, and other primitives using XBL.

Specifications

XBL 1.0 is specified in XBL 1.0 Reference. Unfortunately, the actual implementation in Mozilla is different from the specification, and there's no known document describing the differences. Hopefully, the Reference will be updated to describe those differences.

XBL 1.0 is a Mozilla-specific technology, and not a W3C standard. However, at least two standards are being worked on: sXBL and XBL 2.0.

  • W3C sXBL (currently a working draft) stands for SVG's XML Binding Language. It is supposed to include a subset of XBL 2.0 features needed for SVG. It's similar in spirit to Mozilla's XBL, but there are a few subtle (and not-so-subtle) differences. For example, the names of elements are different. Also sXBL lacks some features of XBL, such as bindings inheritance and defining methods/properties on bound elements.
  • XBL 2.0 is being developed to address problems found in XBL 1.0 and to allow for implementations in a broader range of Web browsers.

Some differences between sXBL and XBL2 are listed in an article by Anne van Kesteren.

See also

{{ wiki.languages( { "fr": "fr/XBL", "it": "it/XBL", "pl": "pl/XBL" } ) }}

Revision Source

<p>
<b>XML Binding Language</b> (<b>XBL</b>, sometimes also called Extensible Bindings Language) is a language for describing bindings that can be attached to elements in other documents. The element that the binding is attached to, called the <i>bound element</i>, acquires the new behavior specified by the binding.
</p><p>Bindings can contain event handlers that are registered on the bound element, an implementation of new methods and properties that become accessible from the bound element, and anonymous content that is inserted underneath the bound element.
</p><p>Most <a href="en/XUL">XUL</a> widgets are at least partially implemented using XBL. You can build your own reusable widgets from existing <a href="en/XUL">XUL</a>, <a href="en/HTML">HTML</a>, <a href="en/SVG">SVG</a>, and other primitives using XBL.
</p>
<h3 name="Specifications"> Specifications </h3>
<p>XBL 1.0 is specified in <a href="en/XBL/XBL_1.0_Reference">XBL 1.0 Reference</a>. Unfortunately, the actual implementation in Mozilla is different from the specification, and there's no known document describing the differences. Hopefully, the Reference will be updated to describe those differences.
</p><p>XBL 1.0 is a Mozilla-specific technology, and not a <a class="external" href="http://w3.org/">W3C</a> standard. However, at least two standards are being worked on: sXBL and XBL 2.0.
</p>
<ul><li> W3C <a class="external" href="http://w3.org/TR/sXBL/">sXBL</a> (currently a working draft) stands for <i>SVG's XML Binding Language</i>. It is supposed to include a subset of XBL 2.0 features needed for <a href="en/SVG">SVG</a>. It's similar in spirit to Mozilla's XBL, but there are a few subtle (and not-so-subtle) differences. For example, the names of elements are different. Also sXBL lacks some features of XBL, such as bindings inheritance and defining methods/properties on bound elements.
</li><li> <a class="external" href="http://www.mozilla.org/projects/xbl/xbl2.html">XBL 2.0</a> is being developed to address problems found in XBL 1.0 and to allow for implementations in a broader range of Web browsers.
</li></ul>
<p>Some differences between sXBL and XBL2 are listed in <a class="external" href="http://annevankesteren.nl/2005/11/xbl">an article by Anne van Kesteren</a>.
</p>
<h3 name="See_also"> See also </h3>
<ul><li> <a href="en/XUL_Tutorial/Introduction_to_XBL">Introduction to XBL</a> from the <a href="en/XUL_Tutorial">XUL Tutorial</a>.
</li><li> <a class="external" href="http://mb.eschew.org/15.php">XBL chapter</a> of <a class="external" href="http://mb.eschew.org/">"Rapid Application Development with Mozilla"</a>
</li></ul>
<ul><li> <a href="Special:Tags?tag=XBL&amp;language=en">More XBL resources...</a>
</li></ul>
{{ wiki.languages( { "fr": "fr/XBL", "it": "it/XBL", "pl": "pl/XBL" } ) }}
Revert to this revision