Investigate current XML tools

Find tools that edit, validate, format, and compare XML, plus support XQuery, XPath, sitemaps, schemas, and RSS feeds

XML is used in many areas ranging from e-commerce and news feeds to search engines. Some of the technologies associated with XML include XSLT, XPath, and XPointer. Increased use of XML emphasizes the need to be aware of its tools and the functionalities that they provide. XML processing includes formatting, parsing, editing, validating, and converting to other forms. Most of the XML tools on the market provide a multitude of functionalities. In this article, explore the various categories of XML tools with suitable examples from different vendors.

Share:

Gowri Shankar Palani, Software Engineer, IBM

Author photoGowri Shankar is part of the WebSphere CastIron team at the IBM India Software Lab in Bangalore. He is an Oracle Certified Professional Java Programmer and has worked with GUI development in Adobe Flex and Dojo. He is currently focused on XML and web services. His interests include writing technical articles and exploring new technologies.



07 June 2011

Also available in Chinese Russian Japanese Vietnamese Portuguese

Frequently used acronyms

  • API: Application programming interface
  • DITA: Darwin Information Typing Architecture
  • DTD: Document Type Definition
  • HTML: Hypertext Markup Language
  • IDE: Integrated Development Environment
  • URL: Uniform Resource Locator
  • W3C: World Wide Web Consortium
  • WSDL: Web Services Description Language
  • XHTML: Extensible Hypertext Markup Language
  • XML: Extensible Markup Language
  • XSLT: Extensible Stylesheet Language Transformations

When you select tools to work with XML-related technologies, first determine your requirements. For example, if you typically do multiple tasks with XML (edit, validate, and more), consider an XML IDE with the appropriate functions. For a specific task (compare XML files or build a sitemap), consider a more focused tool for that single task.

In this article, investigate these categories to find XML tools that fit your needs:

  • XML sitemap creators and validators
  • RSS feed generators
  • XML schema generators
  • XML validators
  • XML formatters
  • XML editors
  • XML tools
  • XML open source tools
  • XML IDEs
  • XML Compare tools
  • XQuery tools
  • XPath tools

XML sitemap creator

An XML sitemap lists all the URLs for a website. A sitemap informs a search engine about website URLs that are available for crawling so the search engine can include the URLs in its database. Most sitemap creators are web-based, and they request the URL of the website along with a few parameters such as change frequency and last modification date. See Resources for links to all listed tools.

Several sitemap generation tools are now available:

  • Google SiteMap Generator automatically generates a sitemap based on updates and traffic to your website when you deploy it on a web server.
  • Gsite Crawler creates sitemaps. It is a Windows-based desktop tool.
  • Apart from the downloadable tools, many online applications can generate sitemaps; two examples are:
    • Sitemaps Builder creates sitemaps for Google, HTML, and text URLs.
    • XML Sitemaps builds sitemaps in XML, ROR, Text, or HTML formats.

XML sitemap validators

Sitemap validators are used to validate the sitemap generated for a website. A validator checks that the sitemap is valid for search engines to consume. See Resources for links to all listed tools.

Check this list of sitemap validators:

  • Automapit sitemap validator validates your sitemap to ensure acceptance by search engines.
  • Sitemap XML validator checks your site map for valid XML code so you can correct errors before you submit it to search engines.
  • XML sitemaps validator identifies any sitemap problems for you to resolve before you inform search engines.
  • Online Merchant sitemap checker checks the XML headers in your sitemap.xml file for accuracy before you submit it.

RSS feed generators

RSS newsfeeds are a great way to keep your site visitors updated with the latest content added to your site. RSS feed generators are popular among people who wish to glance at the headlines of news sites (for example, CNN) or to know about the latest updates in the sports world. See Resources for links to all listed tools.

Website developers can generate RSS feeds with these tools:

  • IceRocket RSS builder is a simple interface that lets you add topics, links, and content to create RSS feeds for your website.
  • Feedity creates RSS feeds for web pages, new, or products.
  • RSSPect sets up RSS feeds for websites, documents, or podcasts.

XML schema generators

You can generate XML schemas from an XML instance. See Resources for links to all listed tools.

Available tools include:

  • Trang from ThaiOpenSource, a command-line based tool, generates XML Schema Definition (XSD) from XML.
  • XMLBeans is a tool from Apache that provides several functions, one of which is schema generation using inst2xsd (Instance to Schema Tool).
  • XML for ASP BuildXMLSchema is an online XML schema generator.

XML validators

You can validate XML instances against their schemas. See Resources for links to all listed tools.

Use one of these online tools:

  • XMLValidation.com validates your XML document against an XML schema or DTD declared in the document or performs a syntax check if no schema or DTD is declared.
  • DecisionSoft.com Schema Validator validates a single schema plus an instance document and lists errors.
  • W3C XML validator is a service that validates schema documents with the namespace URI http://www.w3.org/2001/XMLSchema.

