Wow, it's been a month since our last post in this blog, and one of the reasons for this is that we have been very busy enhancing Orbeon Forms! Here is a quick list of the most notable additions:
XPath variables. XPath variables can be used within controls, models and actions, with the
exforms:variable) element. Variables are extremely useful, for example to avoid repeating long XPath expressions, or to give an XPath expression unambiguous access to data computed in enclosing
xforms:repeatelements. If you are familiar with XSLT variables, you will feel right at home. And once you start using them, you won't be able to go back!
XML Schema validation improvements. Inline XML Schema support is now implemented. This allows you to embed XML Schema directly within the
xforms:modelelement. This is particularly useful when you create a new schema which is just used within an XForms document, or to define a series of simple types used for validation. We have also added support for the
xsi:typeattribute in XForms instances. This is a convenient shortcut which allows you to avoid using binds just to specify types.
Attribute Value Templates (AVTs) on XHTML elements. In Orbeon Forms, AVTs were already supported on some XForms elements, but you can now use AVTs on XHTML elements as well. This allows you to use XForms to influence aspects of XHTML such as
colspanattributes, and all this without script.
Events enhancements. We now have full support for
ev:targetattributes on action handlers. We also added support for lists of event names, observers, and targets (an extension which we hope will be available in XML Events 2, currently in Working Draft at W3C). Finally, you can now pass context information to custom events with the extension
xxforms:contexchild element of actions such as
xforms:outputsupports displaying images when used with
xs:base64Binarydatatypes and an image mediatype, as per XForms 1.1. It has never been easier to upload and display images from XForms!
XPath extension functions. We added XPath functions to access headers and request parameters directly from XForms (
xxforms:get-request-header()), as well as extension functions to create elements and attributes by name (
Submissions. Submissions allow PUT and POST of binary content directly from XForms. This makes it very easy to upload a binary file using
xforms:uploadand then send it out to a service through
For more information, check the temporary list of changes for the upcoming Orbeon Forms 3.7! We already have over one hundred enhancements implemented since version 3.6.