Review of Cladonia Exchanger XML
Editor ver 3.2
This article is a review of the Exchanger XML Editor version
3.2 from the
Cladonia
company. Being such a broad field, the XML Editor category is
necessarily far-reaching, and can cover both database management
systems and authoring tools. For this reason, this review narrows
the scope by looking at the suitability of Exchanger for use
by technical communicators and Help authors to create and edit
manuals, user guides and Help systems. Much of the focus of
this article is therefore on the software's suitability for
DocBook or DITA authoring, and its appropriateness for users
without coding skills.
Contents
Click a link below to jump to a particular section; click any "
CONTENTS
" image following a section heading to jump back here.
Introduction
Having spent some time working with Cladonia's
Exchanger XML Editor, I can attest to
the claim that this is a good, solid, well-featured and extensible XML editor.
However, the software is not suitable for authoring documents. It
is
designed for working with
XML data in many forms, but it is not designed for textual content. Let
me explain.
XML authoring tools fit into the categories of text editors,
WYSIWYG (What You See Is What You Get)
editors, and content management systems. Text editors require the user to
be very familiar with XML tagging concepts, and to be comfortable working
in a code-based environment. WYSIWYG editors
(although WYSIWYG is not really an accurate
term, because in XML, what you get depends on what you need to see!) are
closer to conventional authoring tools such as Framemaker, RoboHelp or Word.
Content management systems attempt to take the XML out of the picture, and
provide a form-filling, online authoring environment.
If you have the technical expertise and orientation to work with text
editors, then you're ahead of the pack. If you don't, then you may need to find a technical
support resource in your organisation, or abandon the idea of working with
text editors. Some WYSIWYG (or
WYSIOO - What You See Is One Option)
and content management systems may also require the backup of people with
the expertise to keep you on the right track. Most of the tools on the market
don't have associated training courses yet, so be prepared to invest some
time teaching yourself the tool. If this type of learning doesn't agree
with you, then finding a tool with training support should be your objective.
Working
with Exchanger
The Exchanger user interface is made up of the
Main pane,
Output pane, and the
Controller pane.
As the name implies, the Main pane displays the document content, in
an Editor view, a Schema view, an Outliner view, a Grid (tree) view. For
DocBook authoring, the Schema view and the Outliner view are of little use.
The Grid view may be useful for a birds-eye view of the document structure,
but the hard work is all done in the Editor view. (There is provision for
a Viewer view, but this does not seem to be implemented yet.) Exchanger
is a code editor, so you only get to work with a tagged ASCII view of the
document.
The Output pane dynamically displays system messages, with tabs to switch
between error messages, XPath information (more on that later), a list of
bookmarks (more on this great little feature later too), and search results.
The Controller pane has three tabs, to display the
Projects tree, the
Navigator,
or the Helper. The Projects view
shows a categorised view of XML editing projects, allowing you to more easily
locate working files. By default, the system installs with a good range
of sample files (in various schemas) in the Projects tree. The
Navigator displays a tree view of the
nodes in the current document, providing a very easy to use means of navigating
to a point in a long document. Double-clicking on a node takes you to that
position in the document in the Main pane. If you want to get fancy, you
can also use an XPath query to locate a particular node in the document.
This is not particularly useful in DocBook documents, but is a fantastic
feature for XML data documents. The Helpers tab is extremely helpful, in
that it displays a list of valid child elements for the currently selected
element. For example, in the DocBook schema, an <abstract> element can contain
<formalpara>, <para>, <simplepara> and <title> elements. So if the cursor
is in within a <abstract> tag in the Main pane, the Helper shows those four
valid elements, as well as valid attributes for the <abstract> tag. Double-clicking
on an element in the Helper view will add that tag to the document in the
Main pane.
One of the most powerful features of Exchanger is the XPath facility.
XPath is a syntax for nominating a portion of an XML document by specifying
its position through a hierarchical route to the location. For example,
/article/section/para nominates all <para>
elements within <section> tags within the <article> element. A more complicated
example might be /article/section[2]/para[3]/text(),
which identifies the text of the third <para> in the second <section> of
the <article>. An XPath statement can be entered into
XPath field in Exchanger to quickly locate
that part of the document. The system not only remembers early statements
for quick recall through a dropdown, but also displays, in the Output pane,
a hyperlinked list of nodes that met the XPath search criteria.
Another simple but effectively implemented feature is the bookmarks.
In the Main pane, there are actually four narrow columns to the left of
the content. These columns are used to display the line number, to collapse
and expand an element, to access shortcut buttons, and to add and remove
bookmarks. Bookmarks are simply recallable markers placed on a line of a
document. Once a bookmark is added, that position in that document can be
returned to at a later date by clicking on the bookmark's name in the Output
pane.
With only a bit of technical aptitude, you can start customising the
user interface. Shortcut buttons for common element structures, such as
tables and numbered lists, make it a bit easier to work with the more complex
coding. (However, not being able to see the table in, well, a tabular form,
makes it very difficult to focus on the table's content.) It is very easy
to add new shortcut buttons to custom code fragments.
Multiple documents can be open at one time in Exchanger, with a tabbed
divider control being used to switch between them. There is some drag and
drop support, which can make editing tasks easier. The undo/redo feature
works consistently and logically. There is an impressive array of handy
tools for working with elements, including tag highlighting, toggling case,
code formatting, and parent element selection. Unfortunately, there's no
spell-checker.
Exchanger has, like all good XML editors, the ability to confirm that
the document is well-formed (complies with the general XML tagging rules),
and valid (complies with the particular schema). The validation error logging
is quite good. An error message is displayed that explains the problem,
and the corresponding code line number highlighted. Provided you learn the
syntax syntax used in the error message, it is relatively easy to decipher
the problem and devise a method to correct it.
A DocBook
or DITA Authoring Tool?
Exchanger ships with a DocBook type. (The
concept of Type in Exchanger XML Editor is a
specification of a particular XML application by nominating rules for for
validation, tag completion and Schema Viewer/Outliner functionality.) This
means that right after installing, you can go to the File menu, choose New,
and select a DocBook type. It is a relatively easy exercise to add a DITA
type to Exchanger. However, being technically capable of quickly creating
an empty DocBook or DITA file is one thing; providing an efficient and workable
authoring environment is another. Exchanger XML Editor does not provide
such an environment.
A good authoring environment allows the user to focus on the text rather
than the code. With Exchanger, you just can't escape from the code. I started
writing this article in Exchanger, but had to change to an alternative tool,
because it became too difficult to compose words. Instead, I found myself
struggling to cope with the coding, and this was not just because of a lack
of familiarity with the tool. This problem is simply a limitation of working
with text or code editors. Writing tasks can only be practically accomplished
using a WYSIOO editors such as XXE and Serna.
Transformations
DocBook and DITA are storage formats, and not presentation formats. So
to deliver a document to an end-user, the DocBook or DITA code has to be
transformed into a delivery format such as PDF, RTF, or HTML.
Exchanger has good tranformation features, but they are not terribly
easy for a non-coder to work with. Before you start transforming, you have
to have XSL-T and/or XSL-FO files at the ready (although you can download
a good collection of DITA and DocBook XSL files from their respective Web
sites), and be familiar with the file names. To transform, you select the
XML document to transform, and the XSL file to transform it with, and then
the processor to transform it with. If you're familiar with processors such
as Saxon and Xalan, this is all logical, straightforward and controllable.
But for the novice, this procedure can be quite daunting.
A typical transformation to XHTML displays the output (in code format,
of course) as a separate document in Exchanger's main pane. You can preview
the file in a browser with a shortcut key.
Summary
There are a number of features within Exchanger that I haven't even touched
on, but which are very useful for non-writing XML tasks. Exchanger is a
great XML code editor, with great features. But the features it has are
of little benefit to authoring tasks, and the features it lacks (in particular
the lack of a WYSIOO editing mode) are of great importance to those authoring
tasks. I tried creating and editing some XML data files, such as a schema
for a library card system, and found that Exchanger was well-suited to the
task, and very easy to use. However, for DocBook documents, I found I could
not use the tool in a practical way. The software costs USD130 for a single
licence, and a time-limited evaluation version is available from the Exchanger
Web Site. As a Java-based program, Exchanger runs on Windows, Mac, and
all types of Unix. If you are looking for an introductory tool for DocBook or DITA
authoring, then this tool is definitely not for you. But if you're in the
market for a solid, hard-working general purpose XML data editor, then Exchanger
XML Editor is a good choice.
|