xbl:content
is not visible from inside the component.xf:input
.<foo:bar>
, assuming <foo:bar>
has an XBL binding.<foo:bar>
:xbl:content
processingxxbl:transform
<div>
, cannot be event observers.xf:group
, xf:switch/case
, xf:repeat
). With such components, a lot of content is typically nested under the bound node:xbl:content
, the XBL engine does the work for you:fr:tab
)xforms-model-construct-done
event on local models. This event is dispatched when the component is being initialized. This event can be dispatched multiple times to a given component during a form's lifecycle, as the component is initialized each time it becomes relevant.xforms-model-construct-done
is dispatched, UI controls are not present yet. So you cannot reach controls from action handlers responding to that event.xforms-ready
is not dispatched to local models. Here is how you can register handlers to perform initializations when the component is created and destroyed:ev:target
attributes, which ensure that only events actually targeting this particular group are handled. If you omit that attribute, you might observe more than one event for creation or destruction, which is in general not desired.xforms-ready
is dispatched to XForms models nested within the component. Specifically, xforms-ready
is dispatched when the component receives the xforms-enabled
event during a refresh. This event can be dispatched multiple times to a given component during a form's lifecycle, as the component is initialized each time it becomes relevant.xforms-ready
is dispatched, UI controls are present.xf:dispatch
and using the id of the xbl:binding
element as target.my:
prefix in the event context information is not mandatory, but if a prefixed is used a namespace mapping must be in scope. It is good practice to use a prefix so as to prevent name conflicts with standard XForms event context information.xbl:handlers/xbl:handler
elements:xbl:handler
element looks very much like an xf:action
element. In particular, it supports the following attributes:event
: specifies which event(s) to listen to.ev:event
, Orbeon Forms supports as an extension a list of space-separated event names.phase
: whether to call the handler upon the capture
, target
, or bubble
phase.xbl:handler
element can contain one or more XForms actions.fr:bar
component:my-event
reaches the component, it activates the event handler registered with xbl:handler
. That handler has access to the custom context information using the event()
function.xf:model
elements declared within xbl:implementation
xf:model
elements declared within xbl:template
xbl:template