There is a new release of the Spring XML Databases Framework which on top of some bug fixes and improvements to XML Database access includes 2 new features which work independently of the XML Database access but provide complementry features.

There is also now extensive reference documentation (but not enough examples) at http://springxmldb.sourceforge.net/

This release can be found at http://sourceforge.net/projects/springxmldb/

SPXForms

The SPXForms implementation allows for binding of form elements to XML documents in a similar way to Spring's Form Controllers work. An SPXForm controller can be used to load an XML document, edit it on a form and have the submission rebound to the XML document before validating and processing.

SPXForms is an XForms-like (http://www.w3.org/MarkUp/Forms/) implementation. It is very difficult to build a fully compliant XForms engine using serverside technology as the original specification was designed to be implemented as a clientside application. Currently serverside XForms implementations of some form exist at Chiba ( http://chiba.sourceforge.net/ )and OXF ( http://www.orbeon.com/ ). SPXForms currently only supports a small subset of XForms functionality.

SPXForms consists of three main elements.

- A serverside binding framework. Similar to the Spring binding framework, this binds request parameters to the command object XML document and also runs xforms actions submited to the serverside.

- A base AbstractSpXFormsController which should be extended to create Form Controllers for processing XML documents.

- A JSP tag library for binding form elements to the XML document and for XForms tags such as triggers, actions, groups, repeats and submits.

Schematron Validator

The SPX framework includes validating methods for validating data in XML documents. This uses the Spring Validator interface which can be used to validate XML models independently but integrates with the SPXForms MVC layer for validating XML form input.

The class uk.co.lakesidetech.spxforms.validation.schematron.SchematronValidator is an implementation of the Spring Validator interface. The schematron validator can be used by specifiying the resource property schematronResource to point to the XML definition file of the schematron. Within the schematron file are a serious of patterns, rules with asserts and reports.

Simply the validator will check all the rules given an xpath context in the document. Within the rules are either asserts or reports which have xpath tests. If the test evaluates to false on a assert an error is added with the assert message (within the assert element), if a test evaluates to true on a report then an error is added with the report message (within the report element). The test can also just attempt to evaluate a value, if the value is not found it evaluates to false. The message can either be the key to text in a messages file or just the actual default text message to use. The field name used for the error object is the context of the rule.

XML database access changes
- Fixed some minor bugs
- added support for file dates in eXist and Xindice
- added support for getting metadata in Xindice

Thanks for your time.

Stuart

Reply via email to