sXBL (SVG's XML Binding Language) is a mechanism for defining the presentation and interactive behavior of elements described in a namespace other than SVG's (an XML language supporting vector graphics, user events and scripted behavior). sXBL is very similar to XBL, as it does for SVG documents what XBL does for XUL documents. For example, it is possible to define a generic scrollArea in sXBL and use it in SVG documents.
History, objectives, and future
editsXBL specification derived from a specification called RCC (Rendering Custom Content) that was embedded in a 2003 working draft[1] of the SVG 1.2 specification. The RCC part of the specification has since been removed in favor of the sXBL more modular approach.
As stated in the sXBL working draft:
sXBL is intended to be an SVG-specific first version of a more general-purpose XBL specification (e.g., "XBL 2.0"). The intent is that, in the future, a general-purpose and modularly-defined XBL specification will be developed which will replace this specification and will define additional features that are necessary to support scenarios beyond SVG, such as integration into web browsers that support CSS. Once a general-purpose XBL is defined, sXBL would just become an SVG-specific subset (i.e., a profile) of the larger XBL specification.
Even if sXBL has borrowed a lot from XBL, there are some differences between these two standards (for example, the name of some of the elements are different). However, there are also some subtle differences between the current state of the Mozilla XBL 2.0 working draft[2] and the current state of the sXBL working draft.
As the sXBL specification has not evolved since the last working draft in August 2005, and since the September 2006 release of the XBL 2.0 last call working draft, it seems that sXBL will be dropped in favour of the more general XBL 2.0 approach.[3]
Implementations
editsXBL is a W3C working draft, and has not yet reached the status of a recommendation. However, the Batik SVG Toolkit, a Java library that can be used to render, generate, and manipulate SVG graphics, has a preliminary "almost full" implementation of the current state of the sXBL specification in its code base.
See also
editReferences
editExternal links
edit- Specification W3C Draft.
- Explaining the differences between sXBL and XBL 2.0 specifications
- Batik SVG Toolkit - Batik SVG toolkit website
- Current status of Batik's sXBL implementation