XML News from Wednesday, May 9, 2007

SyncroSoft has also released <Oxygen/> 8.2, $298 payware XML editor written in Java. Oxygen supports XML, XSL, DTDs, XQuery, SVG, Relax NG, Schematron, and the W3C XML Schema Language. According to the announcement,

The main addition is support for *working with modules*, that is with XSLT stylesheets that are supposed to be included or imported in other XSLT stylesheets.

Imagine a stylesheet that defines a global variable and that includes another one that uses that global variable. What happens when you work on the included file? You will get errors if you try to validate it because the variable is not defined in the included file - thus the module is invalid by itself but valid if included from the main file that defines the global variable. oXygen 8.2 solve this problem allowing you to configure a validation scenario and instead of validating the module file you can instruct oXygen to validate the main file, thus you get the current module file validated in the context it is used from.

A validation scenario allows you to specify a set of files to validate and for each file what processor to use and whether or not to perform continuous validation. Thus they do not only solve the problem of working with modules, they also enable support for performing *multiple validations in a single action*. One usecase here is for instance if you want to make sure the your file is validated against different processors - instead of validating it against each processor in part you just configure a validation scenario that validates it against all the processors. Another usecase is for instance if you want to make sure a module is valid in different contexts - imagine a module that is reused by different applications - then when you edit it you can specify all the files that include it to be validated, thus you know that your code will work in all situations you are using it.

Another XSLT related addition is the updated *support for the latest Saxon 8 XSLT 2.0 processor* from Saxonica. oXygen 8.2 supports Saxon 8.9.0.3, both the Basic version and the Schema Aware version (for the later you need a separate license from Saxonica) for validation, transformations, debugging and profiling.