What is XML
XML is an acronym and stands for “Extensible Markup Language”, and as the name suggests, it is a text based markup language for structured documentation.
A structured document is basically any document that has both content as well as a description of what the content is, for example is the content part of the title, the body or the footer of the document. This is quite important as content in the body can be quite different in purpose and meaning from content in the footer.
XML differs from HTML in that XML is designed to carry data and not display it, therefore XML is not meant to replace HTML but rather to complement it. Other important differences include the fact that XML tags are not predefined, for example HTML has <title>, <html> which define the purpose of the data contained within. With XML you can have whatever you want within the xml tags.
What is an XML Editor?
On a basic level an XML Editor is any program, tool or software that allows you to create, modify and work with XML documentation or XML files.
Editors can also go beyond basic syntax highlighting, helping you validate your XML files, based on an XML Schema or XML DTD and to work within set rules for your attributes and your XML tags.
Some Editors can also carry out the validation in real time as you are working on your document.
What Can XML Editors Do
If you need to work with XML documents for a living, either as a programmer or in some other capacity, then a commercial XML Editor can help save you time and money through a number of features and functions such as auto completion of elements and tags as you work in real time as well as automatic creation of a closing tag. This can be a real productive way of working, preventing type based errors in your source code.
Some of the best XML Editor offer the functionality to carry out an XSLT transform, or even series of XSLT transforms over your document for example if you wanted to switch from XML to HTML etc.
At the top end with the best Editor you can even have XSLT debugging features for even smarter workflows.
In summary, an XML Editor can carry out the following;
- Add closing tags to your opening tags automatically
- Force you to write valid XML
- Verify your XML against a DTD
- Verify your XML against a Schema
Why You Need an XML Editor
If you are going to try and work with XML, for example to create and edit your own XML documents, you will most likely need an XML editor. Now because XML documents are basically raw text, you can use basic text editor such as Notepad or WordPad for opening and viewing XML documents. If you are using Mac you can use TextEdit.
However if you want to do anything fancy you will need a dedicated XML Editor, for example editing attributes or element visually ie through a WYSIWYG type format or validating your code.
But before I go into the various types of Editors available, here’s a quick round-up of why you need a programmer or somebody who works with XML for a living, needs to invest in a dedicated Editor.
In summary, a dedicated XML Editor can offer the following;
- XML Schema to define XML structures and data types
- XSLT to transform XML data
- SOAP to exchange XML data between applications
- WSDL to describe web services
- RDF to describe web resources
- XPath and XQuery to access XML data
- SMIL to define graphics
Editors can be loosely grouped into four distinct types.
- Dedicated XML Editors
These are made for just one purpose, which is for XML encoding, all functionality is based on making this one process as easy as possible and it therefore does not support any other task. Dedicated editors come in two types.
- Code View XML Editors
As the name suggests, this type of dedicated editor only supports working in code view and so the user will need to work in XML code
- WYSIWYG XML Editors
Short for What You See Is What You Get, this type of dedicated editor is quite the opposite from the one above and users are able to work on the ‘front end’ with XML icons presented as small tags, a bit like a word processor. As you work the code is automatically created in the backend. A small number of editors offer both types of views.
- Text XML Editors
As well as dedicated editors that encode XML, you can also find a number of text editors that also offer the functionality to encode XML. The functionality can extend to syntax validation, highlighting and even auto completion of tags and attributes.
Good XML Editors
Like everything in life, you get what you pay for, with that in mind, editors can be found either free or paid (commercial). Typically speaking the paid versions are much better, offering a stronger feature set and are more robust and reliable. If you only require basic viewing functionality and are a fairly light user then a free version would probably suffice.
XML-Editor.info pride ourselves on our thorough testing and impartiality. Having reviewed literally hundreds of Editors, we only recommend Liquid XML Editor within the commercial Editor category and Serna Editor within the Free XML Editor category.
Why Liquid XML Editor
Liquid XML Studio is a comprehensive XML Development environment, comprising a set of editors and XML tools designed for developing XML solutions. The following provides an overview of the core tools.
Liquid XML Studio comes in 3 Editions Starter, Designer & Developer
In summary, Liquid XML Editor offers the following;
- XML Schema Editor
- XML Data Binding Code Generator
- WSDL Editor
- XML Editor
- Microsoft Visual Studio Integration (2005, 2008, 2010)
- Web Service Test Client
- XPath Expression Builder
- HTML Documentation Generation
- XSLT Editor & Debugger
- XQuery Editor & Debugger
- Large File Editor
- XML Diff – Compare XML Files
There are literally hundreds of XML Editors available today from free and commercial types, WYSIWYG to text based and from desktop to online xml editors. Below is our hand picked selection of just some of these editors covering each category type.
Liquid XML Editor: Studio 2011 – Commercial
Liquid XML Studio is a comprehensive XML Development Environment, providing tools and editors for all the main aspects of XML Development.
Amaya 3.1 – Free
The W3C’s test editor/browser, Amaya is intended to be a comprehensive client environment for testing and evaluating new proposals for Web standards and formats. New features include expanded support for MathML and XHTML, line numbering in source files.
BXE – Online
BXE is a browser based Wysiwyg Editor .You can edit your content semantically and at the same time display it to your users and editors in its final form.
EditiX – Commercial
EditiX provides users with an extensive range of XML functionality within a refined IDE that guides you with intelligent entry helpers. EditiX has realtime XPath location and syntax error detection.
EditiX 1.2 – Commercial
EditiX is a cross-platform powerful and easy to use editor designed to help web authors and application programmers take advantage of the latest XML and XML-related technologies.
EditiX Lite – Free
EditiX Lite is a free and powerful and easy to use editor, Visual Schema Editor and XSLT debugger for Windows, Linux and Mac OS X.
Emile Lite – Free
Emilé is used to author documents using extensible markup. XML allows the use of custom elements in addition to or in place of HTML tags, and provides many other features for better content management.
XUIEditor – Online
This Viewlet will show you how easy it is to generate an interactive GUI out of an XML Schema. With our XUIEditor graphically modify the style & behaviour of your UI.
Komodo – Commercial
Komodo IDE has a wealth of features to help you get your development work done faster, while staying out of your way so you can focus on your code.
Microsoft XML Notepad – Free
There is a free beta available for download of Microsoft® XML Notepad, a simple prototyping application for HTML authors and developers designed to enable the rapid building and editing of small sets of XML-based data.
Pike – Online
Pike is as easy to use as a web browser but has the common features that web writers and designers need. Undo, Find and Replace, etc.
tkxmllint - Free
tkxmllint is a command-line tool for parsing XML documents. It is part of the Gnome libxml2 package. tkxmllint is a GUI version of that tool.
Syntext Serna Enterprise – Commercial
Serna Enterprise editor is a powerful and easy-to-use WYSIWYG XML application for collaborative XML editing.
table.el – Free
WYSIWYG table editor that extends Emacs and provides text based table creation and editing features for Gnu’s Not Unix (GNU) Editing Macros (Emacs) and XEmacs (Emacs for X Window).
UltraXML:Author – Commercial
A native XML editor for authoring and editing new or existing XML files. It can be used to perform a variety of tasks including generating empty XML files from existing schemas or vice versa.
Xeena - Free
A visual XML editor, is a generic Java application for editing valid XML documents derived from any valid DTD. XML files can be created and edited without learning the intricacies of XML.
XEntrant – Commercial
XEntrant represents an implementation of model driven XML tree editing tools with a user friendly interface developed in the Python programming language. It offers many convenient editing, validating, browsing and searching features compliant with W3C standards.
XML Copy Editor – Free
XML Copy Editor is a fast, free, validating XML editor. Binaries are released for Windows and Linux simultaneously.
XML Pro v 2.0 – Commercial
A Java-based XML editor for Windows 95/98/NT, Solaris, and Linux platforms that includes features like ‘drag and drop’, cutting, pasting.
XMLFox – Commercial
A graphical XML editing and validation tool for creating valid, well-formed XML documents and/or XSD Schema. It includes an XML View, XML Tree, XML Grid, and XML Script modes for editing, as well as extensive find capabilities for text and XML data.
XMLwriter – Free
XMLwriter uses the Microsoft MSXML parser by default to validate XML documents against DTDs and XSD Schemas. Validation is also supported for XDR Schemas.
xslide – Free
Xslide is a Emacs package for editing XSL stylesheets. Features include a “Template” menu for jumping to template rules in the buffer, a comprehensive abbreviations table to further ease typing.
On-xml – Online
On-xml supports syntax highlighting, dtd schema validation, dtd generator, xslt-fo transformation and is cross platform compatible.