XML formatters

XML formatting is an operation frequently performed on XML to make it readable. Most of the desktop XML tools provide this feature. To perform a quick format of XML content without installing any XML tools, try one of these online services. See Resources for links to all listed tools.

  • XMLIndent.com
  • X01's online xml formatter

XML editors

XML editors can help you clearly interpret your XML document with color highlights for elements, attributes, or plain text and indented content. Another advantage of using XML editors is that they have context-oriented options, such as the tree view which enables a user to traverse the various nodes of an XML document easily. They also validate and present you with warnings and errors when you don't close XML tags properly. See Resources for links to all listed tools.

  • Xerlin XML Editor, a Java™-based tool, creates and validates XML content. The editor is an open source tool with XSLT support, and it can also validate XML against DTDs and schemas.
  • Jaxe Editor, another Java-based open source XML editor, supports exporting the content to PDF, HTML-based previewing with an XSLT, and multiple platforms.
  • XMLFox, a freeware product, is an XML editor with a validator tool for creating well-formed XML documents and schemas. This editor also supports other XML operations.

XML tools

XSLT transformations are useful in converting one form of XML to another using stylesheets. A wide range of tools can assist you in this process; Tiger XSLT Mapper and Kernow are just two examples. See Resources for links to all listed tools.

Tiger XSLT Mapper is a tool that novice users can easily use to map between XML structures. It automatically creates the mappings which you can edited using the drag-and-drop GUI.

Kernow is a Java API that runs transformations programmatically. Kernow is a good choice when a developer must repeatedly run XSLT transformations using a visual interface.

A few web-based XSLT tools are also useful:

  • XSLT Online Transformation
  • W3C Online XSLT 2.0 Service

Developers who prefer browser-based plugins can check this list of useful XML plugins:

Mozilla Firefox

  • XSL Results Add-on shows XSL transformation results (XSLT 1.0 or XSLT 2.0 through Saxon-B) of a document.
  • XML Developer Toolbar adds use of standard XML tools from a browser toolbar.

Google Chrome

  • XML Tree displays XML data in a user-friendly manner.
  • XML Viewer is an XML viewer for Google Chrome.

XML open source tools

For users who cannot afford the cost of enterprise XML tools, open source tools are of great help. Active community contributions have made it possible to create very good XML open source tools. See Resources for links to all listed tools.

The iXedit XML IDE includes several XML processing features:

  • DTD validation
  • DTD-based auto completion
  • User templates
  • XSLT processing
  • Part-by-part editing

The Rinzo XML Editor is an Eclipse XML editor. Some of its features are:

  • Namespace support
  • Auto-completion of tags and attributes
  • XML validation

This tool also provides features for working with Java elements:

  • Auto-completing class names
  • Opening a class definition

XPontus XML Editor is an open source Java-based tool that includes these features:

  • Code formatting and completions
  • XSL transformation
  • DTD and schema generation
  • XML validation

XML IDEs

XML IDE applications perform almost all the operations related to XML. You can choose from several IDEs with a variety of supported features. See Resources for links to all listed tools.

XMLSpy is an XML IDE for authoring, editing, and debugging XML, XML schema, XSL/XSLT, XQuery, WSDL, and SOAP. Additional features include:

  • A code generator
  • A file converter
  • A debugger
  • A profiler
  • Support for integrating into Visual Studio.NET and Eclipse IDE
  • A database import wizard that enables you to import data from Microsoft® Access®

XML Marker is an XML editor that uses a synchronized table-tree and text display to show you a hierarchal and a tabular view of your XML data. This tools can load very large documents (that are hundreds of megabytes and even gigabytes in size). Other features include:

  • A syntax-highlighting editor
  • Table sorting
  • Automatic indentation
  • As-you-type syntax checking

Liquid XML Studio, a complete package of several XML tools bundled together, provides these tools:

  • XML schema editor
  • XML data-binding code generator
  • WSDL editor
  • XML editor
  • Microsoft Visual Studio Integration
  • Web service test client
  • XPath expression builder
  • HTML documentation generation
  • XSLT editor and debugger
  • Large file editor
  • XML Diff - Compare XML files

Figure 1 shows a preview of the Liquid XML editor with a set of panels to manipulate the XML content. (View a larger version of Figure 1.)

Figure 1. A preview of Liquid XML Studio
Screen capture of a preview of Liquid XML Studio

<oXygen/> XML Editor is a full-featured XML IDE with support for an array of XML-related operations. Expert XML users can harness the benefits from the functionalities offered by this tool. A few of its features are:

  • Intelligent XML editing
  • XML validation
  • XSL/XSLT support
  • XQuery support
  • XPath support
  • Single-source XML publishing
  • Support for Microsoft Office documents

