I reviewed eXcelon Stylus 1.0 about three years ago, with XSL still in beta. Even then, Stylus demonstrated that a lot of thought had gone into trying to discover the best way of working with this new medium. Today, eXcelon Stylus Studio has gone from being a promising concept to a superb, mature editor for XSLT. It has also extended its capability to other languages, including XML Schema Definition language (XSD) and Java servlets. The product's main focus is still XSLT, but the interface changes to match the document type being edited, a feature I found a little confusing at first but quite powerful after using the software for a while.
eXcelon Stylus Studio's well-designed interface changes with your current document type, whether it's XSLT, XSD, or Java servlets. |
Stylus works primarily as a text editor for XSLT. In addition to savvy tag completion, the editor also includes intelligent support for XHTML, XSLT, and XSD that shows the valid tags available within each element. The editor also recognizes the XSL Formatting Objects (XSL FO) namespace, which is beginning to make inroads in printed page formatting.
The Stylus editor works natively with the Xalan-Java XSLT processor, which is relatively fast and currently very standards compliant (and includes a number of useful extensions of its own). However, it can also work with Microsoft's MSXML3 and MSXML4 processors, and it lets you substitute your own XSL Processor for the resident processor.
Writing XSLT can be a hair-pulling operation at the best of times, and a critical part of any decent XSLT editor is the debugger. Stylus Studio includes a fair one, though I found its interface slightly kludgy compared to the competition. However, with Stylus Studio I could readily determine the errors, see the contents of currently defined variables and attributes, step over or through XSLT code one instruction at a time, and even watch in an output pane as a specific command altered the output. The only downside here (and an understandable one, given the lack of a common language for performing debugging in XML) is that you have to use the default Xalan or MSXML4 XSLT processors to utilize most of the debugging methods.
XSLT really has two fairly distinct usesconverting an XML document into some presentation language, such as HTML, XHTML, SVG, XSL FO or the like, and converting an instance of one XML document with a given schema to another document utilizing a different schema. While Stylus is quite good at handling the formatting involved in the former case, it wins points for handling the latter case as well.
At a Glance |
|
Stylus Studio 4.0 | |
---|---|
Rating | |
Company | eXcelon |
URL | www.exln.com/products/stylusstudio/ |
Price | $399 |
System | Windows NT, 2000, XP |
Pros | Sophisticated XML/XSLT editing, Schema generation, support for multiple XSLT processors, source control integration. |
Cons | Debugging only possible through Xalan or MSXML processors. |
With Stylus Studio, you can take an XML document and generate a first-pass XSD schema for it. This is rarely sufficient by itself for building a full schema, but it certainly provides enough to reduce most of the tedious work of typing in a schema by hand. If you have two such schemas and one document for each, you can also use Stylus to generate an XSLT transformation that will map one document to another. This can dramatically reduce mapping issues, though knowledge of XSLT still won't hurt, as most mappings aren't straight one-to-one relationships between elements.
In general, the documentation that ships with Stylus Studio is first rate, though the Stylus interface is sufficiently well designed to make it unnecessary. The examples are quite illustrative and comprehensive.
Finally, eXcelon developers understand that XML creation can end up generating a great number of documents, and managing them all can be difficult at best, especially in multiuser environments. eXcelon Stylus Studio includes support for version control systems, including SourceSafe, ClearCase, and the open source CVS.
eXcelon Stylus Studio is definitely a useful tool for the XML/XSLT developer. It gives you remarkably powerful features for working with XSLT parameters, named or matched templates, different output formats, and more. Stylus Studio is reasonably priced, and it works well both as a standalone application for developing XSLT and in conjunction with other workflow products, including eXcelon's XML management system.
Kurt is an author and developer specializing in XML. Reach him at [email protected].