XForms, three ways
DENG, Orbeon, PureEdge apply XForms to meet different app-dev goals
PresentationServer sees an application as a collection of pages. You craft these pages using XHTML, XSLT (XSL Transformation), and XForms. PresentationServer relies on XForms to handle all user input. As such, XForms plays a partial role in the overall scheme of PresentationServer.
PresentationServer is built along classic MVC architecture lines: The PresentationServer is the controller, which is guided by the Page Flow file. This file is a special XML file that manages the transitions from one page to another. Within it you specify the model information (the data source) as well as the file that contains the XHTML for the view.
The Page Flow file also governs the passing of data from one page to the next. In XForms parlance, data associated with any form on a particular page is referred to as instance data. Commands in the Page Flow file process the instance data going into and coming from each page, and it routes the data to its proper destination.
All this data movement is encapsulated in XML, of course, and as it moves from point to point, data often needs to be processed (transformed, merged, and so on). To do this processing, Orbeon uses the concept of an “XML pipeline,” a series of computational and XML-manipulating elements (called XML processors) hooked into a chain, with the output of one feeding the input of the next.
The pipeline format makes it easy to visualize how to assemble a collection of XML processors. With this setup, XForms instance data passing out of one page can be sent through an XML pipeline on its way to the next page, perhaps to be reformatted or combined with data read from a database, to name just two of many options.
PresentationServer comes with a host of standard processors. There are processors for transforming XML, for reading and writing XML to files, for querying SQL and XML databases, and more. If you need a custom processor, you can write your own in Java and incorporate it into PresentationServer. The ability to write a custom XML processor is not so much unique as powerful: You can create customized document transformation and filtering code and use it within the Orbeon framework.
PresentationServer is a stunning display of XML-variant vocabularies employed both declaratively (to specify schemas and page layouts, for example) and imperatively (to create business logic). Be warned, however, that you will have to learn a dizzying array of XML-based dialects to use these products: XQuery to query databases; XSLT to specify style sheets; XForms to handle user input; XSD (XML Schema Definition) to describe schemas; XPL to build pipelines; and on and on.
Maybe this is easier than coding the application in Java or .Net, but I occasionally wondered if I was just trading one species of complexity for another.
PureEdge 8x Suite 2.6
PureEdge's goal is to replace all those paper forms that you have to deal with -- even a 1040 tax form from the IRS -- with electronic equivalents. It doesn’t hit that mark dead-on, but after putting it through its paces, I’d say that it does come close.
PureEdge 8x is a suite of products for creating and manipulating XML-based documents known as PureXML e-forms. The suite consists of the Designer, Viewer, Server, and Web Server modules. PureEdge e-forms are the digital equivalent of paper forms: securable, writeable, and executable documents stored using the XFDL (Extensible Forms Definition Language) dialect of XML. (XFDL was accepted as a note by the W3C several years ago.)