Figure 2 shows a preview of the <oXygen/> XML Editor showing the source and a tree view of an XML document. (View a larger version of Figure 2.)

Figure 2. A preview of the <oXygen/> editor
Screen capture of a preview of the <oXygen/> editor

Stylus Studio offers these features:

  • XSLT and XQuery profilers
  • Support for EDI
  • Enterprise web service tools
  • XML pipeline
  • XML schema-awareness in XSLT 2.0 and XQuery 1.0
  • XML publishing tools

XML Notepad from Microsoft helps developers in creating XML documents. It is a free tool and includes the XMLDiff tool that you can use to compare two XML files. The interface is simple and user friendly. This tool works on top of the .Net platform. The features of this tool are:

  • Tree view synchronized with node text view
  • Namespace support provided while copying and moving text
  • Incremental search in both tree and text views
  • Drag-and-drop support while making changes
  • Unlimited undo and redo for edit operations
  • Searching support with support for regex and XPath
  • Loads documents up to 3MB quickly
  • Instant XML schema validation
  • Intellisense based on expected elements and attributes and enumerated simple type values
  • Support for custom editors for date, dateTime, time datatypes, and other types such as color
  • Built-in HTML viewer
  • Support for XInclude

Figure 3 shows a preview of XML Notepad with a tree view of an XML file and its error panel. (View a larger version of Figure 3.)

Figure 3. A preview of XML Notepad
Screen capture of a preview of XML Notepad

XML Copy Editor is a quick, validating XML editor. The tab feature allows you to edit multiple files at the same time. Other features include:

  • DTD/XML Schema/RELAX NG validation
  • XSLT and XPath support
  • Pretty-printing and syntax highlighting
  • Folding and tag completion
  • Lossless import and export of Microsoft Word documents
  • Support for XHTML, XSL, DocBook, and Text Encoding Initiative (TEI)

firstobject XML Editor is a free XML editor. The XML tree displayed from the XML document content can be edited directly facilitating easy traversal. Large files can be loaded into the tool for manipulation easily. Its features are:

  • Fast, portable, and built on CMarkup
  • No requirement for Java technology or MSXML
  • Word wrap
  • MSXML-based DTD validation
  • Go To Line
  • Show XPath
  • Tabbed file editing
  • C++ code generation

XRay XML Editor is a free XML IDE. This tool validates your XML document as and when you type. It has built-in support for W3C standards. It also has an HTML viewer to preview web pages built with XML. You can create three types of schemas that include XSD, DTD, and External Data Representation (XDR). Other features of this tool include:

  • Real-time XSLT processing
  • Real-time schema validation
  • Integrated online tutorials about XML

XMLSpear is a free Java-based XML editor available for many platforms. It has advanced features such as interactive schema resolving, extensive XPath panel, and more. XML is displayed in three different formats, including tree table, element view, and source view. XMLSpear is available as Java web start software or as a stand-alone application. Additional features are:

  • Support for XPath and XSLT
  • Ability to generate complete XML documents from schema
  • Multiple format of encoding support
  • Integrated text and HTML plugin
  •  Real-time validation against schema or DTD as you type
  • Schema generation from XML instances
  • Tree editor for manipulating nodes

XMLmind, a multi-featured XML editor based on Java technology, is available for multiple platforms. It is better suited for experienced professionals than novice users. It presents an innovative way to edit XML documents and requires Java platform support. The features in XMLmind are:

  • Conversion of XML documents into HTML help files, PDF, Eclipse help files, and many other formats
  • Inclusion of a DITA converter
  • Support for DocBook, JavaDoc, and XHTML and built-in templates for them
  • Support for MathML document creation
  • Editable commands
  • Integrated XML parser and XSLT engine

ElfData XML Editor is a tool for Mac OS users. This XML IDE offers Unicode support and can check your XML document for well-formedness with and without a DTD. Tree mode and source mode are the two view modes available. Drag-and-drop support enables you to drag and drop XML elements. Searching is facilitated by two modes: source-find and tree-find mode. Other features in this tool include:

  • XML 1.0 compliant
  • Mac-like user interface
  • Detailed error messages with assistance in debugging it
  • "Send to Browser" option that enables you to preview your document in a browser
  • Option to save pages as XHTML with DTD

XMetaL looks like a word processor. Like most of the XML IDEs, it can validate XML documents and supports schemas, DTDs, and XInclude. Other features are:

  • Spell checking and auto correction
  • Support for web help output
  • Ability to convert XML documents into other formats like PDF, HTML, and many more
  • XMetal connector integrates with content management systems (CMS) and source control systems such as SVN
  • Unicode support creates XML documents in many languages
  • DITA support with features such as a visualization, topic-oriented user interface for authoring of DITA content

XML Compare tools

