|
If you do a lot of work with XSLT as I do, then you've
probably wondered why nobody has come up with a decent XSLT debugger.
MarrowSoft (Martin Rowlinson, whose work I've quoted in another article
here) have announced the release version of Xselerator . While this product
does not have the "feature load" of say, XML Spy, it has some
features that XML Spy and other XML / XSL editors do not have - which
I believe make it an excellent "first choice" for the serious
developer. Its strong suit, of course, is that it has the first comprehensive
XSL debugger I've ever seen that actually works! As anyone
who has worked with XML Spy knows, it is a big program that loads slowly
with a lot of "baggage". Xselerator is exactly the opposite.
It loads fast, is easy to use, and works fast.
Here is a quick recap of new features
in the release version:
- Increased
performance in the debugger
-- From Version 2.0.40 there has been a 92% increase in the debugger
performance.
-
Multiple
Stylesheet support
-- Xselerator now allows multiple XSL stylesheets to be opened simultaneously.
The input XSL window now incorporates a files tab display at the bottom
of the window to allow switching between the opened XSL stylesheets.
-
Unicode
file support
-- Xselerator now auto-senses correct Unicode encoding on
loading of files, preserves the encoding
during editing, allows saving as various UTF encodings and preserves
encoding when switching to view mode (eliminating view mode error
report
of switch from current encoding not supported).
The final phase of the Unicode support (to be released in a point
version
upgrade very shortly after beta close) will also support display of
full charsets (limited only by font selected) whilst in editor mode.
Note that charset characters will be displayed properly in edit mode
in
this version when highlighting is turned off.
-
XSL
Transformation Timings
-- When using the default parser (MSXML 3.0) Xselerator shows the
parse and
transformation timings in the status bar of the output window.
-
Examples/Techniques/Libraries
added
-- The Examples/Techniques/Libraries has been
added to the installation.
-
Alternate
Transformation output
-- In Environment options a new option is added
to the Transformation tab to
allow all warning/error output from alternate transformation engines
to be
captured and displayed (even if the transformation was apparently
successful).
-
Completed
Help file
-- So many people have asked for it and it has now arrived.
-
XSLT
Breakpoints
-- Setting breakpoints in the XSLT code on non-breakable positions
now shows
the breakpoint as a bookmark - indicating that the breakpoint is not
at a point which can be broken at.
Key Features:
Here's a short list of the key features of
the release version of Xselerator, organized by area:
Editor
Clear
and easy to use IDE
XSL/XSLT
element and attribute intuitive (like intellisense or code insight)
drop-downs
Automatic
tag completion
XSL/XSLT
tag completion follows model and, optionally, fills element with mandatory
attributes
HTML
element and attribute intuitive drop-downs
Full
XSL, XSLT, XML and HTML color syntax highlighting (fully customizable)
All
the usual editor capabilities (cut, copy, paste, find, replace) plus
special 'Copy as RTF' and 'Copy as HTML' features allowing syntax
highlighting to be preserved when copying and pasting to word-processors,
HTML editors, training presentations and newsgroups etc.
Numerous
additional editor settings allowing editor behaviour to be fully customizable.
XSLT
debugger
Full
stepping capability
Breakpoints
on both XSLT and input XML
Conditional
breakpoints
View
template call stack
Watch
values (including full XPath expression watches)
Optional
stepping into built-in rules
Uses
MSXML3 transformations (so that debugging session behavior matches
a real, production environment transformation engine).
Transformation
One
click transformation test
Full
transformation testing (including XSL parameter passing, start mode
and output test path)
Use
of alternative command line transformation engines (e.g. Instant Saxon,
XT, Xalan, etc.).
Wizards
XSLT
for building tables
Selects/list
boxes
XSLT
grouping/distinct expressions.
Tools
XPath
query analyzer (test XPath queries to see the resulting node sets
- click on resulting list item to view position to node in source/tree
view)
Project
Files Manager, which keeps all your related XML and XSL files together
Source
edit, tree and browser view (requires IE5.x) modes
Files
opened history (re-open previous files from menu - re-opened XSLT
files restore previous parameters/start mode)
Print
and print preview (with selectable highlighting options)
XML,
HTML Tidying (using HTMLTidy/TidyCOM).
There are a number of additional planned features.
IDE
Layout
The Xselerator IDE layout can be configured
in different ways to suit your taste. For example, when Xselerator is
first installed and started up both the Input XML and Input XSL window
are docked in the main IDE window. However, some people may prefer to
have these windows floating so that they can minimized, moved around etc.
When I am working with the XSL debugger, I like to have the debugger window
docked in between the XML (left side) window and the XSL (right side)
window. This allows me to step into breakpoints that I have set, and see
the locations in both windows where I am at with my code, as well as to
use the Current, Call Stack, Globals, Environment, Breakpoints, Watch,
or Options debugger windows conveniently.
Transformations:
Xselerator uses MSXML 3.0 as its default
transformation engine. However, in the Environment options, it is possible
to specify a complete command - line set for virtually any alternative
engine, including MSXML 4.0. You can also specify the MS XMLSDK help file
and CTRL -F1 will bring this up with context - sensitive SDK help. The
Ctrl-F1 key may also be used in the Query Builder dialog and the Interactive
XSL dialog.
Tidy:
Xselerator
has another Environment option to use "HTML tidy", a free add-on
that nicely cleans up your code according to rules you set up.
Debugger:
A
quick look at the full - featured debugger toolbar items (definitely the
program's strong suit!):
There is extensive help on all the features of the debugger
to get you up to speed fast.
Here are some screen shots of the debugger in action:
Easy - to - Use Debugger Interface with all the familiar
features you would expect:
Auto-detection of Parameters from your XSL:
Ability to modify watched items including complex
XPath/XSLT expressions!
The XSL Elements dialog box enables a user
to interactively build an XSL or XSLT statement. To open the XSL Elements
dialog box either select XSL Elements from the XSL menu or click upon
the XSL Elements button on the Input XSL window toolbar. This is a great
feature, expecially for developers just "finding their way"
with XSLT.
The XSL Table Wizard, along with the
XSL Select Wizard and XSLT Distinct Wizard make building complex XSLT
transform elements easy.
Overall, I would rate this product, at $125 (about 40%
less than the price of XML Spy) as an excellent buy. I only wish I'd found
it months ago -- the debugger alone could have saved me literally scores
of hours of painstaking XSL debugging work! Also, the ability
to actually see the "flow" of how your XML / XSL documents are
being processed by simply using the debugger to single-step through your
transformations is an outstanding learning tool for anyone who
wants to get a real "inside look" at how XSLT works.
|
Download a free 30 day Trial!
|
 |
Peter Bromberg is an independent consultant specializing in distributed .NET solutionsa Senior Programmer
/Analyst at in Orlando and a co-developer of the EggheadCafe.com
developer website. He can be reached at pbromberg@yahoo.com
|