XForms, three ways
DENG, Orbeon, PureEdge apply XForms to meet different app-dev goals
PureEdge uses XFDL as the host language for XForms in much the same way that a Web page displayed in a browser using an XForms plug-in (such as DENG) will use XHTML as the host language for XForms. Consequently, XForms is only one of several XML technologies employed by the PureEdge suite. However, it’s the means by which user data is collected, verified, and validated.
Because e-forms are securable, they support signatures via secure digital identities. Because they’re writeable, users can — via either the Viewer or the Web Server — “fill out” the form, updating its contents. E-forms can even include attachments (such as image data), which a user can “insert” into an e-form in an entirely intuitive fashion.
When developers create an e-form, they can define virtual folders within it. They can also specify that a button on the e-form will open a standard file dialog box, allowing the user to choose a file (or files) to be copied from the local file system into the e-form’s virtual folder.
An e-form is executable in the sense that it carries all its business logic within itself. Much of that business logic can be handled by XForms, which performs schema data-type validation, calculates intermediate values, and applies constraints to the data.
For custom calculations or procedures that exceed XForms capabilities, a PureEdge e-form can even include embedded Java classes. These classes reside in the e-form document itself, and their methods are made available as functions to the computation engine.
The PureEdge Server is made up of several products. The Deployment Server aids in the deployment of the Viewer, which allows clients to interact with e-forms in a disconnected state when the Server is unavailable.
The Server’s PureEdge API provides a document model for working with PureEdge e-forms and includes features that, for example, let you load a form template from a file or content management system, prepopulate the template with data to create an e-form, and serialize the e-form for transmission to the client.
Finally, the Web Server creates a “zero-footprint” platform that lets clients work with e-forms via a Web browser (though such an arrangement does lose some capabilities — signatures, for example).
What makes a PureEdge e-form particularly versatile is that it’s entirely self-contained: It’s a single, compound file. Because the system sees it as just a file, storage can be a complex content management system or a simple database. For the same reason, e-forms are easily delivered to clients. The process is as simple as an e-mail attachment.
The PureEdge Viewer assists in an e-form’s versatility. When the user fin-ishes filling out the form, clicking a button within the Viewer automatically attaches the e-form to a new, blank e-mail gener-ated by the default e-mail client. If the Viewer is run while the local system is on a network, the Viewer can connect with Web services on the PureEdge Server, pulling in “live” data based on user input.
PureEdge is an enterprise-level solution, and the pricing shows it. Although the cost varies on a case-by-case basis, an organization with four developers and an esti-mated customer base of 10,000 would pay somewhere in the neighborhood of $200,000. If you want a taste of PureEdge — and I recommend exploring the package fully before settling on it — you can download the free version of PureEdge Viewer and several sample e-forms from PureEdge’s Web site.