Developers, editors, and writers often need to compare two versions of an XML document to track the changes. Though many text comparing tools are available, an exclusive XML comparing tool is efficient for many operations as it is XML aware. See Resources for links to all listed tools.

The <oXygen/> XML Diff & Merge utility can compare files, directories, and ZIP-based archives. When you load the source and target documents into this tool, the differences are shown by coloring, and you can edit and move changes in both source and target files. It has many built-in comparing algorithms and has the ability to automatically choose algorithms based on the document content and size. It can do both word-level and character-level comparison. When you compare directories and archives you can choose to base it on the following parameters:

  • Timestamp
  • Content
  • Binary comparison

Liquid XMLDiff has many XML-specific options such as removing whitespace, comments, and processor directives. This tool is advanced enough to predict whether attributes and elements are new, deleted, or have moved. This tool is available in the designer and developer edition of Liquid XML Studio.

ExamXML is a powerful tool to visually compare and merge the differences between XML documents. The input XML for comparison can be either from a file or from a database. ExamXML can also compare and save part of an XML document; you also can import to and export from Microsoft Excel® documents. ExamXML is available for several versions of Microsoft Windows®. The other features of this tool include:

  • Validation of XML against DTD/XML schema
  • Normalization of dates and numbers
  • Drag-and-drop support
  • XML documents displayed in tree view

DeltaXML can enable you to search, compare, merge, and synchronize changes to XML documents. It has Java API support, which facilitates the programmatic comparison of XML documents. It also has the ability to handle large files. The tool can output a delta file with the result of comparison. You can display this delta file directly or use XSL; you can process the delta file with other XML tools. The DeltaXML Sync tool can compare three XML documents and render the differences. In addition to the XML comparison function, it has some format-specific tools:

  • DeltaXML DITA Compare
  • DeltaXML DocBook Compare
  • DeltaXML ODT Compare
  • DeltaXML ODT Merge

XQuery tools

For advanced XML users, XQuery can be very helpful in querying and extracting content out of large XML documents. XQuery specific tools help you harness the power of XQuery and enable you to use high level features like mapping, debugging, and profiling. Some of the useful features provided by them include validation, auto complete, and previewing. See Resources for links to all listed tools.

XMLSpy XQuery Editor provides syntax-highlighting and context-sensitive menus for XQuery. Its auto-code complete features enable you to create XQuery documents easily. It also has support for developing XQuery against XML-enabled databases. Other features include:

  • Error isolation
  • Simplified debugging
  • Enhanced code performance
  • Advanced text view

Stylus Studio XQuery Editor has an integrated XQuery Editor with a wide range of features that include intelligent code sensing, code completion, element constructors, functions, path expressions, and more. It is based on open XQuery architecture with support for the Saxon XQuery processor. The XQuery source tree window supports the drag-and-drop feature along with useful symbols and icons about the source file. Additional features are:

  • Creation of XQuery scenarios
  • XQuery preview
  • Mapping of XQuery results preview to XQuery expressions

XQuery development tools for Eclipse assist creating, debugging, and executing XQuery in Eclipse. The tools also provide:

  • Support for XQuery updates and scripting extensions
  • Code completion and code templates
  • Semantic checking and quick fixes
  • Validation performed as you type

XPath tools

XPath specific tools are useful in visualizing your XPath evaluation results and can help you construct and validate XPath expressions. A couple of useful options provided by these tools include debugging XPath, auto completion, and searching databases using XPath. See Resources for links to all listed tools.

SketchPath is an XPath editor and XML analysis and testing tool. It provides an IDE for developing and testing XPath expressions against XML documents. It uses the .NET Framework for XPath 1.0 evaluation and Saxon.NET for XPath 2.0. The other features include:

  • Use of XPath variables within expressions
  • XPath function assistant
  • Built-in step-tracer and debugger
  • Syntax coloring for expressions

XPath Visualizer is a free Microsoft Windows tool that runs your XPath queries on XML documents and visualizes the results. The input file can be from a file system or a URL, or you can paste into the tool as text. In this tool, you type the whole XPath query. The other features of this tool are:

  • Automatic detection and display of the XML namespaces
  • XPath query validation
  • Automatic addition of the default XML namespace into query expressions and the option to remove XML namespace from any document

Web-based XPath tools are also available, including:

  • XPath Query Expression Tool (XMLME.com)
  • Simple online XPath tester
  • XSLT Tryit Editor (W3Schools.com)

Conclusion

Many available tools support XML-related technologies. As an XML user, you must analyze the requirements and choose the appropriate tool. For example, if you require many sophisticated operations, then you might select an XML IDE to have more functionalities such as editing, validation, and others. For a very specific task, such as comparing XML files, then you might choose an exclusive comparing tool.

Resources

Learn

Get products and technologies

Discuss

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into XML on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=XML, Open source
ArticleID=678218
ArticleTitle=Investigate current XML tools
publish-date=06072011