XML editor
<pageby nominor="false" comments="false"/>
Definition
- An XML editor allows an author to write XML contents
Warning: I will not allow any dishonest and/or space gobbling publicity here. Only short entries are accepted and no pictures (!) This Wiki is about educational technology and not lengthy product descriptions. To discuss editors, please use the discussion page. Offenders will have their IP blocked and their product removed or worse ... - DSchneider 01:02, 30 October 2006 (MET).
Of course, everyone is allowed to fix mistakes :)- Choosing a free or cheap multipurpose XML editor is a nightmare (you can quote DSchneider on this). Descriptions below concern systems tested in october 2006 (unless otherwise specified for more recent entries).
Note: Special-purpose XML Editors like the ones produced in the RELOAD project to support educational modeling languages will not be discussed here. This page is about general purpose XML Editors.
Typology and choice of XML Editors
- List of criteria for defining types of editors
- WYSIWYG vs. WYSIWYM ("What you see is what you mean"). Does the editor support various views ?
- WYSIWYM in turn means either some form of "tree editing" or "structure editing"
- What kind of editing, validation, debugging support is included ? In particular: is editing ergonomic ?
- Is the tool meant to edit all sorts of contents vs. focused on one kind of vocabulary (e.g. RSS contents or X3D)
- Is there (a) light-weight, (b) good or (c) no support for various XML vocabularies (e.g. are there at least some included DTDs and associated XSLT style sheets).
- Are there additional tools (e.g. XSLT or XQuery support) ?
- Major types of XML Editors
- See the Table of Contents of this page :)
How to choose an XML editor
- Minimal things your XML editor should be able to do
In all modes, an editor should:
- Check for XML well-formedness
- Check for validity against several kinds of XML grammars (DTD, Relax NG, XML Schema)
- Highlight errors (of all sorts)
- Suggest available XML tags (in a given context). Also clearly show which ones are mandatory and which ones are optional, and display them in the right order.
- Allow the user to move/split/join elements in a more or less ergonomic way (although it is admitted that these operations need some training)
- Include support for XSLT and XQuery (However, if you have installation skills you can easily compensate lack of support by installing a processor like Saxon
The next criteria depend on the kind of XML vocabularies:
For data-centric XML, an editor should:
- Allow viewing and editing of XML documents in a tree view or boxed view (or both together)
- Provide a context-dependent choice of XML tags and attributes (DTD/XSD awareness)
For text-centric XML:
- Allow editing of XML documents in a structure view
- Allow editing of XML documents in somewhat WYSIWYG view. Such a view can be based on an associated CSS (most common solution) or XSLFO (I am dreaming here) or use some proprietry format (which is not very practical for casual users!). Also allow users to switch on/off tags or element boundary markers.
- Provide a context-dependent choice of XML tags and attributes (DTD/XSD awareness). The user should be able to right-click within the XML text and not in some distant tree representation.
- Automatically insert all mandatory sub-elements when an element is created.
- Automatically complete XML Tags when working without a DTD or other schema.
- Indent properly (and assist users to indent single lines as well as the whole document)
Among the freeware editors, none can really meat these criteria.
- A list of selection criteria
- Your budget
- Your type of XML data:
- To edit small text-centric XML, use a structure editor or a somewhat WYSIWYG XML editor.
- To edit large texts (e.g. DocBook or DITA or your own schema), use an XML-aware word processor or a high-end somewhat WYSIWYG XML editor. Users with good technical background also can use a simple structure editor like Emacs's XML mode.
- To edit data-centric XML, use either a tree editor or a structure editor.
- Support for specific XML applications
- There are special purpose editors for educational vocabularies. See articles for various educational modeling languages, e.g. IMS Learning Design
- To edit other specific vocabularies, check if there is good support
- To edit vector graphics, e.g. SVG, X3D, MathML you may consider an appropriate drawing tool, e.g. for SVG use Inkscape.
- Your technical skills. However XML editing (of text-centric XML in particular) will also require conceptual change that is at least as difficult as learning how to use a tool.
Recommendations for free XML editors
DSchneider spent a whole day (30 Oct 2006, small updates on March 2009 and Sep 2010) on finding a suitable free XML editor for beginners that meets all of the above criteria. None was found, however I do make recommendations (but keep in mind that I only spent 10 hours on this):
- A lot of so-called XML editors are not even DTD-ware.
- Some software crashed on start (e.g. the MS XML Notepad)
- Most editors are difficult to learn and to use and/or don't parse a file because the XML file or its declaration doesn't have the exact vibrations needed.
- Testing was done against a very simple XML/CSS/DTD: XML - CSS - DTD
Here is my choice:
- WYSIWYG-like Editor (with CSS): Xerlin (I am not sure about this, because of a font problem). As an alternative: see XMLmind.
- Structure editor (i.e. the kind you would use to teach an XML class): Exchanger XML Editor lite. Also consider:
- epcEdit which is the most user-friendly fully DTD-aware editor. It doesn't have built-in XSLT support nor can it handle XSD Schemas.
- XML Copy Editor if you want a simple, easy to use, fast and small editor with limited tag insertion support and no attribute insertion support.
- Jaxe if you want to configure a tool to have users edit your own XML application or have a nice WYSIWYM interface to text-centric XML (e.g. if you teach XML in humanities or wish to use DocBook).
- Tree Editor: XMLmind Personal Edition (also supports CSS-style XML editing but nodes have to bee added trough a tree view. The free version does not support XSLT transformations.)
- I also recommend to technical persons to consider using a programmer's editor with an XML plugin (for beginners maybe jEdit, I personally still prefer either Gnu Emacs or Xemacs). These at least can be used to edit other sorts of contents.
WYSIWYG and XML-aware Text Editors
DSchneider' opinion: I believe that XML Editors for text-centric contents should work more or less like text processors. I didn't have the chance to look at most of the products listed here (so there is no endorsement except for FrameMaker which I know fairly well).
Such tools are either strictly WYSIWYG (e.g. FrameMaker) or sort of WYSIWYG (e.g. like an HTML editor). In addition these tools also allow optionally to display tags, the XML context, an XML tree etc.
Adobe FrameMaker 7.2
DSchneider's opinion: Adobe would have the skills to do a nice tool based on FrameMaker (the only real Text Processor I am aware of). FrameMaker is a very good SGML and XML text processor compared to others. However, XML editing needs a lot of configuration work and the product is quite expensive, but I like it nevertheless. In addition, version 7.2 of FrameMaker doesn't have XSL-FO support which I find strange.
Major problem I had were mapping internal FM objects (XRefs, Tables, Figures) to certain DTDs. E.g. one can't map XRefs to non-empty elements without C programming. See also my documentation on old FrameMaker SGML 6 XML. Some of it is still useful for version 7. (I didn't test 7.2's XSLT support yet, some of my problems with 7.0 may be solved with this I think). Only recommended if you either can count on technical FrameMaker support in your organization or if you are a technical person and willing to consult a 500p. manual. Disclaimer: I only wrote 2-3 texts with this (and that was before FM 7.2 and FM 8.0), e.g. The TECFA Seed Catalog. Its PDF is native FrameMaker, but editing was done trough an extension of DITA.
Arbortext tools
One of the real XML players that produce real tools (e.g. Epic) that get decent reviews (but I did not test any). Price: over $1000.
Plugins for MS Word
DSchneider's opinion: I really dislike Word because it does not follow my orders (it behaves like dog) and because some stuff that should be easy (floating figures, side headers and cross-references) are very difficult to do. (I don't like Open Office either btw and for the same reasons). Both use an XML representation that mixes contents, style and other information, but from an author's point of view there is no XML at all. There exist products (plugins) for Word to edit XML. No links here, because most links and products I have seen decay ...
Simple word-processor like editing tools
Usually these tools allow you to define a CSS style-sheet that will make your editing somewhat WYSIWYG. These tools (in the same way as most HTML editors) also work as simple structure editors (i.e. offer a structure-editing view and also sometimes a tree-editing view).
Most work more or less well. In any case, potential users must learn (or be trained) to use the tool. Frequently, it is very difficult to find even the most needed commands (like inserting an element or an attribute).
Xerlin
- Xerlin
- Sourceforge
- Formerly "Morphon". The website http://www.morphon.com/ did expire and was taken by another company.
This is a freeware product. Win/MaxOsX, Linux, Solaris. Runs under Java 1.4.1 (downloads with or w/o Java VM). Also comes with a CSS editor. Display (i.e. fonts) may be lousy on your system, you'll have to test.
- Text view: To edit contents in a near-WYSIWYG view, one must define a CSS and associate it to the XML document. In addition boxes or elements labels can be shown (but see comments below).
- Source view.
- Tree view of tags (linked to text view).
- XSLT support plus some plugins that can be installed
- A pop-up window shows errors.
- Hint: The key to understand Xerlin is to understand how element insertion and attribute editing works. These functionalities are available either
- through pop-ups (right-click in editing window or the tree representation or ALT-I / ALT-K
- trough editing panes in a four panel view (see the View/Affichage menu).
Opinion of DSchneider: Xerlin may be suitable for novice users, however they must be trained a bit before they can use the interface. In particular, users must learn to use the "Insertion tool" (within, before, after, replace, etc.) (16:55, 29 October 2006 (MET)). This is the only free XML text-view editor that I found and can somewhat recommend. However, I hardly can read labels for elements, system fonts can be changed but it didn't figure out how to affect labels. Copy/Cut/Move etc. is not very easy.
Development of Xerlin seems to have stopped in 2005. Daniel K. Schneider 15:29, 16 March 2009 (UTC)
Vex
- Free wordprocessor-like interface
- Cross-platform (version 1.4 or better), based on the Eclipse platform.
- One version of VEX is packaged with an Eclipse run-time
- One version is available as plugin for Eclipse which you must install beforehand (120 MB +)
- DTD support to define document types
- CSS style-sheets to define document layout
- The Vex editor widget is also available as a pure Java, cross-platform component with bindings to Swing and SWT. Developers can re-use this widget, for example as an applet in a web-based application.
- Opinion of DSchneider. Nice tool for people with technical background, but you need a good computer for Eclipse and it takes space (download with Eclipse run-time is about 25 MB). Vex (version 2006) is IMHO totally unsuitable for beginners. Navigation and insertion is difficult to learn and in addition it has the very annoying habit of a typical developer's IDE to force people to define projects. I simply want to edit an XML text and not do projects. Notice: This editor needs to be re-evaluated 15:10, 20 September 2010 (CEST).
XMLmind
XMLmind (free) standard edition displays a CSS style text along a tree view.
- See the entry below, since XMLmind is mostly a tree editor.
Others
- Serna. Commercial WYSIWYG XML Editor. Support for DocBook, TEI and Dita. Win/Unix. Specifications look good, but NOT TESTED @ Tecfa. Cheap Academic Prices ($45). [2/2004]
TTW Editors
- needs additions !!!
TTW = "through the web editor" - it works within a browser
- Bitflux
- Bitflux editor
- This seems to be best and most popular one. End users: This kind of editor needs configuration work and is not for you ...
- Bitflux Wiki (for technical help)
- See also other indexes
- TTW ("Through the Web") WYSIWYG Web Editors - The List at Genii Software
Complex Tree/Text/Structure Editors with a GUI
Most or all are commercial. Worth the money if you do serious XML work (although I can't say for sure, since I didn't test many of these).
oXygen
- oXygen
- Commercial
- Tree/structure editor Quote from an Email message: "<oXygen/> XML editor covers all the today's XML technologies offering support for any XML document, working with XML Schemas, DTDs, Relax NG schemas and NRL Schemas. The powerful transformation support allows you not only to edit XSLT and XSL-FO documents but also to obtain documents in the desired output format like HTML, PS, PDF, etc. with just one click."
- Opinion of DSchneider: TECFA had a site license for this but we lost it somehow and finally went for a free editor so that students also can use it at home. Overally speaking a nice product that supports various functionalities, including support for several essential XML applications. Easier to learn than Xemacs, but the menus and commands are not obvious either.
EditX
- EditX.
- Commercial
- Quote from an email: “EditX is a cross-platform powerful and easy to use XML editor [...] and XML-related technologies such as XSLT / FO and XSD Schema. 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. Helpers are also provided with context syntax popup supporting DTD, Schema and RelaxNG. EditiX supports multiple templates and project management. User can apply XSLT or FO Transformation and show the result with a dedicated view. All the process can be managed by shortcuts. EditiX includes default templates with XML, DTD, XHTML, XSLT, XSD, XML RelaxNG, SVG, MathML and XML FO.”
- DSchneider's opinion: Not tested, but this gets good reviews (evaluation copy available)
xmlBlueprint
- xmlBlueprint
- Cheap ($45) XML structure editor for Windows with support for tag completion. Includes DTD/Relax/Schema, XSLT/XPath, UTF-16 support.
- Editing: Tag insertion is done by typing "<" plus selection from a popup menu. The closing element has to be inserted in a similar way by typing "</". Attribute completion is done by typing space after an element.
- XSLT transformation must be run from an opened XSLT file (works)
- Opinion of 15:13, 15 May 2007 (MEST) (a 15 min. test): This editor loads up fast and is relatively easy to learn. The Help file is ok. Support for tag insertion is ok for a cheap editor. To be improved: End tags should be inserted automatically. Also, users should be able to configure the editor to show only valid elements for a given insertion point instead of all possible child elements (or alternatively display DTD or Schema rules). However, error messages give correct hints. As far as I could tell there is no softwrapping of long lines and indentation is not smart enough. However, there is a good "tidy" (indentation) feature that globally reformats the lines. Globally speaking, a good editor (since it's easy and since there is editing support), but a few details could be improved.
XMetal
Since version 2.0 it has become probably one the best overall pure XML editor for writing contents.
- Various views (Wysiwyg, structure, tree)
- In 2006, there are various products (from Euro 550 and up). E.g. a DITA extension.
XMLSpy
- XMLSpy Well known expensive commercial high-end multi-purpose XML editor. It also can be considered as a programmer's editor, a XML development environment.
- Altova Authentic is a free end-user XML editor (registration with email required) that allows to edit contents in Altova proprietary file format. Only useful if you purchase a XMLSpy product.
- Opinion of DSchneider: not tested recently, but from what I have seen some years ago it ought to be a good buy. Advantages compared to XML-enabled word processors like Framemaker are all the extra tools, data connectivity (e.g. interfaces to XML, SQL databases and Office software). Disadvantage is less support for writing large high-quality documents.
Liquid XML Studio
- Liquid XML studio
- Commercial XSD and XML Editor.
- There are three editions: Starter (€ 78), Designer and Developer (€593). Trial versions are available.
- According to Liquid technologies, “Liquid XML Studio 2011, is an advanced XML Development Environment and XML toolkit containing all the tools needed for designing and developing XML schema and XML applications. For XML novice or expert, the intuitive interface and comprehensive features will help you save time and money developing a successful XML project.”
XML Writer
- XML Writer Commercial Product with trial period, DTD aware, works.
- DTD/XML Schema Validation, XSLT support.
- Tree (tag) view plus structure editing
- Opinion of DSchneider: One of the few tools that is all of useful, cheap ($99) and beginner friendly I have seen so far.
Others
- Topologi, Commercial but cheap ($99) Text/Structure Editor (seems to be a good tool for people afraid of programming editors)
- Exchanger XML Editor, was a cheap ($130) commercial structure and tree editor,multi-platform (2003/V3.x 2005). A free lite version existed for non-commercial purposes. As of 2010 (if I understand right) the commercial version became the free one (or at least parts of it). See below.
Simple structure editors
epcEdit
- SGML/XML editor for Win, Linux, Solaris.
- Free (used to be commercial)
- DTD support, HTML and CALS table editor
- No XSD Schema, no relax and no XSLT support. It only can edit, but does this well.
- PDF export
- Opinion of DSchneider: The best free DTD-aware XML editor I think. Not as many functionalities as most commercial and many free systems, but much friendlier. For people who just want to edit XML based on DTDs (and who do not wish to learn Xemacs) this is my choice.
- Tested on March 2009. You need to install a freely available license key.
Exchanger XML Editor lite
- Exchanger XML Editor lite. Free for non-commercial / academic use.
- Alternative download (code.google.com).
- Exchanger XML Editor (professional)
- Read the Exchanger XML Editor article for details on how to install and how to use it.
- Last release: v.3.3.01 (June 2010). Re-tested and installed on Windows 7 64-bit.
- Overall, still the best free XML editor IMHO - Daniel K. Schneider 15:10, 20 September 2010 (CEST).
Main Features:
- DTD/Schema aware editing (see below)
- Wellformedness and validating
- XSLT Support
- DTD/XSD/RNG conversion tools
- Xinclude resolver
- Multi-platfrom (Java-based).
XNGR
- XNGR Xml Browser
- Free XML Browser/Editor
- Added 11/2010
- Not to be be confounded with XML Exchanger light above !
- Can validate, but it is not DTD or Schema aware (strongly recommended for editing), therefore of fairly low interest for editing but it may be useful as browser ....
MEX
- Mex (Mini Editeur XML)
- Multi-platform (Win/Mac/Unix) and Java-based
- DSchneider's opinion: This is an extremely simple editor. It colorizes tags and validates against a DTD. But there is no support for editing. As such the tool is fairly useless, although much better than using a Notepad-like editing tool. The same team also developed Jaxe.
XED
- XED was probably the first simple standalone XML structure editor. It still works fine. This "XML document instance editor" was written by Henry S. Thompson, University of Edinburgh.
- FREE, available for Solaris and Win95/NT, Linux. A simple XML editor for well-formed documents.
- DTD awareness (lists all tags). HINT: to get a hint from the DTD start typing a "<".
- Win key-bindings or Emacs key-bindings (good for people who don't want to install Emacs)
- Opinion of DSchneider. This is very first simple XML structure editor that I found useful (in 1998). Still works (type xed under Unix).
XML Pad
- Free
- Validating
- DTD- and schema aware structure editor with a structure view, a tree view and a preview.
- Formatting help
- Element insertion by hitting "<" and "SPACE" for attibutes (initial popups are too small).
- Interface to the DTD (right-click on element to land in the right spot in the DTD).
- Adding/removing/moving element nodes is best done through the elements tree in the left panel. (right-click on the element).
- DSchneider's opinion: I retested XML Pad 3x again in March 2009 (last time in 2007). Seems to works fine and installs under Vista. There is still no right-click menu (I resent this a lot) for inserting elements in the structure window but you can type "<" instead. No support for indentation of a single line (I don't like this). This tool is now one of the better free XML editors. Some little things like an XSLT validator, better popups or not minimizing new tags would be a plus.
XML Copy Editor
- XML Copy Editor (version 1.2x, mar 2009)
- Free DTD, Relax and XML Schema validating editor.
- Win/Linux.
- Help is included
- XSLT, DocBook/TIE and XPath support.
- Pretty-print function arranges tags one per line. Wrap lines on or off.
- Imports/exports to the new MS WordProcessingML format. If you want to try this, the trick is to start by importing a Word file, then export again or start with File->New (WordProcessingML. You can not save a random XML file to Word.
- DTD aware: Shows all available child elements for an element in alphabetical order in a pane. Alternatively, in UTF-8 XML mode you can hit the < to insert elements. There is no support for attribute insertion (?).
To install it under Linux, you may have to compile. Read the INSTALL file in the distribution! Easy under Ubuntu, but depending on your system you may have to install several packages, e.g. g++, pcre-devel aspell-devel, boost, libboost-dev, xerces-c, xerces-c-devel, libxml-devel, libxslt-devel, libexpatl-dev. You also wxGTK-2.8.0. I found all of these in Synaptic. - Daniel K. Schneider 15:29, 16 March 2009 (UTC).
Opinion of DSchneider: This is a nice structure editor. The interface is simple, i.e. exactly what we need in a simple structure editor. In addition, download footprint is small and it appears to be fast. However, assistance for tag and attribute insertion should be improved in future versions. As of June 2010 DTD awareness is still limited to showing a list of child elements in alphabetical order, instead of the required order. Tip: Before inserting a child element, validate. The parser will complain about the missing elements, i.e. tell you which ones are needed.
Jaxe
- Free XML Schema-aware XML editor
- configurable with an XML schema and a file describing the menus to insert the elements (no right-click insertion)
- adapted to structured narrative XML documents
- validation at elements insertion
- multi-platform (Java 1.3+)
- Opinion of DSchneider: I tested this in 2003 and like the concept. It's a very user-friendly XML editor for text-centric contents, but needs configuration work (you have to define menus!). Not used in production at TECFA.
Emilé
- Emile Good XML (DTD aware) emacs-like structure editor. Mac only ($80)
- Opinion of DSchneider: My students who had Macs liked this product. Don't know if it is still alive.
Simple tree editors
These are useful to edit very data-centric XML structures, in particular "tabular" schemas.
DSchneider certainly prefers using a structure editor or a programmer's editor for doing data-centric XML like SVG. I just can't make myself liking tree editors.
Xerlin
- Free open source multi-platform XML Java-based tree editor.
- Code is based on "Merlot" which is no longer available
- Opinion of DSchneider: Used at TECFA for data-centered XML editing by people who are afraid of Xemacs - 12/2002). Works nicely and is DTD-aware, but it's a tree editor (and I don't like them). The interface is not too difficult to learn. It prompts for a DTD when creating new files.
Validation is implicit (e.g. bad nodes are in red). Not very powerful, but it can do.
XML Spear
- XMLSpear home page at Donkey Development
- Free
- Mac / PC (Java based)
- Validation and DTD/Schema aware (through a tree view).
- Also available as Java Web Start
- Not really tested, but it did work ok with a little XML file - Daniel K. Schneider 15:29, 16 March 2009 (UTC).
Conglomerate
- Conglomerate is a text-centric DTD-aware tree editor. “Conglomerate aims to be an XML editor that everyone can use. In particular, our primary goal is to create the ultimate editor for DocBook and similar formats.” (home page, retrieved 15:29, 16 March 2009 (UTC))
- Installs under Linux/Ubuntu (available in the Synaptic Package Manager).
- The project seems to be halted (last beta is from 2005), but creating a Docbook article did work, but I did not test this for real - Daniel K. Schneider 15:29, 16 March 2009 (UTC).
ElfData
- ElfData XML Editor 2.41
- Commercial with a free trial period (7 day of using). For Mac
- Not tested
Xeena
- A visual XML tree editor, Xeena is a generic Java application from the IBM Haifa Research Laboratory for editing valid XML documents derived from any valid DTD (no schema support anymore). Can be customized. (version 1.2 in aug 2004, after a long break, no further version after that as of Sep 2010)
- Xeena was used as a basis for an X3D-Edit editor.
XMLmind Personal Edition
- XMLmind XML Editor version 4.6.1 (or better)
- Cross-platform (Java-based) with platform installers
- Simple to use plugin manager.
- Easier Interface than others, i.e. one can find the right commands after 3 minutes of trying. Also when you create an element with this editor, it will insert all mandatory children (like psgml/xemacs). This is quite practical. However if you "force delete" an element, you only can add it "after" or "before" its sisters, not from the parent.
- Multi-pane display (tree, CSS styled text, element/attribute pane)
- DTD, W3C XML Schema, RELAX NG schema and Schematron are all fully supported.
- Element manipulation is trough tree view. After selecting an element you can insert elements either by selecting (tiny) before/after/within buttons in the top right elements pane or use shortcuts: (ctrl-h = insert before, ctrl-i = insert within, ctrl-j = insert after). Same principle for the attribute pane.
- DSchneider's opinion
- I like this one best among all sorts of free tree/structure editors except that it doesn't support XSLT transformations (I do them anyhow with saxon on the command line).
- Starting version v3.5.1 it no longer has restrictions for Schema support. So really upgrade if you have an older version!
- I did not manage to optionally display elements tags in the CSS view. That is a missing feature (which I use a lot when I write with FrameMaker). Otherwise this view seems to work perfectly well and it is useful to edit content-centric XML.
XML Notepad
- XML Notepad 2007 is a free Microsoft tool for Windows
- Needs the (huge) .Net 2.0 framework installed (nice thing to have for windows users).
- Opinion of DSchneider: The 2007 version works fine (a previous version crashed on my swiss-french WIN XP). This editor can be useful for people who already have .net installed and don't want a complicated tool. This editor is not DTD aware as far as I can tell and therefore not that useful. It is somewhat XSD aware. New elements have to be typed (this is not practical if you plan to work with XML a lot) and if you mispell/place an element an error message will appear.
Others
- xmloperator Free XML tree editor, Java-based, DTD or Relax aware (v. 2.3 sept 2003). Comment: Seems difficult to use, but at least it seems to work.
- XMLFox, Free XML tree editor for Windows. Needs .NET 1.0 framework and Data Access Components (no need to install the latter on a recent Win XP). Opinion of 01:02, 30 October 2006 (MET): This installed fine, but it only supports XSD (no DTDs or Relax NG), therefore useless to me. Also it has the deeply annoying habit of asking each time if I want to associate xml files with it.
- Peter's XML Editor for Windows (MSXML-based tree editor). Opinion of DSchneider 01:02, 30 October 2006 (MET): Not worth the trouble, since I wasn't able to get XML editing support. (The editor did not find the DTD either when I tried to validate). Maybe it only works with XSD ? Otherwise, this tool has potential as easy structure/tree editor.
- MindFusion XML Viewer. A really simple viewer/editor (you may modify contents of elements). Not worth the trouble for editing.
Programmer's editors with good XML support
Programmer's editors are more difficult to learn. However, you only need to learn one single tool for most of your needs .....
Emacs
There are several flavors of Emacs. The most popular ones are Gnu Emacs and Xemacs. X(Emacs) is a programming editor of choice since the 80's and its modern versions offer decent XML support. However, Xemacs is difficult to learn (and typical users don't want to do tutorials). But once you know the 100 or so essential keystrokes plus using the help system you will be fast as opposed to typical XML editor interfaces that are difficult to lean and where you will remain slow.
- Xemacs or GNU Emacs (Both run under various OSs). Over the last years we favored GNU Emacs since it offered better UTF-8 support. For MacOS X, see also Aquamacs).
- XEmacs support: A patched PSGML mode with XML support is included in Xemacs 21.0 (used @ TECFA and by myself, works great on Unix and Win95/98/NT). All you have to do is click on XML/PSGML/CSS/XSLT etc. support when you install this program with the network installer (make sure of this !!).
- GNU Emacs support:
- PSGML mode supports DTD-aware structure editing plus some internal validation (external validation can be added on Unix installations). PSGML is a powerful context sensitive tool. Documentation: Using Emacs for XML documents, IBM developer works article by Brian Gillian (Note: Xemacs users can skip the installation notice). Bob DuCharme has a good page with PSGML tricks.
- nXML is James Clark Emacs mode for Relax NG schemas and it is installed as default in typical modern GNU emacs distributions. Read the short article from XML hack. Read The Design of RELAX NG if you want to know why you may want to use Relax NG.
- Not tested: sxml-mode for (X)Emacs and xslide - Emacs Major Mode for XSL Stylesheets (no idea for which Emacs this is meant.... Xemacs already includes such a mode).
As far as we can tell, there exists no Emacs mode for XSD. Workaround is to translate the XSD to RNG (Relax) and then use nXML to validate.
jEdit
- jEdit is a popular and free programming editor. A very good alternative to (X)Emacs.
- XML support is provided through several downloadable plugins (via a simple to use plugin manager).
- XML plugin: validation against DTD or XSD and element trees in a dockable side-window
- XSLT
- CSS
- XQuery
- Make sure to install all XML-related plugins and side-kick
- DSchneider's opinion: Compared to Xemacs I find jEdit awkward to use. Firstly, I didn't figure out how to indent XML code. Second, error finding is a bit awkward. Only practical way I found is to save the file or menu plugins/side-kick/parse buffer. Note: the error window may hide behind the editing window. But at least the tool is working correctly with a correct DTD and it is easier for novice users.
- Update nov 4: Reinstall jEdit 4.3pre5 or better. The new XML plugin seems to be much better.
Other
- DSchneider doesn't have time to evaluate these. But if you are already using a programmers editor (like BBEdit or VIM) or an IDE (like Eclipse), make sure to check whether there XML functionalities 'or' whether there are plugins you can download. Download them all (including XSLT, CSS, TreeViewing, Error Displaying ...)
HTML or programming editors with limited XML support
These tools are fairly useless XML editors, but if you already use them for HTML or other editing, you may profit from simple features like tag closing, indentation and such.
PSPad
- PSPAD Freeware editor
- General features: Templates and support for various programming languages, Macros, ....
- XML extensions: tag closing and formatting (not tested)
HTML KIT
- HTML-Kit
- A popular HTML and Scripting languages editor. This tool doesn't have an XML editor (as far as DSchneider can tell) but offers a series of handy tools for some XML vocabularies (such as XML forms).
Raymond Meester's list of XML editors
The following list is contributed and maintained by Raymond Meester. We believe that it is the best XML editors list in the known universe ... - Daniel K. Schneider 17:20, 16 March 2011 / 02:08, 19 September 2011 (CEST).
Links
Various
- What XML software is available ? (XML FAQ section).
- Choosing an XML editor by Thijs van den Broek. A detailed evaluation of various editors (in 2004).
Lists of XML editors
- Editors at O'Reilly xml.com (Good long list, but no real help for choosing).
- Editing and composition page at the excellent Free XML Tools site.
References
- Saqib Ali (2005), XML: WYSIWYG to WYSIWYM, A brief look at XML document authoring, Free Software Magazine, 3. HTML