XML tools

This is a small selection from the increasingly wide range of tools available to support the creation and use of XML files. See Free XML tools (http://www.garshol.priv.no/download/xmltools/) for just the free (and often best) tools. This page is biased towards free, open-source, cross-platform, software; this is usually only available with English interfaces and documentation, so exceptions are noted. Anything listed here should be at least fit for purpose, and hopefully among the best of breed.

XML Editors

The most basic XML Editor is a text editor, any text editor. Once familiar with the syntax you may well be happy to rely on this, and may have to resort to it to fix some obscure artifact of supposedly more sophisticated editors, but you will usually appreciate the guidance, templating, and syntax and vocabulary checking provided by a dedicated XML editor.

These produce valid documents:

In contrast to this which will only load valid documents, but can output invalid ones:

Some other text editors with support for XML include:

XML Parsers and associated Interfaces

These provide standard code interfaces for programmers to read, (optionally) verify, manipulate, and (usually) write XML files.

XML Utilities

Web-Browsers with XML support

XML browsers

XSLT Processors

These provide means of converting files between XML dialects and other formats. XSLT is not really designed to convert plain text to XML but it can be done in some cases. It is excellent for selecting from, sorting, adding to, and doing limited processing on one XML file and producing another (or plain text). Most current examples produce HTML but it has been shown to convert CaveScript textual survey data to a line survey in SVG. (Using either a single compiled file of raw readings for the connectivity (lines) and calculated positional data (stations) or using seperate files of input to a survey processor and positional output).

There are several other processors: a useful comparison is given here (http://www.tfi-technology.com/xml/xslbench.html) (the site also just happens to claim the fastest processor - Napa).
The XSLT Test Tool (http://www.netcrucible.com/xslt/xslt-tool.htm) (Windows only) gives links and allows you to do your own comparisons. It can be used as a basic editor for the XML and XSLT input files but the abilities to try out XPath expressions and compare output from successive transformations are especially useful. Also, its way of working with temporary files encourages experimentation as you don't need to remember to copy working versions before testing modifications: save the file if the changes work, not before in hope that they will!

SVG viewers

These allow images described by SVG to be viewed. They may also allow the image to be manipulated by a scripting language. The current implementations, and interpretations, of the spec differ so you can't rely on a file which runs on one running on the other.

Martin Laverty, 19th July 2001