Out of many XML software, XML editors are the most important ones, that allow you to create documents, update existing one and sometimes viewing the XML document.
There are so many XML editors from simple text editors to highly customizable graphical text editors that show elements in colors and features to collapse or expand the tags hiding the hierarchy for author’s convenience.
Built-in Text Editors
XML is a highly flexible text editor that allows whitespace and comments, and you just need a simple text editor that is native to the operating systems, for example, Notepad in Windows, vi editor in UNIX, and SimpleText in Apple OS.
These built-in text editors are capable of understanding the logical structure of an XML documents. One thing to note is that if you are using a simple editor, there is chance of error in documents. You don’t get extra features like a dedicated XML editor like color coding for tags and content, relocating elements, and autocomplete the tags.
Automatic Syntax Checking
A robust XML authoring tool has automatic structure checking built into it. The author of XML document is less prone to making error which using these editors. There is less chance of adding elements that don’t belong to the context of the document.
However, sometime a lot of time is wasted when the author wishes to reorganize the document by shifting the tags. The editor being strict may not allow the change in positions all the time, that keep the author wondering what went wrong.
The features that are expected from a good XML editor are:
- Ability to configure the authoring environment and customize it to our need.
- Check the validity of the document.
- Get to select a set of valid elements for our document.
- Ability to write our own macros to automate some editing tasks.
- Keyboard shortcuts for tasks and macros.
- Ability to change the look and feel of the editor such as font and colors.
If the XML editor supports stylesheet interface for documents, then you can configure the appearance of the document pretty easily. Configuring such editors is very easy. You may also have to create a DTD for your document.
XML Editors
Now I discuss different types of text editors available from simple to complex multi-feature editors. There are two kinds of XML editors including the editor provided by operating systems.
vi editor
The vi editor belongs to Linux/Unix systems. This simple editor help you create XML files, but you can’t tell the difference between tags and content so easily. The typeface is same and not much scope for styling.
Fortunately, there are other variants of vi editors some improved. These are Vim, Elvis, Nvi, Nano, and Vile. The Vim is available for Windows systems as well, with some validation check for documents.
Elvis is reason for development of other variants of vi editor with some additional features like display modes to view or format HTML documents. More details in this page: Elvis-2.2_0 Display Modes (the-little-red-haired-girl.org)
Emacs
The Emacs is an old text editor that were used as word processors. Emacs is little complex because originally it was built for POSIX systems and available for Linux, Unix, FreeBSD, MacOS and Windows.
Since, early days of computing managing large documents was difficult which resulted in writing lot of macros for managing the documents evolved into Emacs or editing macros.
The Emacs has nXML mode that has detailed information on how to manage XML files including DTD and Schema, and styling information for XML. You can learn more about it from the following link.
The current version of Emacs is called the GNU Emacs and it is free to download.
Sublime text and Notepad ++
Moden windows text editors are my favorites because it supports a wide range of languages and very popular tools. The Notepad++ is there for some time and it is an advanced version of the Notepad. Similarly, Sublime Text is a popular choice for its robust interface and code management.
Graphical XML Editors
Most people like to use graphical text editors, that has drop-down menus, drag-and-drop editors, copy-paste options, etc. They provide interface that is based on what-you-see-is-what-you-get (WYSIWYG). Basically, people don’t want complex tools, but something easy to use and create documents faster and efficiently.
Since, the XML is child of SGML, most editors were for SGML which are expensive. XML has editors that are not complex and easy to use, plus they offer validity check which is most important for XML documents.
Here is the list of tools for editing XML files.
- Adobe Framemaker
- Arbortext Editor Kit
- SoftQuad’s XMetal Editor
- Conglomerate XML Editor
- NetBeans
- Microsoft Visual Studio XML Editor
These are some robust XML editors that has full support for all the XML technologies. Note that some of the examples from this XML tutorial are generated from NetBeans IDE 8.
Summary
In this article, you learned about different types of XML editors classified into Simple text editors with limited capabilities and a feature rich complex text editor. The choice is mostly dependent on syntax highlighting for elements and content, Stylesheet support and extended features like validation check, and DTD support.