XML Spy 3.5
I'm all in favor of organizations and people releasing tools that demonstrate some new feature or functionality. But when I have a deadline coming, I want a toolset that installs neatly, provides the functionality I need and does it all with a minimum of fuss. I guess it's a reflection of the speed with which XML has gone from interesting technology to serious commercial use but judged against these criteria many XML tools fall short. In contrast, XML Spy is an excellent XML editor with a plethora of other attractive features.
Editing and Validating XML Files
If you're happy developing software with a text editor you're probably not going to be interested in using XML Spy. You can certainly build XML files with tools that know nothing about XML. However, just as many developers find efficiencies in working with an IDE, a tool that actively supports working with XML can help increase productivity. I found XML Spy provides admirable support for the key tasks of editing and validating XML files.
Among its many features, XML Spy will allow you to view data in SQL's tabular format. While showing data in tabular format is easily accomplished, one critical issue is how to visually represent the data hierarchy. The XML Spy approach is clear, intuitive, easy to use and to some extent customisable. As soon as I loaded an XML file I was immediately able to navigate around the file, expanding enclosed elements, toggling attributes' display and adding new elements with the context sensitive editing functions; all without needing to use the online help.
XML Spy supports a number of different XML file views. There is the grid view shown in Figure 1, a straight text view, the database view, and a browser view. The straight text view has XML tags, attributes, and other XML features color-coded. The database view was great for viewing XML files that have repeating elements. For example, the database view is useful when an XML file is being used to carry relational database row sets. Finally, the browser view is useful for rendering XML files with an associated XSL style sheet.
While my impressions of XML Spy were almost universally favorable I was a bit disappointed that I didn't get a more helpful error message when I tried to browse a file that didn't have an associated XSL sheet. Not a major issue, however.
The tool will validate XML files against a DTD (or against several of the XML-schema flavors) and check for well-formedness. Just as a suggestion to the XML Spy folks, something that I would like to see in later versions is more assistance to the user on how to fix a problem that has been detected by XML Spy.
As well as the context sensitive editing functions the tool also supports a menu bar with pull-down selection of XML specific actions and other common editor functions such as find, replace and select.